From e6ed60548397627bf10f561f9438201dbba0a36e Mon Sep 17 00:00:00 2001 From: Azat Bahawi Date: Sun, 21 Apr 2024 02:15:42 +0300 Subject: 2024-04-21 --- modules/profiles/dev/default.nix | 94 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 modules/profiles/dev/default.nix (limited to 'modules/profiles/dev/default.nix') diff --git a/modules/profiles/dev/default.nix b/modules/profiles/dev/default.nix new file mode 100644 index 0000000..eab447c --- /dev/null +++ b/modules/profiles/dev/default.nix @@ -0,0 +1,94 @@ +{ + config, + lib, + pkgs, + ... +}: +with lib; +let + cfg = config.nixfiles.modules.profiles.dev; +in +{ + imports = attrValues (modulesIn ./.); + + options.nixfiles.modules.profiles.dev.enable = mkEnableOption "Catch-all profile for stuff related to software development and etc."; + + config = mkIf cfg.enable { + nixfiles.modules = { + bat.enable = true; + curl.enable = true; + direnv.enable = true; + editorconfig.enable = true; + git.client.enable = true; + nmap.enable = true; + wget.enable = true; + }; + + hm = { + home = { + sessionVariables = rec { + CABAL_DIR = "${config.dirs.data}/cabal"; + CABAL_CONFIG = pkgs.writeText "cabal-config" '' + repository hackage.haskell.org + url: https://hackage.haskell.org/ + secure: True + + jobs: $ncpus + + remote-repo-cache: ${CABAL_DIR}/packages + + world-file: ${CABAL_DIR}/world + + logs-dir: ${CABAL_DIR}/logs + build-summary: ${CABAL_DIR}/logs/build.log + + installdir: ${CABAL_DIR}/bin + extra-prog-path: ${CABAL_DIR}/bin + ''; + STACK_ROOT = "${config.dirs.data}/stack"; + + RUSTUP_HOME = "${config.dirs.data}/rustup"; + CARGO_HOME = "${config.dirs.data}/cargo"; + + GOPATH = "${config.dirs.data}/go"; + GORE_HOME = "${config.dirs.data}/gore"; + + PYTHONSTARTUP = ./pystartup.py; + }; + + packages = with pkgs; [ + age + htmlq + httpie + hydra-check + jq + logcli + nix-update + nixpkgs-review + sops + yq + ]; + + language = { + collate = "C"; + messages = "C"; + }; + }; + + xdg.configFile = { + "gdb/gdbinit".source = ./gdbinit; + "ghc/ghci.conf".source = ./ghci.conf; + }; + }; + + programs.wireshark = { + enable = true; + package = pkgs.wireshark; + }; + + my.extraGroups = [ + "kvm" + "wireshark" + ]; + }; +} -- cgit v1.2.3