NixOS configuration ๐Ÿช„

๐Ÿ›โœจ added piper support

Signed-off-by: Xaiya Schumin <d.schumin@proton.me>

+57 -64
+49 -50
flake.lock
··· 299 299 "nixpkgs-lib": "nixpkgs-lib_2" 300 300 }, 301 301 "locked": { 302 - "lastModified": 1765835352, 303 - "narHash": "sha256-XswHlK/Qtjasvhd1nOa1e8MgZ8GS//jBoTqWtrS1Giw=", 302 + "lastModified": 1768135262, 303 + "narHash": "sha256-PVvu7OqHBGWN16zSi6tEmPwwHQ4rLPU9Plvs8/1TUBY=", 304 304 "owner": "hercules-ci", 305 305 "repo": "flake-parts", 306 - "rev": "a34fae9c08a15ad73f295041fec82323541400a9", 306 + "rev": "80daad04eddbbf5a4d883996a73f3f542fa437ac", 307 307 "type": "github" 308 308 }, 309 309 "original": { ··· 457 457 "nixpkgs": "nixpkgs_3" 458 458 }, 459 459 "locked": { 460 - "lastModified": 1769187349, 461 - "narHash": "sha256-clG+nT6I2qxjIgk5WoSDKJyNhzKJs9jzbCujPF2S/yg=", 460 + "lastModified": 1769397130, 461 + "narHash": "sha256-TTM4KV9IHwa181X7afBRbhLJIrgynpDjAXJFMUOWfyU=", 462 462 "owner": "nix-community", 463 463 "repo": "home-manager", 464 - "rev": "082a4cd87c6089d1d9c58ebe52655f9e07245fcb", 464 + "rev": "c37679d37bdbecf11bbe3c5eb238d89ca4f60641", 465 465 "type": "github" 466 466 }, 467 467 "original": { ··· 548 548 "pre-commit-hooks": "pre-commit-hooks_2" 549 549 }, 550 550 "locked": { 551 - "lastModified": 1769177211, 552 - "narHash": "sha256-DXYZIBQaUeBHATHvbXDihvUgcudjMksfC3xag14UTjo=", 553 - "rev": "cb34b56feab947992d8183fd1056170d488158d0", 551 + "lastModified": 1769366844, 552 + "narHash": "sha256-YR9OUa/FG5UkxKHgJGfCvNRq3DyXOxJJ53f1rEQidgY=", 554 553 "type": "tarball", 555 - "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/cb34b56feab947992d8183fd1056170d488158d0.tar.gz?rev=cb34b56feab947992d8183fd1056170d488158d0" 554 + "url": "https://git.lix.systems/lix-project/lix/archive/main.tar.gz" 556 555 }, 557 556 "original": { 558 557 "type": "tarball", ··· 596 595 ] 597 596 }, 598 597 "locked": { 599 - "lastModified": 1769220234, 600 - "narHash": "sha256-o382acfc72MJKfDmgCCsjc1hJ/IcALxp5Ob+PNTBu/s=", 598 + "lastModified": 1769394251, 599 + "narHash": "sha256-IkL7t/k1kbCG3LHPhZD32c80m4QHFgCZ8bVTqN79kEM=", 601 600 "owner": "fufexan", 602 601 "repo": "nix-gaming", 603 - "rev": "096a8e68519ce32e6c6d3f3609709211483b09e4", 602 + "rev": "2805bc370151d38eba406f5e3bfd111b02a13bcd", 604 603 "type": "github" 605 604 }, 606 605 "original": { ··· 617 616 "rust-overlay": "rust-overlay_3" 618 617 }, 619 618 "locked": { 620 - "lastModified": 1769233106, 621 - "narHash": "sha256-JDBFcbIbP8jyuCLgCux4sOHS3cbzFu1HEDLOBJ7zo3E=", 619 + "lastModified": 1769401626, 620 + "narHash": "sha256-ZCE59GxN844Zly0g8USVMb0PajqG0EDT0Lbtca71yPk=", 622 621 "owner": "Janrupf", 623 622 "repo": "nix-jetbrains-plugin-repository", 624 - "rev": "8d302e424e92371bdc10d63216b7d221beee4470", 623 + "rev": "c29b7cbfb0f514e1591a43725ad649d2385fdfd4", 625 624 "type": "github" 626 625 }, 627 626 "original": { ··· 706 705 ] 707 706 }, 708 707 "locked": { 709 - "lastModified": 1769241773, 710 - "narHash": "sha256-KiU37jkiRNghmT0j7HMdET07oMBjKHLdgZnDjAsUpL8=", 708 + "lastModified": 1769385793, 709 + "narHash": "sha256-GtAyfMHGNAf8Oz+Gz0dBO2L/ZyZO7AVmgVOpCr/FZc8=", 711 710 "owner": "KaylorBen", 712 711 "repo": "nixcord", 713 - "rev": "373c02891c905d62efd342dd069fc84bcbd01798", 712 + "rev": "de37fd12b9344786841e53bc0f3556148d4ce5df", 714 713 "type": "github" 715 714 }, 716 715 "original": { ··· 721 720 }, 722 721 "nixos-hardware": { 723 722 "locked": { 724 - "lastModified": 1769086393, 725 - "narHash": "sha256-3ymIZ8s3+hu7sDl/Y48o6bwMxorfKrmn97KuWiw1vjY=", 723 + "lastModified": 1769302137, 724 + "narHash": "sha256-QEDtctEkOsbx8nlFh4yqPEOtr4tif6KTqWwJ37IM2ds=", 726 725 "owner": "NixOS", 727 726 "repo": "nixos-hardware", 728 - "rev": "9f7ba891ea5fc3ededd7804f1a23fafadbcb26ca", 727 + "rev": "a351494b0e35fd7c0b7a1aae82f0afddf4907aa8", 729 728 "type": "github" 730 729 }, 731 730 "original": { ··· 815 814 }, 816 815 "nixpkgs_3": { 817 816 "locked": { 818 - "lastModified": 1768886240, 819 - "narHash": "sha256-C2TjvwYZ2VDxYWeqvvJ5XPPp6U7H66zeJlRaErJKoEM=", 817 + "lastModified": 1769018530, 818 + "narHash": "sha256-MJ27Cy2NtBEV5tsK+YraYr2g851f3Fl1LpNHDzDX15c=", 820 819 "owner": "NixOS", 821 820 "repo": "nixpkgs", 822 - "rev": "80e4adbcf8992d3fd27ad4964fbb84907f9478b0", 821 + "rev": "88d3861acdd3d2f0e361767018218e51810df8a1", 823 822 "type": "github" 824 823 }, 825 824 "original": { ··· 863 862 }, 864 863 "nixpkgs_6": { 865 864 "locked": { 866 - "lastModified": 1769188852, 867 - "narHash": "sha256-aBAGyMum27K7cP5OR7BMioJOF3icquJMZDDgk6ZEg1A=", 865 + "lastModified": 1769330179, 866 + "narHash": "sha256-yxgb4AmkVHY5OOBrC79Vv6EVd4QZEotqv+6jcvA212M=", 868 867 "owner": "NixOS", 869 868 "repo": "nixpkgs", 870 - "rev": "a1bab9e494f5f4939442a57a58d0449a109593fe", 869 + "rev": "48698d12cc10555a4f3e3222d9c669b884a49dfe", 871 870 "type": "github" 872 871 }, 873 872 "original": { ··· 895 894 }, 896 895 "nixpkgs_8": { 897 896 "locked": { 898 - "lastModified": 1769092226, 899 - "narHash": "sha256-syNdtqgMdmk/xCW4TWjiWuspxwqRU+727FBy8roiB08=", 900 - "rev": "b579d443b37c9c5373044201ea77604e37e748c8", 897 + "lastModified": 1769330179, 898 + "narHash": "sha256-YpOjLmOGokqTiFjxFu0ioMpMbxHGP6CckfgmqV5OAck=", 899 + "rev": "48698d12cc10555a4f3e3222d9c669b884a49dfe", 901 900 "type": "tarball", 902 - "url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre932089.b579d443b37c/nixexprs.tar.xz?lastModified=1769092226&rev=b579d443b37c9c5373044201ea77604e37e748c8" 901 + "url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre934390.48698d12cc10/nixexprs.tar.xz?lastModified=1769330179&rev=48698d12cc10555a4f3e3222d9c669b884a49dfe" 903 902 }, 904 903 "original": { 905 904 "type": "tarball", ··· 929 928 "systems": "systems_4" 930 929 }, 931 930 "locked": { 932 - "lastModified": 1769234929, 933 - "narHash": "sha256-XOf8h3PpRW0KslbQ4wUwPInKtTslXKPPD76e8eXwg6M=", 931 + "lastModified": 1769418848, 932 + "narHash": "sha256-jLSg9IkglcIw64kU1utXxsxXhiVdD45dkh9ZJKaFQ7U=", 934 933 "owner": "nix-community", 935 934 "repo": "nixvim", 936 - "rev": "0dd35171c808dbb31846d41a762a9264b87aa6be", 935 + "rev": "c19a0517ddeed4c1548611e42e187048fc2e5dcf", 937 936 "type": "github" 938 937 }, 939 938 "original": { ··· 1201 1200 "sqlite-lib-src": "sqlite-lib-src" 1202 1201 }, 1203 1202 "locked": { 1204 - "lastModified": 1769098068, 1205 - "narHash": "sha256-MaJyvfHh52nFI8qgROh5nmTaEHPwBzpcEuQD9s40mog=", 1203 + "lastModified": 1769411216, 1204 + "narHash": "sha256-aVCrr6mPM0VltY6hOCZEQQgKueSOJx6nG2jt3TUIISs=", 1206 1205 "ref": "refs/heads/master", 1207 - "rev": "ee6667a64e2cb91b9d4d8fc61e1b3802b7a85d83", 1208 - "revCount": 1870, 1206 + "rev": "d4c067fd49797b6af5d36f7547894627a34ab326", 1207 + "revCount": 1890, 1209 1208 "type": "git", 1210 - "url": "https://tangled.org/tangled.org/core" 1209 + "url": "https://tangled.org/@tangled.org/core" 1211 1210 }, 1212 1211 "original": { 1213 1212 "type": "git", 1214 - "url": "https://tangled.org/tangled.org/core" 1213 + "url": "https://tangled.org/@tangled.org/core" 1215 1214 } 1216 1215 }, 1217 1216 "tgirlpkgs": { ··· 1219 1218 "nixpkgs": "nixpkgs_8" 1220 1219 }, 1221 1220 "locked": { 1222 - "lastModified": 1769216005, 1223 - "narHash": "sha256-0KCzGEO1wchJZ/R+Hqb6St2pnCKBnrJm1OxJexgRWag=", 1221 + "lastModified": 1769421526, 1222 + "narHash": "sha256-JAp7dONxe3N49BrhXdN0sKpuEIc7/yw6W5NKQYhnnqU=", 1224 1223 "owner": "tgirlcloud", 1225 1224 "repo": "pkgs", 1226 - "rev": "be8988c25dafedabc25ccf08364aa8959fddca51", 1225 + "rev": "1c7ff0a37d24bd22d566b9b322d1a8b22c8df8a6", 1227 1226 "type": "github" 1228 1227 }, 1229 1228 "original": { ··· 1237 1236 "nixpkgs": "nixpkgs_9" 1238 1237 }, 1239 1238 "locked": { 1240 - "lastModified": 1769210892, 1241 - "narHash": "sha256-+cQwI79/8hOd5ywnnISXrQvLeweGZsuo6QZMnn1j8gI=", 1239 + "lastModified": 1769366775, 1240 + "narHash": "sha256-WZ3B6+PaGxmgfq9d5ZsiL9XFU8S91gQf10ZM29sn8A8=", 1242 1241 "owner": "Inrixia", 1243 1242 "repo": "TidaLuna", 1244 - "rev": "68d4609af63e8a548e68f2ab64c2b7b9d4090b15", 1243 + "rev": "d44731290fa6a93e90493b1a401e36aa9ccdadd2", 1245 1244 "type": "github" 1246 1245 }, 1247 1246 "original": { ··· 1295 1294 "systems": "systems_7" 1296 1295 }, 1297 1296 "locked": { 1298 - "lastModified": 1769214060, 1299 - "narHash": "sha256-dvsh8Z0dPzIRxYD4ry/OVF3Cmoi0Xb30wNFUhxPFkEg=", 1297 + "lastModified": 1769366024, 1298 + "narHash": "sha256-DgL0rrfJE2EcSQAWWfuJ3T9tddIAYm19O308amPDqWM=", 1300 1299 "owner": "vicinaehq", 1301 1300 "repo": "vicinae", 1302 - "rev": "5cc9fa2006c9a54d36ddcfc0931456a0f3991e0a", 1301 + "rev": "ca063a1fdfb6cb8b6bd36b69b77d5602ac7f14d1", 1303 1302 "type": "github" 1304 1303 }, 1305 1304 "original": {
+1 -1
flake.nix
··· 33 33 34 34 # Tangled knots 35 35 tangled = { 36 - url = "git+https://tangled.org/tangled.org/core"; 36 + url = "git+https://tangled.org/@tangled.org/core"; 37 37 38 38 inputs.nixpkgs.follows = "nixpkgs"; 39 39 };
+6 -10
modules/nixos/services/piper.nix
··· 20 20 age.secrets.piper-env.rekeyFile = "${self}/secrets/piper-env.age"; 21 21 22 22 services = { 23 - piper = { # TODO: Spotify API is currently blocked, cant create APP 23 + piper = { 24 24 enable = true; 25 25 environmentFiles = [ config.age.secrets.piper-env.path ]; 26 26 27 27 settings = { 28 28 SERVER_PORT = cfg.port; 29 + SERVER_HOST = "localhost"; 29 30 SERVER_ROOT_URL = "https://${cfg.domain}"; 31 + 32 + ENABLE_SPOTIFY = false; 33 + ENABLE_LASTFM = true; # Only for migration purposes 30 34 }; 31 35 }; 32 36 33 37 # Create proxy entry 34 38 nginx.virtualHosts.${cfg.domain} = { 35 - enableACME = true; 36 - forceSSL = true; 37 - 38 - locations."/" = { 39 - proxyPass = "http://${cfg.host}:${builtins.toString cfg.port}"; 40 - }; 41 - 42 - extraConfig = "proxy_ssl_server_name on;"; 43 - 39 + locations."/".proxyPass = "http://localhost:${builtins.toString cfg.port}"; 44 40 }; 45 41 }; 46 42 };
+1 -3
systems/apricot/default.nix
··· 38 38 knot.enable = true; 39 39 spindle.enable = true; 40 40 }; 41 - 42 - # https://github.com/teal-fm/piper/issues/42 43 - # piper.enable = true; 41 + piper.enable = true; 44 42 45 43 radicale.enable = true; 46 44