diff --git a/config/common.nix b/config/common.nix index cae8ca3..6c007e2 100644 --- a/config/common.nix +++ b/config/common.nix @@ -9,10 +9,10 @@ with lib; in { nix.nixPath = lib.mkBefore [ "/nix/var/nix/profiles/per-user/$USER/channels" ]; - home-manager.users.root = home-generator.generate-config { - username = "root"; - home-dir = "/root"; - user-email = "root@${config.instance.hostname}.${host-domain}"; - } { }; + # home-manager.users.root = home-generator.generate-config { + # username = "root"; + # home-dir = "/root"; + # user-email = "root@${config.instance.hostname}.${host-domain}"; + # } { }; }; } diff --git a/config/users.nix b/config/users.nix index 82a82d6..7bd65f1 100644 --- a/config/users.nix +++ b/config/users.nix @@ -1,7 +1,7 @@ { config, lib, pkgs, ... }: let - home-generator = pkgs.callPackage ../nix-home {}; + # home-generator = pkgs.callPackage ../nix-home {}; in { config.fudo.users = { @@ -16,11 +16,11 @@ in { "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDoWkjyeIfgwm0b78weToVYOQSD0RQ0qbNzpsN5NokbIFv2/980kLtnYrQEgIJ/JwMLlT3uJYacbCT5/a6Fb8oLxNpj0AF1EKaWZ3Rrlg72Sq+9SEwJwWWmZizX83sovMwUBMaUp6jWLhAhPpzBW5pfc5YWoc89wxGbELSwzgt5EgHbSJgvDnaHSp3fVaY01wfDXbL/oO160iNe7wv2HLMZu/FkWBkIjz6HmoGJJzYM89bUpHbyYG28lmCHB/8UPog5/BsjOn3/qupgf4zh6mMdMsXLvbR2jVwVjxcEMj9N5nCvc+Y3oi7Mij6VNrWbhkaAJMEzeMhWYrF3/pFQxUqG37aK3d0gw9kp5tMDLIlAPX4y1lfA87pIzoa0+Alql0CJQA1IJvp9SFG7lBmSthWQLmZvwwfoGg/ZjF6rOgsVoZ8TizpQnydWJDr6NboU9LL9Oa64OM5Rs0AU3cR2UbOF4QIcWFJ/7oDe3dOnfZ8QYqx9eXJyxoAUpDanaaTHYBiAKkeOBwQU+MVLKCcONKw9FZclf/1TpDB5b3/JeUFANjHQTv0UXA4YYU7iCx6H7XB4qwwtU9O19CGQYYfCfULX12/fRpYJw6VJaQWyyU4Bn5dk/dcB2nGI36jwbLMfhbUTIApujioAnd/GQIMakHEZ1+syPhMx9BxMkZb99B0A1Q== openpgp:0x4EC95B64" ]; home-directory = "/home/niten"; - home-manager-generator = home-generator.generate-config { - username = "niten"; - user-email = "niten@fudo.org"; - home-dir = "/home/niten"; - }; + # home-manager-generator = home-generator.generate-config { + # username = "niten"; + # user-email = "niten@fudo.org"; + # home-dir = "/home/niten"; + # }; k5login = [ "niten/root@FUDO.ORG" "niten/admin@FUDO.ORG" @@ -193,11 +193,11 @@ in { ldap-hashed-passwd = "{MD5}iecbyMpyVkmOaMBzSFy58Q=="; login-hashed-passwd = "$6$C8lYHrK7KvdKm/RE$cHZ2hg5gEOEjTV8Zoayik8sz5h.Vh0.ClCgOlQn8l/2Qx/qdxqZ7xCsAZ1GZ.IEyESfhJeJbjLpykXDwPpfVF0"; - home-manager-generator = home-generator.generate-config { - username = "xiaoxuan"; - user-email = "xiaoxuan@fudo.org"; - home-dir = "/home/fudo/xiaoxuan"; - }; + # home-manager-generator = home-generator.generate-config { + # username = "xiaoxuan"; + # user-email = "xiaoxuan@fudo.org"; + # home-dir = "/home/fudo/xiaoxuan"; + # }; }; thibor = { @@ -480,11 +480,11 @@ in { uid = 10115; primary-group = "informis"; common-name = "Viator"; - home-manager-generator = home-generator.generate-config { - username = "viator"; - user-email = "viator@informis.land"; - home-dir = "/home/viator"; - }; + # home-manager-generator = home-generator.generate-config { + # username = "viator"; + # user-email = "viator@informis.land"; + # home-dir = "/home/viator"; + # }; ldap-hashed-passwd = "{SSHA}dF/5NGkafL8M1kpa3LYZKdh0Pc7a02gA"; login-hashed-passwd = "$6$a1q2Duoe35hd5$IaZGXPfqyGv9uq5DQm7DZq0vIHsUs39sLktBiBBqMiwl/f/Z4jSvNZLJp9DZJYe5u2qGBYh1ca.jsXvQA8FPZ/"; diff --git a/flake.lock b/flake.lock index b8394e0..d559241 100644 --- a/flake.lock +++ b/flake.lock @@ -24,6 +24,171 @@ "type": "path" } }, + "doom-emacs": { + "inputs": { + "doom-emacs": "doom-emacs_2", + "doom-snippets": "doom-snippets", + "emacs-overlay": "emacs-overlay", + "emacs-so-long": "emacs-so-long", + "evil-markdown": "evil-markdown", + "evil-org-mode": "evil-org-mode", + "evil-quick-diff": "evil-quick-diff", + "explain-pause-mode": "explain-pause-mode", + "flake-utils": "flake-utils", + "nix-straight": "nix-straight", + "nixpkgs": "nixpkgs", + "nose": "nose", + "ob-racket": "ob-racket", + "org": "org", + "org-contrib": "org-contrib", + "org-yt": "org-yt", + "php-extras": "php-extras", + "revealjs": "revealjs", + "rotate-text": "rotate-text" + }, + "locked": { + "lastModified": 1627398156, + "narHash": "sha256-Ru1aV3NuIFXAsvUE3de8KR7xDZOo1GCBJdsWKJn+Ebw=", + "owner": "vlaci", + "repo": "nix-doom-emacs", + "rev": "fee14d217b7a911aad507679dafbeaa8c1ebf5ff", + "type": "github" + }, + "original": { + "owner": "vlaci", + "repo": "nix-doom-emacs", + "type": "github" + } + }, + "doom-emacs_2": { + "flake": false, + "locked": { + "lastModified": 1626604817, + "narHash": "sha256-z+dvjB02cHU+VQ5EMkzqSdX817PZar9AkmmfK27q0vo=", + "owner": "hlissner", + "repo": "doom-emacs", + "rev": "46732c0adaef147144418f9f284ca6b1183ab96f", + "type": "github" + }, + "original": { + "owner": "hlissner", + "ref": "develop", + "repo": "doom-emacs", + "type": "github" + } + }, + "doom-snippets": { + "flake": false, + "locked": { + "lastModified": 1625547004, + "narHash": "sha256-V+ytAjB4ZZ+5dJJAu1OY7SbnqrokX5PVBWs0AsgQ8Vs=", + "owner": "hlissner", + "repo": "doom-snippets", + "rev": "5c0eb5bd70f035cefb981c2ce64f4367498bdda6", + "type": "github" + }, + "original": { + "owner": "hlissner", + "repo": "doom-snippets", + "type": "github" + } + }, + "emacs-overlay": { + "flake": false, + "locked": { + "lastModified": 1626972035, + "narHash": "sha256-YhBtnKmLDYiEzP5ZEMEQMg6oMP5EV+ToCkku7ZYfL+A=", + "owner": "nix-community", + "repo": "emacs-overlay", + "rev": "be04b45efb35db58e6ac6aa86b84f850c85b5dfe", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "emacs-overlay", + "type": "github" + } + }, + "emacs-so-long": { + "flake": false, + "locked": { + "lastModified": 1575031854, + "narHash": "sha256-xIa5zO0ZaToDrec1OFjBK6l39AbA4l/CE4LInVu2hi0=", + "owner": "hlissner", + "repo": "emacs-so-long", + "rev": "ed666b0716f60e8988c455804de24b55919e71ca", + "type": "github" + }, + "original": { + "owner": "hlissner", + "repo": "emacs-so-long", + "type": "github" + } + }, + "evil-markdown": { + "flake": false, + "locked": { + "lastModified": 1626852210, + "narHash": "sha256-HBBuZ1VWIn6kwK5CtGIvHM1+9eiNiKPH0GUsyvpUVN8=", + "owner": "Somelauw", + "repo": "evil-markdown", + "rev": "8e6cc68af83914b2fa9fd3a3b8472573dbcef477", + "type": "github" + }, + "original": { + "owner": "Somelauw", + "repo": "evil-markdown", + "type": "github" + } + }, + "evil-org-mode": { + "flake": false, + "locked": { + "lastModified": 1607203864, + "narHash": "sha256-JxwqVYDN6OIJEH15MVI6XOZAPtUWUhJQWHyzcrUvrFg=", + "owner": "hlissner", + "repo": "evil-org-mode", + "rev": "a9706da260c45b98601bcd72b1d2c0a24a017700", + "type": "github" + }, + "original": { + "owner": "hlissner", + "repo": "evil-org-mode", + "type": "github" + } + }, + "evil-quick-diff": { + "flake": false, + "locked": { + "lastModified": 1575189609, + "narHash": "sha256-oGzl1ayW9rIuq0haoiFS7RZsS8NFMdEA7K1BSozgnJU=", + "owner": "rgrinberg", + "repo": "evil-quick-diff", + "rev": "69c883720b30a892c63bc89f49d4f0e8b8028908", + "type": "github" + }, + "original": { + "owner": "rgrinberg", + "repo": "evil-quick-diff", + "type": "github" + } + }, + "explain-pause-mode": { + "flake": false, + "locked": { + "lastModified": 1595842060, + "narHash": "sha256-++znrjiDSx+cy4okFBBXUBkRFdtnE2x+trkmqjB3Njs=", + "owner": "lastquestion", + "repo": "explain-pause-mode", + "rev": "2356c8c3639cbeeb9751744dbe737267849b4b51", + "type": "github" + }, + "original": { + "owner": "lastquestion", + "repo": "explain-pause-mode", + "type": "github" + } + }, "filesystem-keys": { "flake": false, "locked": { @@ -36,6 +201,37 @@ "type": "path" } }, + "flake-utils": { + "locked": { + "lastModified": 1623875721, + "narHash": "sha256-A8BU7bjS5GirpAUv4QA+QnJ4CceLHkcXdRp4xITDB0s=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "f7e004a55b120c02ecb6219596820fcd32ca8772", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "fudo-home": { + "inputs": { + "doom-emacs": "doom-emacs", + "home-manager": "home-manager", + "niten-doom-config": "niten-doom-config" + }, + "locked": { + "narHash": "sha256-YU6DAPd4yJtUAwkuXltTi9gJhL+J2W23OQw2KYUEEQc=", + "path": "./nix-home", + "type": "path" + }, + "original": { + "path": "./nix-home", + "type": "path" + } + }, "fudo-secrets": { "inputs": { "backplane-passwords": "backplane-passwords", @@ -57,9 +253,7 @@ }, "home-manager": { "inputs": { - "nixpkgs": [ - "nixpkgs" - ] + "nixpkgs": "nixpkgs_2" }, "locked": { "lastModified": 1631573611, @@ -88,7 +282,69 @@ "type": "path" } }, + "niten-doom-config": { + "flake": false, + "locked": { + "lastModified": 1628274414, + "narHash": "sha256-EIGqjTHcYnjVXceY1tpjaYxNmORh8NNiL2FVWCI5sBo=", + "ref": "master", + "rev": "0ab1532c856ccdb6ce46c5948054279f439eb1f2", + "revCount": 34, + "type": "git", + "url": "https://git.fudo.org/niten/doom-emacs.git" + }, + "original": { + "type": "git", + "url": "https://git.fudo.org/niten/doom-emacs.git" + } + }, + "nix-straight": { + "flake": false, + "locked": { + "lastModified": 1621543597, + "narHash": "sha256-E/m2Hrw2og//CfOCOWe2yapYC01Tqhozn4YMPYJsC3o=", + "owner": "vlaci", + "repo": "nix-straight.el", + "rev": "8e84d04f10b2298de856b2b8b9a0d13abc91b5ca", + "type": "github" + }, + "original": { + "owner": "vlaci", + "ref": "v2.2.0", + "repo": "nix-straight.el", + "type": "github" + } + }, "nixpkgs": { + "locked": { + "lastModified": 1626852498, + "narHash": "sha256-lOXUJvi0FJUXHTVSiC5qsMRtEUgqM4mGZpMESLuGhmo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "16105403bdd843540cbef9c63fc0f16c1c6eaa70", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixpkgs-unstable", + "type": "indirect" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1633041389, + "narHash": "sha256-1bjTQfnb04OqJeWaUfRejQH7gClG77KvDRC2W/TVszw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "9a23237031b385945132c8dac7d7ad97ece67408", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "type": "indirect" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1632918953, "narHash": "sha256-XY3TKBfhP7wCu/SeqrwIkTWkyYHy5W1yRR8pxyzRY9Y=", @@ -103,11 +359,139 @@ "type": "indirect" } }, + "nose": { + "flake": false, + "locked": { + "lastModified": 1400604510, + "narHash": "sha256-daEi8Kta1oGaDEmUUDDQMahTTPOpvNpDKk22rlr7cB0=", + "owner": "emacsattic", + "repo": "nose", + "rev": "f8528297519eba911696c4e68fa88892de9a7b72", + "type": "github" + }, + "original": { + "owner": "emacsattic", + "repo": "nose", + "type": "github" + } + }, + "ob-racket": { + "flake": false, + "locked": { + "lastModified": 1584656173, + "narHash": "sha256-rBUYDDCXb+3D4xTPQo9UocbTPZ32kWV1Uya/1DmZknU=", + "owner": "xchrishawk", + "repo": "ob-racket", + "rev": "83457ec9e1e96a29fd2086ed19432b9d75787673", + "type": "github" + }, + "original": { + "owner": "xchrishawk", + "repo": "ob-racket", + "type": "github" + } + }, + "org": { + "flake": false, + "locked": { + "lastModified": 1627155762, + "narHash": "sha256-XS1eA6P0ePabdrnUNe5lN19EA9dfK615gMGObr9wfBQ=", + "owner": "emacs-straight", + "repo": "org-mode", + "rev": "c9dfed48a607c7f6524f1c6480f09cf61a5d6237", + "type": "github" + }, + "original": { + "owner": "emacs-straight", + "repo": "org-mode", + "type": "github" + } + }, + "org-contrib": { + "flake": false, + "locked": { + "lastModified": 1623339452, + "narHash": "sha256-E3pioqkmAKQm5N7YsgJZil0/ozkdRE7//tE9FGbrluM=", + "ref": "master", + "rev": "fc81309cf6756607a836f93049a9393c2967c4e0", + "revCount": 2599, + "type": "git", + "url": "https://git.sr.ht/~bzg/org-contrib" + }, + "original": { + "type": "git", + "url": "https://git.sr.ht/~bzg/org-contrib" + } + }, + "org-yt": { + "flake": false, + "locked": { + "lastModified": 1527381913, + "narHash": "sha256-dzQ6B7ryzatHCTLyEnRSbWO0VUiX/FHYnpHTs74aVUs=", + "owner": "TobiasZawada", + "repo": "org-yt", + "rev": "40cc1ac76d741055cbefa13860d9f070a7ade001", + "type": "github" + }, + "original": { + "owner": "TobiasZawada", + "repo": "org-yt", + "type": "github" + } + }, + "php-extras": { + "flake": false, + "locked": { + "lastModified": 1573312690, + "narHash": "sha256-r4WyVbzvT0ra4Z6JywNBOw5RxOEYd6Qe2IpebHXkj1U=", + "owner": "arnested", + "repo": "php-extras", + "rev": "d410c5af663c30c01d461ac476d1cbfbacb49367", + "type": "github" + }, + "original": { + "owner": "arnested", + "repo": "php-extras", + "type": "github" + } + }, + "revealjs": { + "flake": false, + "locked": { + "lastModified": 1625811744, + "narHash": "sha256-Y67nVqcovn2PbHXmWOFWMq10Qz2ZIRyyWEO6qsZLbIM=", + "owner": "hakimel", + "repo": "reveal.js", + "rev": "b18f12d964ef80bd9ffb061aae48ff4c15fb43ad", + "type": "github" + }, + "original": { + "owner": "hakimel", + "repo": "reveal.js", + "type": "github" + } + }, "root": { "inputs": { + "fudo-home": "fudo-home", "fudo-secrets": "fudo-secrets", - "home-manager": "home-manager", - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs_3" + } + }, + "rotate-text": { + "flake": false, + "locked": { + "lastModified": 1322962747, + "narHash": "sha256-SOeOgSlcEIsKhUiYDJv0p+mLUb420s9E2BmvZQvZ0wk=", + "owner": "debug-ito", + "repo": "rotate-text.el", + "rev": "48f193697db996855aee1ad2bc99b38c6646fe76", + "type": "github" + }, + "original": { + "owner": "debug-ito", + "repo": "rotate-text.el", + "type": "github" } }, "service-passwords": { diff --git a/flake.nix b/flake.nix index feef156..c95ea28 100644 --- a/flake.nix +++ b/flake.nix @@ -4,13 +4,12 @@ inputs = { nixpkgs.url = "nixpkgs/nixos-21.05"; - home-manager.url = "github:nix-community/home-manager/release-21.05"; - home-manager.inputs.nixpkgs.follows = "nixpkgs"; + fudo-home.url = "path:./nix-home"; fudo-secrets.url = "path:/state/secrets"; }; - outputs = { self, nixpkgs, home-manager, fudo-secrets, ... }: { + outputs = { self, nixpkgs, fudo-secrets, ... }: { nixosConfigurations = let lib = nixpkgs.lib; @@ -39,7 +38,6 @@ modules = [ fudo-secrets.nixosModule - "${home-manager}/nixos" (import ./initialize.nix { inherit hostname pkgs build-timestamp fudo-secrets; }) diff --git a/lib/fudo/users.nix b/lib/fudo/users.nix index f644a9e..84c2329 100644 --- a/lib/fudo/users.nix +++ b/lib/fudo/users.nix @@ -77,11 +77,11 @@ let default = [ ]; }; - home-manager-generator = mkOption { - type = nullOr (functionTo attrs); - description = "Home Manager configuration for the given user."; - default = null; - }; + # home-manager-generator = mkOption { + # type = nullOr (functionTo attrs); + # description = "Home Manager configuration for the given user."; + # default = null; + # }; home-directory = mkOption { type = nullOr str; @@ -265,17 +265,18 @@ in { }; }; - home-manager = { - useGlobalPkgs = true; - - users = let - home-manager-users = - filterAttrs (username: userOpts: userOpts.home-manager-generator != null) - sys.local-users; - in mapAttrs (username: userOpts: userOpts.home-manager-generator { - enable-gui = host-cfg.enable-gui; - }) home-manager-users; - }; + home-manager.userGlobalPkgs = true; + # home-manager.userGlobalPkgs = { + # useGlobalPkgs = true; + + # users = let + # home-manager-users = + # filterAttrs (username: userOpts: userOpts.home-manager-generator != null) + # sys.local-users; + # in mapAttrs (username: userOpts: userOpts.home-manager-generator { + # enable-gui = host-cfg.enable-gui; + # }) home-manager-users; + # }; # Group home directories have to exist, otherwise users can't log in systemd.services = let diff --git a/nix-home b/nix-home index 3f509d0..fe65fa2 160000 --- a/nix-home +++ b/nix-home @@ -1 +1 @@ -Subproject commit 3f509d08290003c27c51049a8f04e076a79570b7 +Subproject commit fe65fa2566388d7a259a8abf92d7166fb75e29b4