# nixos-config - My current NixOS configuration # # Copyright (C) 2025 Benedikt Peetz # SPDX-License-Identifier: GPL-3.0-or-later # # This file is part of my nixos-config. # # You should have received a copy of the License along with this program. # If not, see . { config, lib, libraries, ... }: let cfg = config.soispha.programs.cargo; in { options.soispha.programs.cargo = { enable = libraries.base.options.mkEnable "cargo"; }; config = lib.mkIf cfg.enable { home-manager.users.soispha = { programs.cargo = { enable = true; package = null; cargoHome = "${config.home-manager.users.soispha.xdg.dataHome}/cargo"; settings = { # NOTE: Don't directly use the `shared-target` path, so we can allow this # directory in the landrun-fish script and don't get issues because `cargo # clean` removes it. Otherwise, a `cargo clean` means, that all currently # running sandboxed shells need to be re-loaded to give them access to the than # newly created `shared-target` <2026-10-06> build.build-dir = "${config.home-manager.users.soispha.xdg.cacheHome}/cargo/shared-target/inner/"; }; }; }; }; }