From 2a4a4e2c42257bb25789ec3be6bc5a88f0eab7b5 Mon Sep 17 00:00:00 2001 From: Preston Pan Date: Thu, 16 Jan 2025 18:24:01 -0800 Subject: Nix literate configuration set up in monorepo --- nix/flake.nix | 4 +--- nix/modules/home/default.nix | 6 ++++++ nix/modules/home/mpd.nix | 4 ++-- nix/modules/secrets.nix | 20 ++++++++++++++++++++ 4 files changed, 29 insertions(+), 5 deletions(-) create mode 100644 nix/modules/secrets.nix (limited to 'nix') diff --git a/nix/flake.nix b/nix/flake.nix index 12bec57..2efc624 100644 --- a/nix/flake.nix +++ b/nix/flake.nix @@ -2,9 +2,7 @@ description = "Emacs centric configurations for a complete networked system"; inputs = { - nixpkgs = { - url = "github:nixos/nixpkgs/nixos-24.11"; - }; + nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11"; home-manager = { url = "github:nix-community/home-manager/release-24.11"; diff --git a/nix/modules/home/default.nix b/nix/modules/home/default.nix index b2d3ef5..a38ee24 100644 --- a/nix/modules/home/default.nix +++ b/nix/modules/home/default.nix @@ -34,6 +34,7 @@ lang-openscad.enable = lib.mkEnableOption "Enables openscad language support"; lang-js.enable = lib.mkEnableOption "Enables javascript language support"; lang-nix.enable = lib.mkEnableOption "Enables nix language support"; + lang-coq.enable = lib.mkEnableOption "Enables coq language support"; crypto.enable = lib.mkEnableOption "Enables various cryptocurrency wallets"; art.enable = lib.mkEnableOption "Enables various art programs"; @@ -123,6 +124,10 @@ bash-language-server ]) else []) ++ + (if config.monorepo.profiles.lang-coq.enable then (with pkgs; [ + coq + ]) else []) + ++ (if config.monorepo.profiles.lang-nix.enable then (with pkgs; [ nil nixd @@ -161,6 +166,7 @@ lang-openscad.enable = lib.mkDefault true; lang-js.enable = lib.mkDefault true; lang-nix.enable = lib.mkDefault true; + lang-coq.enable = lib.mkDefault true; crypto.enable = lib.mkDefault true; art.enable = lib.mkDefault true; diff --git a/nix/modules/home/mpd.nix b/nix/modules/home/mpd.nix index 434387c..087b19a 100644 --- a/nix/modules/home/mpd.nix +++ b/nix/modules/home/mpd.nix @@ -21,8 +21,8 @@ # quality "5.0" # do not define if bitrate is defined bitrate "128000" # do not define if quality is defined format "48000:16:1" - always_on "yes" # prevent MPD from disconnecting all listeners when playback is stopped. - tags "yes" # httpd supports sending tags to listening streams. + always_on "yes" # prevent MPD from disconnecting all listeners when playback is stopped. + tags "yes" # httpd supports sending tags to listening streams. } ''; }; diff --git a/nix/modules/secrets.nix b/nix/modules/secrets.nix new file mode 100644 index 0000000..29e8c4c --- /dev/null +++ b/nix/modules/secrets.nix @@ -0,0 +1,20 @@ +{ config, ... }: +{ + sops = { + defaultSopsFile = ../../secrets/secrets.yaml; + age = { + keyFile = "/home/${config.monorepo.vars.userName}/.ssh/keys.txt"; + }; + secrets.mail = { + format = "yaml"; + path = "${config.sops.defaultSymlinkPath}/mail"; + }; + secrets.digikey = { + format = "yaml"; + path = "${config.sops.defaultSymlinkPath}/digikey"; + }; + + defaultSymlinkPath = "/run/user/1000/secrets"; + defaultSecretsMountPoint = "/run/user/1000/secrets.d"; + }; +} -- cgit