my nixos configuration
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix gnome keyring ssh, reorganization

Thunder fcab6ac8 c5daf3c4

+40 -116
-28
default.nix
··· 1 - # flakeless build support 2 - # provides almost zero benefits for now, eval might be slightly faster, not sure 3 - { 4 - host, # host should be an absolute path to the configuration file 5 - }: let 6 - flake-compat = import (builtins.fetchTarball "https://github.com/edolstra/flake-compat/archive/refs/tags/v1.0.1.tar.gz"); 7 - 8 - inputs' = flake-compat {src = ./.;}; 9 - inputs = inputs'.defaultNix.inputs; 10 - 11 - pkgs = import inputs.nixpkgs {}; 12 - lib = pkgs.lib; 13 - 14 - mlib = import ./lib {inherit lib;}; 15 - 16 - inherit (mlib) mkSystem; 17 - in 18 - mkSystem { 19 - nixosSystem = import "${inputs.nixpkgs}/nixos/lib/eval-config.nix"; 20 - inherit inputs mlib; 21 - config = import host; 22 - 23 - extraModules = [ 24 - { 25 - nixpkgs.flake.source = inputs.nixpkgs; 26 - } 27 - ]; 28 - }
+1 -40
flake.nix
··· 20 20 ]; 21 21 }; 22 22 23 - # outputs = {self, ...} @ inputs: let 24 - # lib = inputs.nixpkgs.lib; 25 - # mlib = (import ./lib) {inherit lib;}; 26 - # in rec { 27 - # formatter.x86_64-linux = inputs.nixpkgs.legacyPackages.x86_64-linux.alejandra; 28 - 29 - # deploy.nodes = { 30 - # server = { 31 - # hostname = "192.168.101.101"; 32 - # profiles.system = { 33 - # user = "root"; 34 - # sshUser = "root"; 35 - # path = inputs.deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.server; 36 - # }; 37 - # }; 38 - # }; 39 - 40 - # checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) inputs.deploy-rs.lib; 41 - 42 - # nixosConfigurations = 43 - # gen ["desktop" "server" "x220" "t440p" "digiboksi"] 44 - # // { 45 - # iso = (import ./iso) {inherit mlib lib inputs;}; 46 - # }; 47 - 48 - # gen = hosts: 49 - # builtins.listToAttrs (builtins.map 50 - # (s: { 51 - # name = s; 52 - # # lib/os.nix 53 - # value = mlib.mkSystem { 54 - # nixosSystem = lib.nixosSystem; 55 - # inherit inputs mlib; 56 - # config = mlib.getHostConfig s; 57 - # }; 58 - # }) 59 - # hosts); 60 - # }; 61 - 62 - outputs = inputs: inputs.flake-parts.lib.mkFlake {inherit inputs;} (inputs.import-tree ./flake); 23 + outputs = inputs: inputs.flake-parts.lib.mkFlake {inherit inputs;} {imports = [./flake];}; 63 24 64 25 inputs = { 65 26 nixpkgs.url = "https://channels.nixos.org/nixos-unstable-small/nixexprs.tar.xz";
+12
flake/default.nix
··· 1 + {inputs, ...}: { 2 + imports = [ 3 + inputs.flake-parts.flakeModules.modules 4 + ./nixos-configurations.nix 5 + ./pkgs.nix 6 + ./mksystem.nix 7 + ]; 8 + 9 + systems = [ 10 + "linux-x86_64" 11 + ]; 12 + }
-7
flake/flake/base.nix
··· 1 - {inputs, ...}: { 2 - flake.root = inputs.self.outPath; 3 - 4 - imports = [ 5 - inputs.flake-parts.flakeModules.modules 6 - ]; 7 - }
+1 -2
flake/flake/nixos-configurations.nix flake/nixos-configurations.nix
··· 25 25 value = config.flake.mkSystem (let 26 26 cfg = import "${inputs.self.outPath}/hosts/${n}"; 27 27 in { 28 - # take in all defined nixos modules, for example nixpkgs overrides are defined in flake.parts 29 - modules = [cfg] ++ builtins.attrValues config.flake.modules.nixos; 28 + modules = [cfg]; 30 29 }); 31 30 }) (readDir "${inputs.self.outPath}/hosts"); 32 31 }
-5
flake/flake/systems.nix
··· 1 - { 2 - systems = [ 3 - "linux-x86_64" 4 - ]; 5 - }
+4
flake/lib/default.nix
··· 2 2 inherit (lib) mkOption; 3 3 inherit (lib.types) attrsOf anything; 4 4 in { 5 + imports = [ 6 + ./modules.nix 7 + ]; 8 + 5 9 options = { 6 10 flake.lib = mkOption { 7 11 type = attrsOf anything;
+2 -3
flake/lib/mksystem.nix flake/mksystem.nix
··· 8 8 inherit (lib) isAttrs isFunction isList evalModules mkOption; 9 9 inherit (lib.types) listOf str; 10 10 11 - inherit (config.flake) root; 11 + root = inputs.self.outPath; 12 12 in { 13 13 flake.mkSystem = {modules}: 14 14 assert isList modules; 15 15 lib.nixosSystem (let 16 - # legacy lib 17 16 mlib = import "${root}/lib" {inherit lib;}; 18 17 in { 19 18 specialArgs = { ··· 32 31 inputs.authentik-nix.nixosModules.default 33 32 inputs.nix-gaming.nixosModules.pipewireLowLatency 34 33 ({...}: { 35 - imports = import "${inputs.self.outPath}/modules"; 34 + imports = import "${root}/modules"; 36 35 nixpkgs = { 37 36 overlays = [ 38 37 inputs.emacs-overlay.overlay
+1 -1
flake/nixpkgs/overrides.nix modules/overlay.nix
··· 1 1 {inputs, ...}: { 2 - flake.modules.nixos.base = { 2 + config = { 3 3 nixpkgs.overlays = [ 4 4 (final: prev: rec { 5 5 # TODO organize, break up
+1 -1
flake/pkgs.nix
··· 8 8 inputs.pkgs-by-name.flakeModule 9 9 ]; 10 10 11 - perSystem.pkgsDirectory = "${config.flake.root}/pkgs"; 11 + perSystem.pkgsDirectory = "${inputs.self.outPath}/pkgs"; 12 12 13 13 # flake = { 14 14 # overlays.default = final: prev:
-2
home/shell.nix
··· 30 30 }; 31 31 32 32 home.sessionVariables = { 33 - SSH_AUTH_SOCK = "$XDG_RUNTIME_DIR/keyring/ssh"; 34 - 35 33 STUBBORN_HOME = "${config.mHome.stubbornHomeDirectory}"; 36 34 }; 37 35
+15 -24
modules/default.nix
··· 1 1 [ 2 - ./user.nix 3 - 4 - # "libraries" 5 - # Probably required by the below options, include these 6 - ./home.nix # most likely conflicts with your home-manager setup, read flake.nix for some pointers 7 - # ./config 8 - 9 - # more abstract configuration 10 - # These may be useful 2 + ./base.nix 3 + ./boot.nix 4 + ./certs.nix 5 + ./emacs 6 + ./gaming 7 + ./gpu.nix 8 + ./home.nix 11 9 ./impermanence.nix 10 + ./keyboard 12 11 ./monitor.nix 13 - ./gpu.nix 14 - 15 - # specific configuration 16 - # These are probably less useful 17 - ./base.nix 18 - ./boot.nix 12 + ./old-tv 13 + ./overlay.nix 14 + ./programs 15 + ./searx.nix 19 16 ./shell.nix 20 17 ./ssh.nix 21 - ./certs.nix 22 - ./programs 18 + ./tv 19 + ./user.nix 23 20 ./vm.nix 24 - ./old-tv 25 - ./tv 26 - ./emacs 27 - ./searx.nix 21 + ./workstation 28 22 ./xorg.nix 29 - ./workstation 30 - ./keyboard 31 - ./gaming 32 23 ]
+2 -2
modules/workstation/keyring.nix
··· 18 18 services.gnome.gnome-keyring.enable = true; 19 19 programs.ssh.enableAskPassword = true; 20 20 21 - # programs.seahorse.enable = true; 22 - # programs.ssh.askPassword = lib.mkForce "${pkgs.seahorse}/libexec/seahorse/ssh-askpass"; 21 + programs.seahorse.enable = true; 22 + programs.ssh.askPassword = lib.mkForce "${pkgs.seahorse}/libexec/seahorse/ssh-askpass"; 23 23 24 24 meow.home.modules = [ 25 25 {
+1 -1
modules/workstation/rice/glass/default.nix
··· 74 74 rounding = 7; 75 75 76 76 blur = { 77 - enabled = true; 77 + enabled = false; 78 78 size = 3; 79 79 passes = 1; 80 80 };