Compare commits
10 Commits
b3e3352429
...
94eebc86b9
Author | SHA1 | Date | |
---|---|---|---|
94eebc86b9 | |||
e3e582543a | |||
c6f4f651e1 | |||
e00ccffa99 | |||
cc5545f7ad | |||
4aacdc1ee4 | |||
6bfa5e0b73 | |||
b0a22014c3 | |||
eb66634f44 | |||
8e36dc50c7 |
@ -1,7 +1,11 @@
|
|||||||
keys:
|
keys:
|
||||||
- &primary age12x3jgpq5j83rhvxmuu90z99rwnpf8ntu3m87strf856syr6alv2q379k9w
|
- &primary age1ee5udznhadk6m7jtglu4709rep080yjyd2ukzdl8jma4mm92y3psv0slpg
|
||||||
|
- &aspi-ssh age1q8lc5340gz5xw2f57nglrss68wv0j0hf36py2pdtrl6ky3yrq9qqk0njr4
|
||||||
|
- &pianonix-ssh age1hsmfz8fjxu83sax9lr487h8xr6cyge0apdq4zpge4c8jpcjj2cksj825ct
|
||||||
creation_rules:
|
creation_rules:
|
||||||
- path_regex: secrets/secrets.yaml$
|
- path_regex: secrets/secrets.yaml$
|
||||||
key_groups:
|
key_groups:
|
||||||
- age:
|
- age:
|
||||||
- *primary
|
- *primary
|
||||||
|
- *aspi-ssh
|
||||||
|
- *pianonix-ssh
|
||||||
|
446
flake.lock
generated
446
flake.lock
generated
@ -3,11 +3,11 @@
|
|||||||
"alacritty-theme": {
|
"alacritty-theme": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731618385,
|
"lastModified": 1732185998,
|
||||||
"narHash": "sha256-swf0woSInei97OAVuTgjPO5TMBw+q+cF1LePtw0PrnM=",
|
"narHash": "sha256-NWdXouqkLw5DolDvDrKoN41vntiC/1vqyac8GEC5QnQ=",
|
||||||
"owner": "alacritty",
|
"owner": "alacritty",
|
||||||
"repo": "alacritty-theme",
|
"repo": "alacritty-theme",
|
||||||
"rev": "3246429cfc4c768053fca4caecf85ec8a57fef75",
|
"rev": "9d561e9a256417048b22d639a3efb7db6a97b2eb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -65,6 +65,47 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"crane": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"sheet-organizer",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1717469187,
|
||||||
|
"narHash": "sha256-UVvFGiWFGPfVXG7Xr6HPKChx9hhtzkGaGAS/Ph1Khjg=",
|
||||||
|
"owner": "ipetkov",
|
||||||
|
"repo": "crane",
|
||||||
|
"rev": "7e86136dc729cdf237aa59a5a02687bc0d1144b6",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "ipetkov",
|
||||||
|
"repo": "crane",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"deploy-rs": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"utils": "utils"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1727447169,
|
||||||
|
"narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=",
|
||||||
|
"owner": "serokell",
|
||||||
|
"repo": "deploy-rs",
|
||||||
|
"rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "serokell",
|
||||||
|
"repo": "deploy-rs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"devshell": {
|
"devshell": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@ -107,6 +148,26 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"disko": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732540163,
|
||||||
|
"narHash": "sha256-5EYzmoTpem2IB9JWzd41sL98pz3lyyCSTiCjv08i4Uk=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "disko",
|
||||||
|
"rev": "2ed5e30fc7e34adf455db8b02b9151d3922a54ea",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "disko",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@ -156,20 +217,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_4": {
|
"flake-compat_4": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1696426674,
|
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
|
||||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
|
||||||
"revCount": 57,
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat_5": {
|
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
@ -185,7 +232,37 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-compat_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"revCount": 57,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-compat_6": {
|
"flake-compat_6": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_7": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1650374568,
|
"lastModified": 1650374568,
|
||||||
@ -224,7 +301,7 @@
|
|||||||
},
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"systems": "systems_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726560853,
|
"lastModified": 1726560853,
|
||||||
@ -242,7 +319,7 @@
|
|||||||
},
|
},
|
||||||
"flake-utils-plus": {
|
"flake-utils-plus": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2"
|
"flake-utils": "flake-utils_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715533576,
|
"lastModified": 1715533576,
|
||||||
@ -261,7 +338,25 @@
|
|||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_3"
|
"systems": "systems_5"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710146030,
|
||||||
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_3": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_6"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1694529238,
|
"lastModified": 1694529238,
|
||||||
@ -279,7 +374,7 @@
|
|||||||
},
|
},
|
||||||
"git-hooks": {
|
"git-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_5",
|
"flake-compat": "flake-compat_6",
|
||||||
"gitignore": "gitignore_3",
|
"gitignore": "gitignore_3",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
@ -450,17 +545,17 @@
|
|||||||
"hyprlang": "hyprlang",
|
"hyprlang": "hyprlang",
|
||||||
"hyprutils": "hyprutils",
|
"hyprutils": "hyprutils",
|
||||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"pre-commit-hooks": "pre-commit-hooks",
|
"pre-commit-hooks": "pre-commit-hooks",
|
||||||
"systems": "systems",
|
"systems": "systems_2",
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731978971,
|
"lastModified": 1732545731,
|
||||||
"narHash": "sha256-P9DXCxDvjFt4aMc2x67hvSpNvSqX18X840w6cEVZXoo=",
|
"narHash": "sha256-nRit2lb7kha7bcNB6pwhySbpI7Tjc1PLnkJvayBiJr8=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "67cee430061626ccd73dc6d30eed9db289053608",
|
"rev": "268778823676ef2bbda42050d78946e1fc27fc31",
|
||||||
"revCount": 5480,
|
"revCount": 5497,
|
||||||
"submodules": true,
|
"submodules": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/hyprwm/Hyprland"
|
"url": "https://github.com/hyprwm/Hyprland"
|
||||||
@ -488,11 +583,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731941239,
|
"lastModified": 1732053779,
|
||||||
"narHash": "sha256-+WF8+sbm4IBmq84FCJu31vv5yAJdEyXLPrDixFa9QIM=",
|
"narHash": "sha256-v9FS0r2XWMf/+uwevvzaF/2TimMFeLEQTf4T8cgc6c0=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-plugins",
|
"repo": "hyprland-plugins",
|
||||||
"rev": "95fee7d0a7fa48828f5e9da1af6dc1fd7adb360d",
|
"rev": "0bc619b2c3b4f9c2b65247e81d69f8bbc573d991",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -605,6 +700,47 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"music-reader": {
|
||||||
|
"inputs": {
|
||||||
|
"naersk": "naersk",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"utils": "utils_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732479786,
|
||||||
|
"narHash": "sha256-N2NxDB5ggCUzeGZKA5CL5IKu/tuMDTDusacMy1ua+SQ=",
|
||||||
|
"ref": "refs/heads/master",
|
||||||
|
"rev": "c8795588d83f1238637e60a0e1a484402502df53",
|
||||||
|
"revCount": 50,
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://gitlab.julian-mutter.de/julian/music-reader"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://gitlab.julian-mutter.de/julian/music-reader"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"naersk": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1698420672,
|
||||||
|
"narHash": "sha256-/TdeHMPRjjdJub7p7+w55vyABrsJlt5QkznPYy55vKA=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "naersk",
|
||||||
|
"rev": "aeb58d5e8faead8980a807c840232697982d47b9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"ref": "master",
|
||||||
|
"repo": "naersk",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nix-colors": {
|
"nix-colors": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"base16-schemes": "base16-schemes",
|
"base16-schemes": "base16-schemes",
|
||||||
@ -667,17 +803,17 @@
|
|||||||
},
|
},
|
||||||
"nix-matlab": {
|
"nix-matlab": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_3",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731942113,
|
"lastModified": 1732460506,
|
||||||
"narHash": "sha256-BQWjXeukGYAMxsxUV9QEDz93GWEQ+nzfoe6FXvk2ygU=",
|
"narHash": "sha256-BE5aJOUwTINKg80xQhVeTwELCXpvQ3NCFynQ9Uzbcd0=",
|
||||||
"owner": "doronbehar",
|
"owner": "doronbehar",
|
||||||
"repo": "nix-matlab",
|
"repo": "nix-matlab",
|
||||||
"rev": "eec33c6addd18912889d8a19bb49ce3428935abb",
|
"rev": "0a764e005f1311dc4a0e9cfa3193afcbfeda7a7a",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -696,11 +832,11 @@
|
|||||||
"pre-commit-hooks": "pre-commit-hooks_2"
|
"pre-commit-hooks": "pre-commit-hooks_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730803396,
|
"lastModified": 1732192922,
|
||||||
"narHash": "sha256-5ycWNOxmR/wPftlSWLQEZ3odOIE3rPvSd2qjd5+nLAE=",
|
"narHash": "sha256-xQO/3I99TFdiXTN5VoS28NpbNlCQWQUvxmPQHlfkzmU=",
|
||||||
"owner": "oddlama",
|
"owner": "oddlama",
|
||||||
"repo": "nix-topology",
|
"repo": "nix-topology",
|
||||||
"rev": "82dbbdc3c4f8f86fefdee8d8875fd4fd9276881a",
|
"rev": "2b107e98bbde932a363874e0ef5b1739a932bbc5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -709,18 +845,34 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731676054,
|
"lastModified": 1732483221,
|
||||||
"narHash": "sha256-OZiZ3m8SCMfh3B6bfGC/Bm4x3qc1m2SVEAlkV6iY7Yg=",
|
"narHash": "sha256-kF6rDeCshoCgmQz+7uiuPdREVFuzhIorGOoPXMalL2U=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixos-hardware",
|
||||||
"rev": "5e4fbfb6b3de1aa2872b76d49fafc942626e2add",
|
"rev": "45348ad6fb8ac0e8415f6e5e96efe47dd7f39405",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
"ref": "master",
|
||||||
|
"repo": "nixos-hardware",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1702272962,
|
||||||
|
"narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@ -774,11 +926,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731676054,
|
"lastModified": 1732014248,
|
||||||
"narHash": "sha256-OZiZ3m8SCMfh3B6bfGC/Bm4x3qc1m2SVEAlkV6iY7Yg=",
|
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "5e4fbfb6b3de1aa2872b76d49fafc942626e2add",
|
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -789,6 +941,36 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731676054,
|
||||||
|
"narHash": "sha256-OZiZ3m8SCMfh3B6bfGC/Bm4x3qc1m2SVEAlkV6iY7Yg=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "5e4fbfb6b3de1aa2872b76d49fafc942626e2add",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1704842529,
|
||||||
|
"narHash": "sha256-OTeQA+F8d/Evad33JMfuXC89VMetQbsU4qcaePchGr4=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "eabe8d3eface69f5bb16c18f8662a702f50c20d5",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731797254,
|
"lastModified": 1731797254,
|
||||||
"narHash": "sha256-df3dJApLPhd11AlueuoN0Q4fHo/hagP75LlM5K1sz9g=",
|
"narHash": "sha256-df3dJApLPhd11AlueuoN0Q4fHo/hagP75LlM5K1sz9g=",
|
||||||
@ -807,7 +989,7 @@
|
|||||||
"nixvim": {
|
"nixvim": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"devshell": "devshell_2",
|
"devshell": "devshell_2",
|
||||||
"flake-compat": "flake-compat_4",
|
"flake-compat": "flake-compat_5",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"git-hooks": "git-hooks",
|
"git-hooks": "git-hooks",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
@ -818,11 +1000,11 @@
|
|||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731959181,
|
"lastModified": 1732295842,
|
||||||
"narHash": "sha256-RryrMTaCvmXzhl0lYm/jAG8bAxsAhEcNq1JRtkCL4wI=",
|
"narHash": "sha256-kH3532gNJ89+9fNJSedXuMPhUBxtiFLCUH9hIVR3N/Q=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixvim",
|
"repo": "nixvim",
|
||||||
"rev": "8d29728abfcc2e4207afb3fd8606feff17c15cec",
|
"rev": "07f23a60fdd0ea402bb0d0b6c4c9df89fa638c81",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -834,7 +1016,7 @@
|
|||||||
},
|
},
|
||||||
"pre-commit-hooks": {
|
"pre-commit-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat_2",
|
||||||
"gitignore": "gitignore",
|
"gitignore": "gitignore",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"hyprland",
|
"hyprland",
|
||||||
@ -858,7 +1040,7 @@
|
|||||||
},
|
},
|
||||||
"pre-commit-hooks_2": {
|
"pre-commit-hooks_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_3",
|
"flake-compat": "flake-compat_4",
|
||||||
"gitignore": "gitignore_2",
|
"gitignore": "gitignore_2",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nix-topology",
|
"nix-topology",
|
||||||
@ -886,36 +1068,63 @@
|
|||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"alacritty-theme": "alacritty-theme",
|
"alacritty-theme": "alacritty-theme",
|
||||||
|
"deploy-rs": "deploy-rs",
|
||||||
|
"disko": "disko",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"hyprland-plugins": "hyprland-plugins",
|
"hyprland-plugins": "hyprland-plugins",
|
||||||
|
"music-reader": "music-reader",
|
||||||
"nix-colors": "nix-colors",
|
"nix-colors": "nix-colors",
|
||||||
"nix-ld": "nix-ld",
|
"nix-ld": "nix-ld",
|
||||||
"nix-matlab": "nix-matlab",
|
"nix-matlab": "nix-matlab",
|
||||||
"nix-topology": "nix-topology",
|
"nix-topology": "nix-topology",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixos-hardware": "nixos-hardware",
|
||||||
|
"nixpkgs": "nixpkgs_4",
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2",
|
"nixpkgs-stable": "nixpkgs-stable_2",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
"nixvim": "nixvim",
|
"nixvim": "nixvim",
|
||||||
|
"sheet-organizer": "sheet-organizer",
|
||||||
"snowfall-lib": "snowfall-lib",
|
"snowfall-lib": "snowfall-lib",
|
||||||
"sops-nix": "sops-nix",
|
"sops-nix": "sops-nix",
|
||||||
"yazi-flavors": "yazi-flavors"
|
"yazi-flavors": "yazi-flavors"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"sheet-organizer": {
|
||||||
|
"inputs": {
|
||||||
|
"crane": "crane",
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732563271,
|
||||||
|
"narHash": "sha256-YvNdoK/FvH34DZQqR4V2RoFN4q7q1QQQgV8Rvv3HqfY=",
|
||||||
|
"ref": "refs/heads/master",
|
||||||
|
"rev": "26133a692f2b218e54b98f1f21335ba43f2ee086",
|
||||||
|
"revCount": 68,
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://gitlab.julian-mutter.de/julian/sheet-organizer"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://gitlab.julian-mutter.de/julian/sheet-organizer"
|
||||||
|
}
|
||||||
|
},
|
||||||
"snowfall-lib": {
|
"snowfall-lib": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_6",
|
"flake-compat": "flake-compat_7",
|
||||||
"flake-utils-plus": "flake-utils-plus",
|
"flake-utils-plus": "flake-utils-plus",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730136121,
|
"lastModified": 1732544274,
|
||||||
"narHash": "sha256-tfVayj13Zw+zzOKrmJhnvBod7Hdb9ixBR6/4GUlyMA0=",
|
"narHash": "sha256-qvzLIxuqukl0nxpXHEh5+iw1BLeLxYOwRC0+7cFUbPo=",
|
||||||
"owner": "snowfallorg",
|
"owner": "snowfallorg",
|
||||||
"repo": "lib",
|
"repo": "lib",
|
||||||
"rev": "dd348182c1a010993e68004eada86cf0341fe2c4",
|
"rev": "cfeacd055545ab5de0ecfd41e09324dcd8fb2bbb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -931,11 +1140,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731954233,
|
"lastModified": 1732186149,
|
||||||
"narHash": "sha256-vvXx1m2Rsw7MkbKJdpcICzz4YPgZPApGKQGhNZfkhOI=",
|
"narHash": "sha256-N9JGWe/T8BC0Tss2Cv30plvZUYoiRmykP7ZdY2on2b0=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "e39947d0ee8e341fa7108bd02a33cdfa24a1360e",
|
"rev": "53c853fb1a7e4f25f68805ee25c83d5de18dc699",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -945,21 +1154,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1689347949,
|
|
||||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default-linux",
|
|
||||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default-linux",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_2": {
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
@ -974,6 +1168,21 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1689347949,
|
||||||
|
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default-linux",
|
||||||
|
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default-linux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systems_3": {
|
"systems_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
@ -989,6 +1198,51 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_6": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"treefmt-nix": {
|
"treefmt-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@ -1010,6 +1264,42 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701680307,
|
||||||
|
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701680307,
|
||||||
|
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"xdph": {
|
"xdph": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprland-protocols": [
|
"hyprland-protocols": [
|
||||||
@ -1054,11 +1344,11 @@
|
|||||||
"yazi-flavors": {
|
"yazi-flavors": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731512520,
|
"lastModified": 1732522261,
|
||||||
"narHash": "sha256-O6lYGY1DdMUTG9rrB+1R2i4KFgDEWsksp5MYbDmAvJo=",
|
"narHash": "sha256-zqbwE8SvY9nQyGt0NDxK9OlFMAJ5EHtTeEDZtpb1FuA=",
|
||||||
"owner": "yazi-rs",
|
"owner": "yazi-rs",
|
||||||
"repo": "flavors",
|
"repo": "flavors",
|
||||||
"rev": "4a3082f4e96914f2fd9c5e42714c27173526fbb3",
|
"rev": "c04be98a3fde8787da4a7b07dec65451b40ee600",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
56
flake.nix
56
flake.nix
@ -7,6 +7,10 @@
|
|||||||
|
|
||||||
nixpkgs = nixpkgs-stable;
|
nixpkgs = nixpkgs-stable;
|
||||||
|
|
||||||
|
deploy-rs.url = "github:serokell/deploy-rs";
|
||||||
|
|
||||||
|
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager/release-24.05";
|
url = "github:nix-community/home-manager/release-24.05";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
@ -17,6 +21,11 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
disko = {
|
||||||
|
url = "github:nix-community/disko";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
alacritty-theme = {
|
alacritty-theme = {
|
||||||
url = "github:alacritty/alacritty-theme";
|
url = "github:alacritty/alacritty-theme";
|
||||||
flake = false;
|
flake = false;
|
||||||
@ -54,6 +63,13 @@
|
|||||||
|
|
||||||
nix-ld.url = "github:Mic92/nix-ld";
|
nix-ld.url = "github:Mic92/nix-ld";
|
||||||
nix-ld.inputs.nixpkgs.follows = "nixpkgs";
|
nix-ld.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
|
## My projects
|
||||||
|
sheet-organizer.url = "git+https://gitlab.julian-mutter.de/julian/sheet-organizer";
|
||||||
|
sheet-organizer.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
|
music-reader.url = "git+https://gitlab.julian-mutter.de/julian/music-reader";
|
||||||
|
music-reader.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
@ -92,19 +108,35 @@
|
|||||||
permittedInsecurePackages = [ "olm-3.2.16" ];
|
permittedInsecurePackages = [ "olm-3.2.16" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
systems.modules.nixos = with inputs; [ nix-topology.nixosModules.default ];
|
systems.modules.nixos = with inputs; [
|
||||||
|
nix-topology.nixosModules.default
|
||||||
|
sops-nix.nixosModules.sops
|
||||||
|
disko.nixosModules.disko
|
||||||
|
];
|
||||||
|
systems.hosts.pianonix.modules = with inputs; [ nixos-hardware.nixosModules.raspberry-pi-4 ];
|
||||||
|
|
||||||
topology =
|
# topology =
|
||||||
with inputs;
|
# with inputs;
|
||||||
let
|
# let
|
||||||
host = self.nixosConfigurations.${builtins.head (builtins.attrNames self.nixosConfigurations)};
|
# host = self.nixosConfigurations.${builtins.head (builtins.attrNames self.nixosConfigurations)};
|
||||||
in
|
# in
|
||||||
import nix-topology {
|
# import nix-topology {
|
||||||
inherit (host) pkgs; # Only this package set must include nix-topology.overlays.default
|
# inherit (host) pkgs; # Only this package set must include nix-topology.overlays.default
|
||||||
modules = [
|
# modules = [
|
||||||
(import ./topology { inherit (host) config; })
|
# (import ./topology { inherit (host) config; })
|
||||||
{ inherit (self) nixosConfigurations; }
|
# { inherit (self) nixosConfigurations; }
|
||||||
];
|
# ];
|
||||||
|
# };
|
||||||
|
|
||||||
|
# deploy-rs node configuration
|
||||||
|
deploy.nodes.pianonix = {
|
||||||
|
hostname = "pianonix.local";
|
||||||
|
profiles.system = {
|
||||||
|
sshUser = "root";
|
||||||
|
user = "root";
|
||||||
|
path = inputs.deploy-rs.lib.aarch64-linux.activate.nixos inputs.self.nixosConfigurations.pianonix;
|
||||||
|
confirmTimeout = 90; # default: 30s; raspberrypi takes a little longer restarting services
|
||||||
};
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -43,8 +43,13 @@
|
|||||||
nix-helper.enable = true;
|
nix-helper.enable = true;
|
||||||
|
|
||||||
desktop.enable = true;
|
desktop.enable = true;
|
||||||
suites.default.enable = true;
|
|
||||||
fonts.enable = true;
|
fonts.enable = true;
|
||||||
|
|
||||||
|
suites = {
|
||||||
|
cli.enable = true;
|
||||||
|
desktop.enable = true;
|
||||||
|
development.enable = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
|
@ -39,8 +39,13 @@
|
|||||||
nix-helper.enable = true;
|
nix-helper.enable = true;
|
||||||
|
|
||||||
desktop.enable = true;
|
desktop.enable = true;
|
||||||
suites.default.enable = true;
|
|
||||||
fonts.enable = true;
|
fonts.enable = true;
|
||||||
|
|
||||||
|
suites = {
|
||||||
|
cli.enable = true;
|
||||||
|
desktop.enable = true;
|
||||||
|
development.enable = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
# Additional metadata is provided by Snowfall Lib.
|
# Additional metadata is provided by Snowfall Lib.
|
||||||
namespace, # The namespace used for your flake, defaulting to "internal" if not set.
|
namespace, # The namespace used for your flake, defaulting to "internal" if not set.
|
||||||
home, # The home architecture for this host (eg. `x86_64-linux`).
|
home,
|
||||||
target, # The Snowfall Lib target for this home (eg. `x86_64-home`).
|
target, # The Snowfall Lib target for this home (eg. `x86_64-home`).
|
||||||
format, # A normalized name for the home target (eg. `home`).
|
format, # A normalized name for the home target (eg. `home`).
|
||||||
virtual, # A boolean to determine whether this home is a virtual target using nixos-generators.
|
virtual, # A boolean to determine whether this home is a virtual target using nixos-generators.
|
||||||
@ -18,26 +18,55 @@
|
|||||||
# All other arguments come from the home home.
|
# All other arguments come from the home home.
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}@arguments:
|
||||||
{
|
{
|
||||||
home.username = "julian";
|
home.username = "julian";
|
||||||
home.homeDirectory = "/home/julian";
|
home.homeDirectory = "/home/julian";
|
||||||
|
|
||||||
# DO NOT CHANGE!!!
|
|
||||||
home.stateVersion = "23.11";
|
|
||||||
|
|
||||||
modules = {
|
modules = {
|
||||||
|
non-nixos.is-nixos = true;
|
||||||
|
|
||||||
shell = {
|
shell = {
|
||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
};
|
};
|
||||||
|
yazi.enable = true;
|
||||||
topgrade.enable = true;
|
topgrade.enable = true;
|
||||||
neovim.enable = true;
|
neovim.enable = true;
|
||||||
alacritty.enable = true;
|
wezterm.enable = true;
|
||||||
nix-helper.enable = true;
|
nix-helper.enable = true;
|
||||||
|
|
||||||
|
desktop.enable = true;
|
||||||
|
fonts.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [ ];
|
# Prevent screen from going blank (check these settings with `xset q`)
|
||||||
|
# And disable bell sound (b)
|
||||||
|
xsession.initExtra = ''
|
||||||
|
${pkgs.xorg.xset}/bin/xset s off
|
||||||
|
${pkgs.xorg.xset}/bin/xset -dpms
|
||||||
|
${pkgs.xorg.xset}/bin/xset b off
|
||||||
|
'';
|
||||||
|
|
||||||
|
services.syncthing.tray.enable = true;
|
||||||
|
services.syncthing.tray.command = "syncthingtray --wait"; # Wait for tray to become available
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
music-reader
|
||||||
|
sheet-organizer
|
||||||
|
];
|
||||||
|
|
||||||
|
# Autostart link
|
||||||
|
home.file = {
|
||||||
|
".config/autostart/sheet-organizer.desktop".source = "${pkgs.sheet-organizer}/share/applications/sheet-organizer.desktop";
|
||||||
|
".config/sheet-organizer/config.toml".text = ''
|
||||||
|
working_directory = "/home/julian/Klavier"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
# ======================== DO NOT CHANGE THIS ========================
|
||||||
|
home.stateVersion = "23.11";
|
||||||
|
# ======================== DO NOT CHANGE THIS ========================
|
||||||
}
|
}
|
||||||
|
79
modules/home/suites/cli/default.nix
Normal file
79
modules/home/suites/cli/default.nix
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
{
|
||||||
|
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
||||||
|
# as well as the libraries available from your flake's inputs.
|
||||||
|
lib,
|
||||||
|
# An instance of `pkgs` with your overlays and packages applied is also available.
|
||||||
|
pkgs,
|
||||||
|
# You also have access to your flake's inputs.
|
||||||
|
inputs,
|
||||||
|
|
||||||
|
# Additional metadata is provided by Snowfall Lib.
|
||||||
|
system, # The system architecture for this host (eg. `x86_64-linux`).
|
||||||
|
target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
|
||||||
|
format, # A normalized name for the system target (eg. `iso`).
|
||||||
|
virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
|
||||||
|
systems, # An attribute map of your defined hosts.
|
||||||
|
|
||||||
|
# All other arguments come from the module system.
|
||||||
|
config,
|
||||||
|
host,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.modules.suites.cli;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.suites.cli = {
|
||||||
|
enable = lib.mkOption { default = false; };
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
bat
|
||||||
|
du-dust # Like du tree but better
|
||||||
|
fd # better find
|
||||||
|
fdupes # find and delete duplicate files
|
||||||
|
ffmpeg
|
||||||
|
findutils # locate
|
||||||
|
fzf # Fuzzy finder
|
||||||
|
ghostscript # needed for imagemagick with pdfs
|
||||||
|
imagemagick
|
||||||
|
git
|
||||||
|
gnupg
|
||||||
|
htop
|
||||||
|
jq # Command line JSON processor
|
||||||
|
killall
|
||||||
|
languagetool # Grammar checker
|
||||||
|
lazygit # Git client
|
||||||
|
links2 # Tui web-browser
|
||||||
|
lnav # log analyzing tool
|
||||||
|
mc # Tui file browser
|
||||||
|
# nix-index
|
||||||
|
nmap
|
||||||
|
p7zip # unzip 7zip archives
|
||||||
|
parted
|
||||||
|
pciutils # lspci
|
||||||
|
poppler_utils # Pdf utils including pdfimages
|
||||||
|
libqalculate # Nice tui calculator (qalc)
|
||||||
|
ripgrep # better grep
|
||||||
|
rnr # renaming tool
|
||||||
|
sage # Maths notebooks
|
||||||
|
tealdeer # tldr
|
||||||
|
topgrade # System update
|
||||||
|
tree
|
||||||
|
unetbootin # TODO
|
||||||
|
unixtools.procps # TODO
|
||||||
|
unzip
|
||||||
|
usbutils # lsusb
|
||||||
|
wget
|
||||||
|
wireguard-tools # wg-quick
|
||||||
|
xorg.xkill
|
||||||
|
zip
|
||||||
|
|
||||||
|
## My scripts
|
||||||
|
frajul.edit-config
|
||||||
|
frajul.lntocp
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
@ -1,217 +0,0 @@
|
|||||||
{
|
|
||||||
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
|
||||||
# as well as the libraries available from your flake's inputs.
|
|
||||||
lib,
|
|
||||||
# An instance of `pkgs` with your overlays and packages applied is also available.
|
|
||||||
pkgs,
|
|
||||||
# You also have access to your flake's inputs.
|
|
||||||
inputs,
|
|
||||||
|
|
||||||
# Additional metadata is provided by Snowfall Lib.
|
|
||||||
system, # The system architecture for this host (eg. `x86_64-linux`).
|
|
||||||
target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
|
|
||||||
format, # A normalized name for the system target (eg. `iso`).
|
|
||||||
virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
|
|
||||||
systems, # An attribute map of your defined hosts.
|
|
||||||
|
|
||||||
# All other arguments come from the module system.
|
|
||||||
config,
|
|
||||||
host,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.modules.suites.default;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.modules.suites.default = {
|
|
||||||
enable = mkOption { default = false; };
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
# TODO: put this and relevant packages into desktop suite
|
|
||||||
services.blueman-applet.enable = true;
|
|
||||||
services.nextcloud-client.enable = true;
|
|
||||||
services.nextcloud-client.startInBackground = true;
|
|
||||||
services.network-manager-applet.enable = true;
|
|
||||||
|
|
||||||
services.syncthing.tray.enable = true;
|
|
||||||
services.syncthing.tray.command = "syncthingtray --wait"; # Wait for tray to become available
|
|
||||||
|
|
||||||
programs.chromium = {
|
|
||||||
enable = true;
|
|
||||||
extensions = [
|
|
||||||
# Tampermonkey
|
|
||||||
{ id = "dhdgffkkebhmkfjojejmpbldmpobfkfo"; }
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
android-tools # adb
|
|
||||||
arandr
|
|
||||||
audacity
|
|
||||||
audible-cli
|
|
||||||
bat
|
|
||||||
calibre # ebook manager and viewer
|
|
||||||
cargo
|
|
||||||
clippy
|
|
||||||
cntr # nix debugger
|
|
||||||
conda
|
|
||||||
devcontainer # development container
|
|
||||||
dbeaver-bin
|
|
||||||
devbox # run docker-commands
|
|
||||||
digikam
|
|
||||||
discord
|
|
||||||
|
|
||||||
drawio
|
|
||||||
du-dust # Like du tree but better
|
|
||||||
# dvdisaster
|
|
||||||
# element-desktop
|
|
||||||
# rocketchat-desktop
|
|
||||||
thunderbird
|
|
||||||
tdesktop # telegram
|
|
||||||
# schildichat-desktop # not updated regularly
|
|
||||||
nheko
|
|
||||||
evince # Simple pdf reader, good for focusing on document content
|
|
||||||
|
|
||||||
fd # better find
|
|
||||||
fdupes # find and delete duplicate files
|
|
||||||
ffmpeg
|
|
||||||
findutils # locate
|
|
||||||
firefox
|
|
||||||
|
|
||||||
fzf # Fuzzy finder
|
|
||||||
gcc
|
|
||||||
gcolor3 # Color picker
|
|
||||||
# geogebra
|
|
||||||
ghostscript # needed for imagemagick with pdfs
|
|
||||||
imagemagick
|
|
||||||
gimp
|
|
||||||
git
|
|
||||||
gnome.cheese
|
|
||||||
gnupg
|
|
||||||
gradle
|
|
||||||
handbrake
|
|
||||||
hexedit
|
|
||||||
htop
|
|
||||||
|
|
||||||
(texlive.combine {
|
|
||||||
# for rendering latex in inkscape
|
|
||||||
inherit (texlive)
|
|
||||||
scheme-medium
|
|
||||||
standalone
|
|
||||||
amsmath
|
|
||||||
preview
|
|
||||||
;
|
|
||||||
})
|
|
||||||
# (pkgs.inkscape-with-extensions.override {
|
|
||||||
# inkscapeExtensions = [ pkgs.inkscape-extensions.textext ];
|
|
||||||
# })
|
|
||||||
# inkscape-with-extensions
|
|
||||||
# inkscape-extensions.textext
|
|
||||||
inkscape
|
|
||||||
|
|
||||||
jdk
|
|
||||||
jq # Command line JSON processor
|
|
||||||
julia-bin
|
|
||||||
killall
|
|
||||||
kitty # Terminal
|
|
||||||
languagetool # Grammar checker
|
|
||||||
lazygit # Git client
|
|
||||||
libclang
|
|
||||||
libnotify
|
|
||||||
libreoffice
|
|
||||||
links2 # Tui web-browser
|
|
||||||
lnav # log analyzing tool
|
|
||||||
mate.engrampa
|
|
||||||
|
|
||||||
matlab # Using nix-matlab overlay defined in flake
|
|
||||||
maven
|
|
||||||
mc # Tui file browser
|
|
||||||
# nix-index
|
|
||||||
nmap
|
|
||||||
nodejs
|
|
||||||
nomacs # Image viewer
|
|
||||||
okular # Pdf reader with many features, good for commenting documents
|
|
||||||
p7zip # unzip 7zip archives
|
|
||||||
parted
|
|
||||||
pavucontrol
|
|
||||||
pciutils # lspci
|
|
||||||
pdfsam-basic # Split, merge, etc for pdfs
|
|
||||||
pkg-config # Often needed to build something
|
|
||||||
|
|
||||||
poppler_utils # Pdf utils including pdfimages
|
|
||||||
pwndbg # improved gdb (debugger)
|
|
||||||
python3
|
|
||||||
|
|
||||||
libqalculate # Nice tui calculator (qalc)
|
|
||||||
qalculate-gtk # Nice gui calculator
|
|
||||||
|
|
||||||
qpdfview
|
|
||||||
# qutebrowser
|
|
||||||
# realvnc-vnc-viewer
|
|
||||||
ripgrep # better grep
|
|
||||||
rnr # renaming tool
|
|
||||||
rpi-imager # make isos
|
|
||||||
|
|
||||||
# rustdesk
|
|
||||||
|
|
||||||
rust-analyzer
|
|
||||||
rustc
|
|
||||||
rustfmt
|
|
||||||
|
|
||||||
sage # Maths notebooks
|
|
||||||
scrcpy # Mirror android screen to pc
|
|
||||||
# shellcheck # Check bash scripts for common errors
|
|
||||||
sqlite
|
|
||||||
tealdeer # tldr
|
|
||||||
topgrade # System update
|
|
||||||
tor-browser
|
|
||||||
tree
|
|
||||||
unetbootin # TODO
|
|
||||||
unixtools.procps # TODO
|
|
||||||
unstable.path-of-building # Path of Building
|
|
||||||
unzip
|
|
||||||
usbutils # lsusb
|
|
||||||
vlc
|
|
||||||
watchexec # Run command when any file in current dir changes
|
|
||||||
wezterm # Terminal
|
|
||||||
wget
|
|
||||||
|
|
||||||
wine
|
|
||||||
winetricks
|
|
||||||
|
|
||||||
wireguard-tools # wg-quick
|
|
||||||
xclip # x11 clipboard access from terminal
|
|
||||||
xfce.mousepad # simple text editor
|
|
||||||
xorg.xkill
|
|
||||||
xournalpp # Edit pdf files
|
|
||||||
zip
|
|
||||||
zoom-us # Video conferencing
|
|
||||||
zotero # Manage papers and other sources
|
|
||||||
|
|
||||||
## My scripts
|
|
||||||
frajul.deploy-to-pianopi
|
|
||||||
frajul.edit-config
|
|
||||||
frajul.lntocp
|
|
||||||
frajul.open-messaging
|
|
||||||
frajul.xwacomcalibrate
|
|
||||||
|
|
||||||
(pkgs.writeShellScriptBin "matlab-paper" ''
|
|
||||||
matlab -desktop -sd "/home/julian/dev/phdthesis/Phase B/mainSimulation" -softwareopengl
|
|
||||||
'')
|
|
||||||
(pkgs.writeShellScriptBin "matlab-robotik" ''
|
|
||||||
matlab -desktop -sd "/home/julian/nas-sync/Studium/Vorlesungen-Master/ss24/Robotik2" -softwareopengl
|
|
||||||
'')
|
|
||||||
(pkgs.writeShellScriptBin "matlab-gram" ''
|
|
||||||
export GTK_PATH=/usr/lib/gtk-3.0
|
|
||||||
nix shell nixpkgs#gcc11 --command matlab -desktop -sd "/home/julian/dev/matlab-gram" -softwareopengl
|
|
||||||
'')
|
|
||||||
(pkgs.writeShellScriptBin "expenses-tracker" ''
|
|
||||||
java -jar /home/julian/dev/expensestracker/app/build/libs/app.jar
|
|
||||||
'')
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
97
modules/home/suites/desktop/default.nix
Normal file
97
modules/home/suites/desktop/default.nix
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
{
|
||||||
|
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
||||||
|
# as well as the libraries available from your flake's inputs.
|
||||||
|
lib,
|
||||||
|
# An instance of `pkgs` with your overlays and packages applied is also available.
|
||||||
|
pkgs,
|
||||||
|
# You also have access to your flake's inputs.
|
||||||
|
inputs,
|
||||||
|
|
||||||
|
# Additional metadata is provided by Snowfall Lib.
|
||||||
|
system, # The system architecture for this host (eg. `x86_64-linux`).
|
||||||
|
target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
|
||||||
|
format, # A normalized name for the system target (eg. `iso`).
|
||||||
|
virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
|
||||||
|
systems, # An attribute map of your defined hosts.
|
||||||
|
|
||||||
|
# All other arguments come from the module system.
|
||||||
|
config,
|
||||||
|
host,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.modules.suites.desktop;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.suites.desktop = {
|
||||||
|
enable = lib.mkOption { default = false; };
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
services.blueman-applet.enable = true;
|
||||||
|
services.nextcloud-client.enable = true;
|
||||||
|
services.nextcloud-client.startInBackground = true;
|
||||||
|
services.network-manager-applet.enable = true;
|
||||||
|
|
||||||
|
services.syncthing.tray.enable = true;
|
||||||
|
services.syncthing.tray.command = "syncthingtray --wait"; # Wait for tray to become available
|
||||||
|
|
||||||
|
programs.chromium = {
|
||||||
|
enable = true;
|
||||||
|
extensions = [
|
||||||
|
# Tampermonkey
|
||||||
|
{ id = "dhdgffkkebhmkfjojejmpbldmpobfkfo"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
arandr
|
||||||
|
calibre # ebook manager and viewer
|
||||||
|
digikam
|
||||||
|
discord
|
||||||
|
# dvdisaster
|
||||||
|
# element-desktop
|
||||||
|
# rocketchat-desktop
|
||||||
|
thunderbird
|
||||||
|
tdesktop # telegram
|
||||||
|
# schildichat-desktop # not updated regularly
|
||||||
|
nheko
|
||||||
|
evince # Simple pdf reader, good for focusing on document content
|
||||||
|
firefox
|
||||||
|
# geogebra
|
||||||
|
gnome.cheese
|
||||||
|
handbrake
|
||||||
|
kitty # Terminal
|
||||||
|
libnotify
|
||||||
|
libreoffice
|
||||||
|
mate.engrampa
|
||||||
|
nomacs # Image viewer
|
||||||
|
okular # Pdf reader with many features, good for commenting documents
|
||||||
|
pavucontrol
|
||||||
|
pdfsam-basic # Split, merge, etc for pdfs
|
||||||
|
qalculate-gtk # Nice gui calculator
|
||||||
|
qpdfview
|
||||||
|
# qutebrowser
|
||||||
|
# realvnc-vnc-viewer
|
||||||
|
rpi-imager # make isos
|
||||||
|
# rustdesk
|
||||||
|
tor-browser
|
||||||
|
unstable.path-of-building # Path of Building
|
||||||
|
# frajul.pob-dev-version # Path of Building
|
||||||
|
vlc
|
||||||
|
wezterm # Terminal
|
||||||
|
wine
|
||||||
|
winetricks
|
||||||
|
xclip # x11 clipboard access from terminal
|
||||||
|
xfce.mousepad # simple text editor
|
||||||
|
xournalpp # Edit pdf files
|
||||||
|
zoom-us # Video conferencing
|
||||||
|
zotero # Manage papers and other sources
|
||||||
|
|
||||||
|
## My scripts
|
||||||
|
frajul.open-messaging
|
||||||
|
frajul.xwacomcalibrate
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
104
modules/home/suites/development/default.nix
Normal file
104
modules/home/suites/development/default.nix
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
{
|
||||||
|
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
||||||
|
# as well as the libraries available from your flake's inputs.
|
||||||
|
lib,
|
||||||
|
# An instance of `pkgs` with your overlays and packages applied is also available.
|
||||||
|
pkgs,
|
||||||
|
# You also have access to your flake's inputs.
|
||||||
|
inputs,
|
||||||
|
|
||||||
|
# Additional metadata is provided by Snowfall Lib.
|
||||||
|
system, # The system architecture for this host (eg. `x86_64-linux`).
|
||||||
|
target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
|
||||||
|
format, # A normalized name for the system target (eg. `iso`).
|
||||||
|
virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
|
||||||
|
systems, # An attribute map of your defined hosts.
|
||||||
|
|
||||||
|
# All other arguments come from the module system.
|
||||||
|
config,
|
||||||
|
host,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.modules.suites.development;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.suites.development = {
|
||||||
|
enable = lib.mkOption { default = false; };
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
watchexec # Run command when any file in current dir changes
|
||||||
|
android-tools # adb
|
||||||
|
# shellcheck # Check bash scripts for common errors
|
||||||
|
sqlite
|
||||||
|
scrcpy # Mirror android screen to pc
|
||||||
|
cargo
|
||||||
|
clippy
|
||||||
|
cntr # nix debugger
|
||||||
|
conda
|
||||||
|
micromamba # a better, faster conda
|
||||||
|
devcontainer # development container
|
||||||
|
dbeaver-bin
|
||||||
|
devbox # dev environments using nix
|
||||||
|
distrobox # run commands inside docker containers
|
||||||
|
gcc
|
||||||
|
gradle
|
||||||
|
hexedit
|
||||||
|
unstable.zed-editor
|
||||||
|
jdk
|
||||||
|
julia-bin
|
||||||
|
(texlive.combine {
|
||||||
|
# for rendering latex in inkscape
|
||||||
|
inherit (texlive)
|
||||||
|
scheme-medium
|
||||||
|
standalone
|
||||||
|
amsmath
|
||||||
|
preview
|
||||||
|
;
|
||||||
|
})
|
||||||
|
matlab # Using nix-matlab overlay defined in flake
|
||||||
|
maven
|
||||||
|
nodejs
|
||||||
|
pkg-config # Often needed to build something
|
||||||
|
pwndbg # improved gdb (debugger)
|
||||||
|
python3
|
||||||
|
rust-analyzer
|
||||||
|
rustc
|
||||||
|
rustfmt
|
||||||
|
# (pkgs.inkscape-with-extensions.override {
|
||||||
|
# inkscapeExtensions = [ pkgs.inkscape-extensions.textext ];
|
||||||
|
# })
|
||||||
|
# inkscape-with-extensions
|
||||||
|
# inkscape-extensions.textext
|
||||||
|
inkscape
|
||||||
|
gcolor3 # Color picker
|
||||||
|
gimp
|
||||||
|
drawio
|
||||||
|
audacity
|
||||||
|
|
||||||
|
deploy-rs
|
||||||
|
sops
|
||||||
|
pandoc # markdown preview
|
||||||
|
|
||||||
|
## My scripts
|
||||||
|
frajul.deploy-to-pianopi
|
||||||
|
|
||||||
|
(pkgs.writeShellScriptBin "matlab-paper" ''
|
||||||
|
matlab -desktop -sd "/home/julian/dev/phdthesis/Phase B/mainSimulation" -softwareopengl
|
||||||
|
'')
|
||||||
|
(pkgs.writeShellScriptBin "matlab-robotik" ''
|
||||||
|
matlab -desktop -sd "/home/julian/nas-sync/Studium/Vorlesungen-Master/ss24/Robotik2" -softwareopengl
|
||||||
|
'')
|
||||||
|
(pkgs.writeShellScriptBin "matlab-gram" ''
|
||||||
|
export GTK_PATH=/usr/lib/gtk-3.0
|
||||||
|
nix shell nixpkgs#gcc11 --command matlab -desktop -sd "/home/julian/dev/matlab-gram" -softwareopengl
|
||||||
|
'')
|
||||||
|
(pkgs.writeShellScriptBin "expenses-tracker" ''
|
||||||
|
java -jar /home/julian/dev/expensestracker/app/build/libs/app.jar
|
||||||
|
'')
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
@ -24,23 +24,34 @@ let
|
|||||||
cfg = config.modules.sops;
|
cfg = config.modules.sops;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [ inputs.sops-nix.nixosModules.sops ];
|
|
||||||
|
|
||||||
options.modules.sops = { };
|
options.modules.sops = { };
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
#sops.defaultSopsFile = ../../../secrets/secrets.yaml;
|
sops.defaultSopsFile = ../../../secrets/secrets.yaml;
|
||||||
#sops.defaultSopsFormat = "yaml";
|
sops.defaultSopsFormat = "yaml";
|
||||||
#sops.age.keyFile = "/home/julian/.config/sops/age/keys.txt";
|
|
||||||
|
# Automatically generate age key from ssh key
|
||||||
|
sops.age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ];
|
||||||
|
# This is using an age key that is expected to already be in the filesystem
|
||||||
|
sops.age.keyFile = "/home/julian/.config/sops/age/keys.txt";
|
||||||
|
# Generate key if none of the above worked. With this, building will still work, just without secrets
|
||||||
|
sops.age.generateKey = true;
|
||||||
|
|
||||||
# List of defined secrets
|
# List of defined secrets
|
||||||
#sops.secrets."aspi/password" = {
|
# They all become files linked inside the "/run/secrets/" directory
|
||||||
# neededForUsers = true;
|
sops.secrets."wifi/pianonix" = { };
|
||||||
#};
|
|
||||||
|
sops.secrets."password/aspi" = {
|
||||||
|
neededForUsers = true; # necessary for setting password
|
||||||
|
};
|
||||||
|
sops.secrets."password/pianonix" = {
|
||||||
|
neededForUsers = true; # necessary for setting password
|
||||||
|
};
|
||||||
|
|
||||||
|
sops.secrets."syncthing/pianonix/key" = { };
|
||||||
|
sops.secrets."syncthing/pianonix/cert" = { };
|
||||||
|
sops.secrets."syncthing/public-keys/aspi-nix" = { };
|
||||||
|
sops.secrets."syncthing/public-keys/pianonix" = { };
|
||||||
|
|
||||||
# sops.secrets."aspi/syncthing/key" = {
|
|
||||||
# neededForUsers = true;
|
|
||||||
# };
|
|
||||||
# sops.secrets."ngrok/terraria" = { };
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -26,6 +26,7 @@ in
|
|||||||
{
|
{
|
||||||
options.modules.syncthing = {
|
options.modules.syncthing = {
|
||||||
enable = lib.mkOption { default = false; };
|
enable = lib.mkOption { default = false; };
|
||||||
|
overrideSettings = lib.mkOption { default = false; };
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
@ -33,33 +34,10 @@ in
|
|||||||
services.syncthing.user = "julian";
|
services.syncthing.user = "julian";
|
||||||
services.syncthing.openDefaultPorts = true;
|
services.syncthing.openDefaultPorts = true;
|
||||||
services.syncthing.configDir = "/home/julian/.config/syncthing";
|
services.syncthing.configDir = "/home/julian/.config/syncthing";
|
||||||
# services.syncthing.
|
|
||||||
#services.syncthing.key = config.sops.secrets."aspi/syncthing/key".path;
|
|
||||||
#services.syncthing.cert = config.sops.secrets."aspi/syncthing/cert".path;
|
|
||||||
services.syncthing.overrideDevices = false; # overrides any devices added or deleted through the WebUI
|
|
||||||
services.syncthing.overrideFolders = false; # overrides any folders added or deleted through the WebUI
|
|
||||||
# services.syncthing.settings = {
|
|
||||||
# devices = {
|
|
||||||
# "pianopi" = {
|
|
||||||
# id = "FD3XSFW-7LQSCIQ-KHZPLNQ-7VZYGKH-RJ2ZKTJ-BG67NRH-36TQIZM-CXDYWAH";
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
# folders = {
|
|
||||||
# "Documents" = {
|
|
||||||
# # Name of folder in Syncthing, also the folder ID
|
|
||||||
# path = "/home/myusername/Documents"; # Which folder to add to Syncthing
|
|
||||||
# devices = [
|
|
||||||
# "device1"
|
|
||||||
# "device2"
|
|
||||||
# ]; # Which devices to share the folder with
|
|
||||||
# };
|
|
||||||
# "Example" = {
|
|
||||||
# path = "/home/myusername/Example";
|
|
||||||
# devices = [ "device1" ];
|
|
||||||
# ignorePerms = false; # By default, Syncthing doesn't sync file permissions. This line enables it for this folder.
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
|
|
||||||
|
services.syncthing.overrideDevices = cfg.overrideSettings; # overrides any devices added or deleted through the WebUI
|
||||||
|
services.syncthing.overrideFolders = cfg.overrideSettings; # overrides any folders added or deleted through the WebUI
|
||||||
|
|
||||||
|
systemd.services.syncthing.environment.STNODEFAULTFOLDER = "true"; # Don't create default ~/Sync folder
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
5
overlays/input-flake-packages/default.nix
Normal file
5
overlays/input-flake-packages/default.nix
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{ inputs, ... }:
|
||||||
|
final: prev: {
|
||||||
|
sheet-organizer = inputs.sheet-organizer.packages.${prev.system}.default;
|
||||||
|
music-reader = inputs.music-reader.defaultPackage.${prev.system};
|
||||||
|
}
|
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
|||||||
buildInputs = with pkgs; [
|
buildInputs = with pkgs; [
|
||||||
bash
|
bash
|
||||||
hyprshot
|
hyprshot
|
||||||
zenity
|
gnome.zenity
|
||||||
];
|
];
|
||||||
|
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
@ -1,24 +1,51 @@
|
|||||||
aspi:
|
#ENC[AES256_GCM,data:NSxfTl2hTXEoGl23aQnElG+df/1YzA==,iv:+oy9oITMGzdM2muDUPjwxJqUu1Bdyregl65/0hiulZ0=,tag:VKjforpyahKj0ktIN36gNw==,type:comment]
|
||||||
syncthing:
|
wifi:
|
||||||
cert: ENC[AES256_GCM,data:AByFKHdW0/kW5LdMdAlvB8O0OBtTSolnIs1o8V94b5H/Mqyy52HwaxTLu4I5BttlK4dd43dCRploUs7LwBiilmI5SlO1RFU2MupzBlGMiun4UbXC9dFW7iDY+lfX3fwlR6uUfmkm+iW8tSAii+G8KS7eBjyq2EqJ2KzXuEBS74pDJKQ5+hlKWa3dBSCfz3o+on1lfQYqjD9Sgf5x/irEhdCsGFTRM7pnEqdwHhJ87mrv//qrGU9ZWgvOEAQc3mJClGZniF1ePAGnCa9fMu3JKXbsKzLKC2QgIa576k0pgnIK5dEyLUaUemnS2fidbRGz6rAp0tPK8Nm/pbROjkReCfPZ2IjKHX8CAG7VcZokJX8pry+NWCq2/vRnkz6tgAIZu1nykVcRTM0TGDNlXNolK1tCycx3BDRzKFQunp0FdvcN3QTrVsA1sRInZve5x3Y1XVukQjgMk/uyfvQ4ktt3io5PcVmeTWBugJaNC6WlCUwee2o7b2kJGsshk2N+FgfAWZS9bGIxi/ijC87IGZu0bSvqlg4D1bsTCfODte/l+bTW+CZ96eu/8fbcQ+S4ClDeqzzjvIjFiGxSq/KXB3RLGP8aORbdI6y6AkLdwzhb2icFGzVHo/pU3VqHGYhFHbxbpRBs8iJ+EBMoL9AZJi/wh9Hg/gWHtpfWr06nySIEjQkqzEgTzC5O3A1mltkBaHP0XXp1WxyHq2id2dehB+xFpwA8h+Yg25HXMgJowNPpU0Z9a4BNmjdQl9cMWBytGP/20wwQEc9gwweFw5/kFRV0BVtfKUHYerwNoR+yWWURhPl0eUgn3tt77vVhwsuJcKlzbu8XRe0fj/1CFV8mmR8T3zBss4K7sZiDGAWgknRUAdhBV3HincmXdwkT4HWfgT4OSKk156BJof40xJNMpkk+CXFd2M0Trb9UcQQEneldnnvvDe1rML2FFrURRwTCKekCr7Wfsij6cvfz90Qs8NqkfWiAhwsZLwlfHcQrZn1gYHepW6OY/5knB5QWUuexGgRKUQmPQsiaVOgcz8zmSBWtYhLQEXenTg==,iv:n/8CkSiZu666RcOtMXB+Fg5rU2Un77OhxD0wtwfRNYc=,tag:Gy5i2UbBpckO6beyn8gv6Q==,type:str]
|
pianonix: ENC[AES256_GCM,data:Ty1wElfVj+CU9bTbpuYIk2dA4fgFm59PkQGqvODn51Q=,iv:bLomyTlOW2Z4rPbue7Klo6Jt5lR+44AuL+dIMFgDNAE=,tag:DuH2ayeb19dkPi9xmbAu3A==,type:str]
|
||||||
key: ENC[AES256_GCM,data:81YkG2zWuYIrpC9BMm/+79Ad7gXLHqHqtxnNbUox7E/oii9nNlbR4YqQJfegkDijrV/PK+UjgeiySHfxUzH0MFnVQ4XTDVFiuQ31s1ft/TZlZmOs7JmElc2i8AbdJM31+NCLoH8nDxGOcoqfErFmf4hbRFprnamItYrDqjq/vIbtPbpjm2cTZw3qwKT1HTPpZfvM6b2xDBd9BqjaoOqwhRUVg45Z0gjKXyKqMv0d9JfpoY5lGp6x6SoSlIzM+a5CpKM3v5I1lxN6DtAlh8hO/dCJZCkXCjuIgWWhl3DVol3h6XzDeNsUvgmjhMSjMmEg4utpIMAYzDCTF5GzHyogPdrhqSejnHG1Y6GQnYqniwobabU/6tcY/6nTkLjMpSbM,iv:Nn5LpyxvsvHnxY39Bg205chZ4nhNsHbBstGcJ2Nf2mc=,tag:fslhHkp3gspRnNZNlA7fbg==,type:str]
|
password:
|
||||||
|
aspi: ENC[AES256_GCM,data:vh7eCsrz2VSn/DLLSG7p3Qn/OGWkVo4+54GpkukOwJ4G+jaE4wrIsKBGxON1uIxWLcR1LkR7g4vZc/sY1D+4JvDlvBfjzGKPkw==,iv:Jwk2THv0V3jsFbEIBJnGMlSOR89yaVKOW97fpgfAWcM=,tag:1WQMM9i3yL20hUJ+VvCTIA==,type:str]
|
||||||
|
pianonix: ENC[AES256_GCM,data:BWTSuDE2YozRKuK4PW0vhIzojTCi0qb0dChiiNvjv/D+71TsnZ8NuWlasY/2OBfv1VgID4xFWDqBvD7BgVh+/rvVnE544UzaiQ==,iv:On1J//kCuVvpPyj+NyWu7lyMzr7I/ouWGzL9xDbT+wo=,tag:RO87P4YgMjmD8TzgGJvwrw==,type:str]
|
||||||
|
syncthing:
|
||||||
|
public-keys:
|
||||||
|
aspi-nix: ENC[AES256_GCM,data:ZTykdQCyh4DMuQUCy1DSKsGNxxn1dinaqztpDdJY53pkWcW4YcWRHk94iGJQZgG1oLfr3AB2S3J6b9w2WuV3,iv:9z2ovHzq6JjRtHzNMIQtcUCinIjG/ImSGqqC7KPhpuw=,tag:No2LCjD+XXB77Su+s98MIA==,type:str]
|
||||||
|
pianonix: ENC[AES256_GCM,data:pUJPXH47VG363aIoxZwmbVe3uBoO7EO2TflK4f761C7PwD0tFNthZt9HRE6gQXAMQMF6qWzNK3CNGspSzKsE,iv:E89oz8BG5iQW/mRzdxSrYewGeVLiCrTcAF+c9ny6gPc=,tag:rLqwUmFDsaOMClR1tbE1sA==,type:str]
|
||||||
|
pianonix:
|
||||||
|
key: ENC[AES256_GCM,data:IaCXIRDMWCHj3lTKpkLg1Nd3pX4bktWg4WjZPGKgTBCLVkMi/SDtlaoNhDz+a+Vt6jYTXHS4exFnIVJ878nWSrA1sD2NHXmfsMh1kkLhub68qv0M33dBXvgX0vQ51Z1WMoti73yDUjJH8Ym5yF/SCg2+RbkVf+4pe2hSlAzwkGP6YC2rbCE5sZG31C55MkaGC6zwo2ZpZXdVhCW845SqAc11cF/OeEHb9B1FS3rd+El7rlJHrIEVQTkomNLshcspb13H0z3vNhtfu9pPkGxee8Hp/hEhFQ+waWBAg4w15yKihjHJmhzdjhDHCilvwYaceb7b5OwARuuiruQ+cJ40bdnStDpi2ouP8QJjEi7tmKWeplZ0X70PVZJFH/e/mTH5,iv:3hQMB4ka31w3chXXwjl/1IHF8ES/RobZVeugMC3ddlU=,tag:j8wwrNQUQbCEGtcriSpc4g==,type:str]
|
||||||
|
cert: ENC[AES256_GCM,data:v9LO8qpeGDDV6I+AJU5iTYKKBV6qgr1ddwLvBVEOYyvmtPNeqaatYaK6vMBCabBIhxQu2NC96pREvWu1UHbxaMWvSCT1TzrIPrcFm+gKCH6PIPhqcnQpdGa3OYn01ohThpLp8hEmVUpJ0FO/AnE1QHK0VfPqJ3S0uHLjSCBJtxLmcBWNVvlcTU/P68QIQkrYAQRAtz9aDS+JNpUKhwCJBgjpY1Thj8Lj/fpc1t0qWo3BKIL3eW5iSlUW0iEriFS0bkMr4Bi9mNqpO26l1eZ3IXFJy/7pkqhmXXW83qOaF9AFXgg41p1Kjw4G6isB/obuhR7Z4oQ/AtkSU0wxHP4mF0AWrvC7/YGlrDG9aPYUEWOexTTBHkm89PhgEa69sekbzac7mYYFi/MIdU34ks4oc8ZIChWpT+V66mbo4f+3mn7raih5SLnyEMS7ENBes9cQC7SghSpB7D8c/2+q74A5aEZHUWRhqiDEx9IggP43SiWuNnb/HyZw16RUB7xnQKPs7LzAVlLC6M7ZETUmyEDEWWOsDY8+0Li4wuD3z4WXLAD9nP43TMx4GNoafjG+0Gu05hSR8fWv8strRCtIWjzK3wMaD9VT/cbt2oqOBkJcaqIW8+lM+ktk1WsD4Kc1DQ4q5O2oMrdPOWI9xZOs7DQTFshLHuvxutN05vgEUovI1vbMOl7SIzUW8YUY9PN0ofC7zwQlEJxfOdqT0nwv9vmqikSMP6V3jXgP5OnPb4KVx8G27X0oCjN++dJgDxdkh2JiLR9JaJHNmYPtLlP7hU4NsBpRpd9ObxRlv+uIbF2o0I8PGXMo3IVnRjrFDrRyoth2UJ+YUMGCVuonoS+nZLMCNz1xwRMaZBYjSEESmxc2Ilwdu3XTzd1KF282UvumBpRwcNxvsmPhI84v/XV8TJE8Z7YxyO3RYBQHD5+OuHOHKTtlajnKpSp/m0p0QR7rrGFoDuDKp+Z81MKz8wz3/8GG+sDh0pgniUfNyrmLroLPdT6nj0brvSVWYmOIJHDHKqM+6HZok5PyS+uHlb5dzwnmrd9OmhmwPVdkP5s=,iv:X9VNz2nsN4ywu3E0c+agwZCl43I4bt6jHz0jMoMFTJQ=,tag:RZUWa4h5JoIiZaDrYgcAeg==,type:str]
|
||||||
sops:
|
sops:
|
||||||
kms: []
|
kms: []
|
||||||
gcp_kms: []
|
gcp_kms: []
|
||||||
azure_kv: []
|
azure_kv: []
|
||||||
hc_vault: []
|
hc_vault: []
|
||||||
age:
|
age:
|
||||||
- recipient: age12x3jgpq5j83rhvxmuu90z99rwnpf8ntu3m87strf856syr6alv2q379k9w
|
- recipient: age1ee5udznhadk6m7jtglu4709rep080yjyd2ukzdl8jma4mm92y3psv0slpg
|
||||||
enc: |
|
enc: |
|
||||||
-----BEGIN AGE ENCRYPTED FILE-----
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSByL0l4a0ZHcjFEQk5ETXk0
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBTY3lFZlIyRnZOMzNQdnJ2
|
||||||
dlZJWktVS2pQVjBoZkxyNlo0R3pMM2JkdTNJCk11VEs0U0xleFI3dGkrZEVwWWtz
|
Z0xQQnY1eHFYekVMV3M0UE5hK2xkbStveFRnCncwVVduSEFFQkpwME5XQzF2Z0tK
|
||||||
S1dOV1NYcEtOMFFkMWVhM3poNXhTdVkKLS0tIEp2Zk4wanp2M0pIT1Y1eDBYbW1y
|
MnhFQ3ZZMk51aGJHUmJFbHA4d1dmdkEKLS0tIHBkVEhaZEY5ZGtYcXRkZzREa0xR
|
||||||
NUNKTTA1VGhOVFRiV0RDSDJGREgzWFUKvW4A3/CPoTGb6gdrbEQN9NgXSQ+L4wXp
|
eUNsNjE2VS9MTjNtYWluUjJhYXVuTmcKq175s9vx1tPVS+voO+HSkyaT+GbjC/Z+
|
||||||
NOxR56TemX6fmSZhQU7wyxMmD1rZ64b9cIedauEWr91iYbKjhNpw2A==
|
PyKVKyqFAJCRcNP2byaFgAHjXtDFZdipt/0lbw+4UfHrZGpn+9B59Q==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2024-06-12T17:14:51Z"
|
- recipient: age1q8lc5340gz5xw2f57nglrss68wv0j0hf36py2pdtrl6ky3yrq9qqk0njr4
|
||||||
mac: ENC[AES256_GCM,data:XiTeyln5B9lpxUr903mSNBlCw9EsJwQEDVV18NMdHJ3e6Ryq+VkSVYOB60rl2E4C9KiFnh+ibU6KnSmi+bpWBKZ2KjkqxK7jhLnD3FdWFvruJKwf+SZxhd1UAKYjT7yssvQLc971ExVk18zFHRLJwPoPE8ukU9cixlA5PjDUbbY=,iv:w1t+4noBUhirZCcp4FgNQw6Ip+P58OW7HgR39vcOjoY=,tag:bZWznsdm3edevNyZSeQLgQ==,type:str]
|
enc: |
|
||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSByRmxCNUE4MTdZNWlOcmxX
|
||||||
|
RmhDS2NpQ0hoWG83SDlIeVhXaFdxNE4yTUVzCkRxS3M5aU5mdWZkYnpNeC9YR3BX
|
||||||
|
N1NEdzlyTm9YT3NQSnowWTZUc1FvYWsKLS0tICs2OVo2djNjUW0yOG41ZTJQeFFB
|
||||||
|
djFENU5USG1QSnRVdlErN1h5bXJhYzQKPDvAHIMR/vT47zbeK3NsS+jSl4HSFRIA
|
||||||
|
NbSKwTbEGn963metTh4HJItdWBAOyiCc3l1Ye49ms9JhYM8n4wHLRQ==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
- recipient: age1hsmfz8fjxu83sax9lr487h8xr6cyge0apdq4zpge4c8jpcjj2cksj825ct
|
||||||
|
enc: |
|
||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBVeHJ3NmMzaTh0Zm13Vm1r
|
||||||
|
RmNtMi9FYmJGUmxXeEppM3Fnazl1NTl3ajJjCjFrbXM4WGdOV05qckhkbjlSODZR
|
||||||
|
a0VuakllVTdOc2Uxd3BqRmtsN3NJdHcKLS0tIHRRMXFEcWNZOFE4dFJycGdGTzdP
|
||||||
|
WittUTFFNU5kUWdGcncwdWRQSi9STTgK3GuwolsItCEt3Dh5Lycb8TjfaHTuV/JB
|
||||||
|
P2KSuVsbgjYuCJSknYmSZ+9gdTYC8cVqDnKo7HYFNrCDHZ0P4QwGSg==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
lastmodified: "2024-11-25T10:20:02Z"
|
||||||
|
mac: ENC[AES256_GCM,data:5bw+S6T99ZxY9jWtlfShtQLwgl5OusHU1tXQ88iVW3EmWAiGLEr8/45S0DtQfjz9rmaEpMwa0ZC7kyXgubE7RopxirG7p5w6h/S0G8nJk0SPPKL/mvTL0cfdeOEGSNfVZNcScCVXZ/if3TZzVZQ+dsNkUWXN7bDYqrJO3dfVk30=,iv:1xm9L708K1Q6WzfZKNlJavLK24lsoBzU1qTRLg9APjs=,tag:GWwNBSiNl9EUYOt1Vn10/g==,type:str]
|
||||||
pgp: []
|
pgp: []
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.8.1
|
version: 3.8.1
|
||||||
|
172
systems/aarch64-linux/pianonix/default.nix
Normal file
172
systems/aarch64-linux/pianonix/default.nix
Normal file
@ -0,0 +1,172 @@
|
|||||||
|
# Edit this configuration file to define what should be installed on
|
||||||
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
|
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [ ./hardware-configuration.nix ];
|
||||||
|
|
||||||
|
# disko.devices.disk.main.device = "/dev/mmcblk1";
|
||||||
|
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
# networking.wireless.enable = true;
|
||||||
|
# networking.wireless.environmentFile = config.sops.secrets."wifi/pianonix".path;
|
||||||
|
# networking.wireless.networks = {
|
||||||
|
# "@SSID@".psk = "@PSK@";
|
||||||
|
# };
|
||||||
|
networking.hostName = "pianonix"; # Define your hostname.
|
||||||
|
|
||||||
|
# Set your time zone.
|
||||||
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
|
modules = {
|
||||||
|
nix-settings.enable = true;
|
||||||
|
xserver-defaults.enable = true;
|
||||||
|
keymap.enable = true;
|
||||||
|
builder.enable = false;
|
||||||
|
# system.boot-efi.enable = true;
|
||||||
|
sound.enable = true;
|
||||||
|
|
||||||
|
locales.enable = true;
|
||||||
|
pcmanfm.enable = true;
|
||||||
|
|
||||||
|
# i3.enable = true;
|
||||||
|
# gdm.enable = true;
|
||||||
|
redshift.enable = true;
|
||||||
|
|
||||||
|
# wayland.enable = true;
|
||||||
|
# hyprland.enable = true;
|
||||||
|
# tuigreet.enable = true;
|
||||||
|
|
||||||
|
# virtualbox.enable = true;
|
||||||
|
users-julian.enable = true;
|
||||||
|
syncthing = {
|
||||||
|
enable = true;
|
||||||
|
overrideSettings = true;
|
||||||
|
};
|
||||||
|
# xdg-portal.enable = true;
|
||||||
|
polkit.enable = true;
|
||||||
|
keyring.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
users.mutableUsers = false;
|
||||||
|
users.users.julian.hashedPasswordFile = config.sops.secrets."password/pianonix".path;
|
||||||
|
|
||||||
|
# Enable the Desktop Environment.
|
||||||
|
# services.xserver.displayManager.lightdm.enable = true;
|
||||||
|
services.displayManager.autoLogin = {
|
||||||
|
enable = true;
|
||||||
|
user = "julian";
|
||||||
|
};
|
||||||
|
|
||||||
|
boot.loader.timeout = 1; # Set boot loader timeout to 1s
|
||||||
|
|
||||||
|
programs.dconf.enable = true;
|
||||||
|
# De-facto disable network manager, which is enabled by gnome
|
||||||
|
# networking.networkmanager.unmanaged = [ "*" ];
|
||||||
|
services.xserver.desktopManager = {
|
||||||
|
xfce = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.xserver.xautolock.enable = false;
|
||||||
|
services.xserver.desktopManager.xfce.enableScreensaver = false;
|
||||||
|
|
||||||
|
# xdg.portal.lxqt.enable = true;
|
||||||
|
|
||||||
|
services.openssh = {
|
||||||
|
enable = true;
|
||||||
|
# require public key authentication for better security
|
||||||
|
settings.PasswordAuthentication = false;
|
||||||
|
settings.KbdInteractiveAuthentication = false;
|
||||||
|
settings.PermitRootLogin = "yes";
|
||||||
|
};
|
||||||
|
users.users."root".openssh.authorizedKeys.keys = [
|
||||||
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDVk/m4ydcYXzHxTWeNw2MlwxKU+JirTVOeHsYR4wdTokwYyNWZ3/zPcU4+XekSRatwJW1LJYrZ1Y5IJkobzgnOvYVI7SXZ1Tbzb1kAcnChSt+Dp/pKdMPZ8yY3PTFZh+R5F3rWFA/YZqTRhh0vuxPIVbLl7zOPExWwYGn9crkZaYZvKHVvgE5660hXo9pxbUKsSs+DIy/AE7gfKiZLusY95nk9T/jZ7Vmhl0UsF0RiDsfxgE664/vEKe8b+82kKCDt5nJVe8THSrjaw4+NUhef6R8UoUO1/Pn4TKq3Gil3Z36wPEPdkw2lYzX+d1EFyaC3hZJedSUfdFliPOejIbNvvhPBBD1wAGxxyuJZB5KLwWN7/efwCgw45buLbVfUuwwug7K7GK84A3yzqClbZKKv8rYdO04UG64A+Taq2LeyxQIDjygTgGk/1j/0Neb1RO0FbjlbTeNMZ54P+u7BTEcikJCsbFeseWDtYzupQtLt96KMbcdRgHy0CTGqFHE+my8= julian@julian-aspi"
|
||||||
|
];
|
||||||
|
|
||||||
|
# Do not alway generate man-cache, making builds much faster
|
||||||
|
documentation.man.generateCaches = false;
|
||||||
|
|
||||||
|
# MDNS on local network
|
||||||
|
services.avahi = {
|
||||||
|
enable = true;
|
||||||
|
nssmdns4 = true;
|
||||||
|
publish.enable = true;
|
||||||
|
publish.addresses = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.syncthing.key = config.sops.secrets."syncthing/pianonix/key".path;
|
||||||
|
services.syncthing.cert = config.sops.secrets."syncthing/pianonix/cert".path;
|
||||||
|
services.syncthing.settings = {
|
||||||
|
devices = {
|
||||||
|
"aspi-nix" = {
|
||||||
|
id = "DM5QRYU-ILJ4XYB-4V6NZDG-RAMVOND-3RSDSYR-52TW6RW-3XIU333-T7FNAA3";
|
||||||
|
};
|
||||||
|
"pianonix" = {
|
||||||
|
id = "FD3XSFW-7LQSCIQ-KHZPLNQ-7VZYGKH-RJ2ZKTJ-BG67NRH-36TQIZM-CXDYWAH";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
folders = {
|
||||||
|
"Klavier" = {
|
||||||
|
path = "/home/julian/Klavier";
|
||||||
|
id = "flc3m-q4gp2";
|
||||||
|
devices = [
|
||||||
|
"aspi-nix"
|
||||||
|
"pianonix"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Packages needed as root
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
vim
|
||||||
|
htop
|
||||||
|
mc
|
||||||
|
];
|
||||||
|
|
||||||
|
# VNC server
|
||||||
|
# services.x2goserver.enable = true;
|
||||||
|
|
||||||
|
# networking.firewall.enable = false;
|
||||||
|
|
||||||
|
# networking.firewall.allowedTCPPorts = [
|
||||||
|
# 8000
|
||||||
|
# 5901
|
||||||
|
# ];
|
||||||
|
|
||||||
|
# Disable the GNOME3/GDM auto-suspend feature that cannot be disabled in GUI!
|
||||||
|
# If no user is logged in, the machine will power down after 20 minutes.
|
||||||
|
systemd.targets.sleep.enable = false;
|
||||||
|
systemd.targets.suspend.enable = false;
|
||||||
|
systemd.targets.hibernate.enable = false;
|
||||||
|
systemd.targets.hybrid-sleep.enable = false;
|
||||||
|
|
||||||
|
## Raspberry pi specific config
|
||||||
|
hardware.raspberry-pi."4" = {
|
||||||
|
fkms-3d.enable = true;
|
||||||
|
touch-ft5406.enable = true;
|
||||||
|
};
|
||||||
|
# Prevent host becoming unreachable on wifi after some time (for raspberry pi)
|
||||||
|
networking.networkmanager.wifi.powersave = false;
|
||||||
|
# Enable audio devices on raspberry pi
|
||||||
|
# boot.kernelParams = [
|
||||||
|
# "snd_bcm2835.enable_hdmi=1"
|
||||||
|
# "snd_bcm2835.enable_headphones=1"
|
||||||
|
# ];
|
||||||
|
# boot.loader.raspberryPi.firmwareConfig = ''
|
||||||
|
# dtparam=audio=on
|
||||||
|
# '';
|
||||||
|
|
||||||
|
# ======================== DO NOT CHANGE THIS ========================
|
||||||
|
system.stateVersion = "22.11";
|
||||||
|
# ======================== DO NOT CHANGE THIS ========================
|
||||||
|
}
|
36
systems/aarch64-linux/pianonix/hardware-configuration.nix
Normal file
36
systems/aarch64-linux/pianonix/hardware-configuration.nix
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "xhci_pci" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.end0.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlan0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
|
||||||
|
}
|
@ -56,12 +56,18 @@
|
|||||||
|
|
||||||
virtualbox.enable = true;
|
virtualbox.enable = true;
|
||||||
users-julian.enable = true;
|
users-julian.enable = true;
|
||||||
syncthing.enable = true;
|
syncthing = {
|
||||||
|
enable = true;
|
||||||
|
overrideSettings = false;
|
||||||
|
};
|
||||||
xdg-portal.enable = true;
|
xdg-portal.enable = true;
|
||||||
polkit.enable = true;
|
polkit.enable = true;
|
||||||
keyring.enable = true;
|
keyring.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
users.mutableUsers = false;
|
||||||
|
users.users.julian.hashedPasswordFile = config.sops.secrets."password/aspi".path;
|
||||||
|
|
||||||
services.blueman.enable = true;
|
services.blueman.enable = true;
|
||||||
services.upower.enable = true;
|
services.upower.enable = true;
|
||||||
|
|
||||||
@ -89,6 +95,15 @@
|
|||||||
|
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
|
|
||||||
|
# Do not alway generate man-cache, making builds much faster
|
||||||
|
documentation.man.generateCaches = false;
|
||||||
|
|
||||||
|
# MDNS on local network
|
||||||
|
services.avahi = {
|
||||||
|
enable = true;
|
||||||
|
nssmdns4 = true;
|
||||||
|
};
|
||||||
|
|
||||||
# Packages needed as root
|
# Packages needed as root
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
vim
|
vim
|
||||||
|
@ -1,137 +0,0 @@
|
|||||||
# Edit this configuration file to define what should be installed on
|
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
|
||||||
|
|
||||||
{
|
|
||||||
lib,
|
|
||||||
inputs,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
imports = [ ./hardware-configuration.nix ];
|
|
||||||
|
|
||||||
# Bootloader
|
|
||||||
# Use this for simple nix boot menu, if no dual boot required
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
|
||||||
boot.loader.efi.efiSysMountPoint = "/boot/efi";
|
|
||||||
|
|
||||||
networking.networkmanager.enable = true;
|
|
||||||
networking.hostName = "pianonix"; # Define your hostname.
|
|
||||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
|
||||||
|
|
||||||
# Set your time zone.
|
|
||||||
time.timeZone = "Europe/Berlin";
|
|
||||||
|
|
||||||
# Set location used by redshift
|
|
||||||
location.provider = "manual";
|
|
||||||
location.latitude = 47.92;
|
|
||||||
location.longitude = 10.12;
|
|
||||||
|
|
||||||
modules = {
|
|
||||||
locales.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
nix.settings.auto-optimise-store = true;
|
|
||||||
nix.settings.experimental-features = [
|
|
||||||
"nix-command"
|
|
||||||
"flakes"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Setup binary caches
|
|
||||||
nix.settings = {
|
|
||||||
substituters = [
|
|
||||||
"https://nix-community.cachix.org"
|
|
||||||
"https://cache.nixos.org/"
|
|
||||||
];
|
|
||||||
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
# Enable the X11 windowing system.
|
|
||||||
services.xserver.enable = true;
|
|
||||||
hardware.opengl.enable = true;
|
|
||||||
|
|
||||||
nix.gc = {
|
|
||||||
automatic = true;
|
|
||||||
dates = "weekly";
|
|
||||||
options = "--delete-older-than 30d";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Enable the XFCE Desktop Environment.
|
|
||||||
services.xserver.displayManager.lightdm.enable = true;
|
|
||||||
services.xserver.desktopManager = {
|
|
||||||
xterm.enable = false;
|
|
||||||
xfce = {
|
|
||||||
enable = true;
|
|
||||||
noDesktop = true;
|
|
||||||
enableXfwm = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Configure keymap in X11
|
|
||||||
services.xserver = {
|
|
||||||
xkb.layout = "de";
|
|
||||||
xkb.variant = "";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Configure console keymap
|
|
||||||
console.keyMap = "de";
|
|
||||||
|
|
||||||
# Enable sound with pipewire.
|
|
||||||
sound.enable = true;
|
|
||||||
hardware.pulseaudio.enable = false;
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
services.pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
alsa.support32Bit = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
|
||||||
users.users.julian = {
|
|
||||||
isNormalUser = true;
|
|
||||||
description = "Julian";
|
|
||||||
uid = 1000;
|
|
||||||
group = "julian";
|
|
||||||
extraGroups = [
|
|
||||||
"networkmanager"
|
|
||||||
"wheel"
|
|
||||||
"docker"
|
|
||||||
];
|
|
||||||
packages = with pkgs; [ ]; # Using home-manager instead
|
|
||||||
};
|
|
||||||
users.groups.julian = {
|
|
||||||
gid = 1000;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.nix-ld.enable = true;
|
|
||||||
|
|
||||||
# List services that you want to enable:
|
|
||||||
services.openssh.enable = false;
|
|
||||||
|
|
||||||
services.syncthing.enable = true;
|
|
||||||
services.syncthing.user = "julian";
|
|
||||||
services.syncthing.group = "julian";
|
|
||||||
|
|
||||||
services.redshift.enable = true;
|
|
||||||
|
|
||||||
services.gnome.gnome-keyring.enable = true;
|
|
||||||
|
|
||||||
# Packages needed as root
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
vim
|
|
||||||
htop
|
|
||||||
mc
|
|
||||||
];
|
|
||||||
|
|
||||||
# This value determines the NixOS release from which the default
|
|
||||||
# settings for stateful data, like file locations and database versions
|
|
||||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
|
||||||
# this value at the release version of the first install of this system.
|
|
||||||
# Before changing this value read the documentation for this option
|
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
|
||||||
system.stateVersion = "22.11"; # Did you read the comment?
|
|
||||||
}
|
|
@ -1,80 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
{
|
|
||||||
|
|
||||||
# TODO: This has to adapted yet !!!
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [
|
|
||||||
"vmd"
|
|
||||||
"xhci_pci"
|
|
||||||
"ahci"
|
|
||||||
"nvme"
|
|
||||||
"usb_storage"
|
|
||||||
"usbhid"
|
|
||||||
"sd_mod"
|
|
||||||
];
|
|
||||||
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
|
||||||
boot.extraModulePackages = [ ];
|
|
||||||
|
|
||||||
boot.initrd.luks.devices = {
|
|
||||||
root = {
|
|
||||||
device = "/dev/disk/by-uuid/a4dc9a2c-725b-4252-8fbb-093a271c31ba";
|
|
||||||
preLVM = true;
|
|
||||||
allowDiscards = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "/dev/disk/by-uuid/bbc45be3-75f5-40c5-8427-2a425de8422c";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [
|
|
||||||
"subvol=root"
|
|
||||||
"compress=zstd"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/home" = {
|
|
||||||
device = "/dev/disk/by-uuid/bbc45be3-75f5-40c5-8427-2a425de8422c";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [
|
|
||||||
"subvol=home"
|
|
||||||
"compress=zstd"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/nix" = {
|
|
||||||
device = "/dev/disk/by-uuid/bbc45be3-75f5-40c5-8427-2a425de8422c";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [
|
|
||||||
"subvol=nix"
|
|
||||||
"compress=zstd"
|
|
||||||
"noatime"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-uuid/7040-F37C";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [ { device = "/dev/disk/by-uuid/26140b4a-0579-406d-a484-35aa31b32e80"; } ];
|
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
|
||||||
networking.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user