Compare commits
50 Commits
attic
...
cc7923c1da
| Author | SHA1 | Date | |
|---|---|---|---|
| cc7923c1da | |||
| da60eaa936 | |||
| c551e8f86e | |||
| de5b56d1b1 | |||
| cbb7f3c7a7 | |||
| d0b5b42dca | |||
| 7ea2a79aca | |||
| 182198230a | |||
| 36be01d80e | |||
| 148597d593 | |||
| 087f015340 | |||
| ab7d28ac0f | |||
| a913e4f5c7 | |||
| b31bcae064 | |||
| 2146717898 | |||
| 584489c853 | |||
| a3ead883fe | |||
| 86b80e887c | |||
| 178f3b9c31 | |||
| 425f502bba | |||
| 077a709f65 | |||
| 989aaa37da | |||
| 02a3702e8e | |||
| 2905839509 | |||
| df0062f89b | |||
| b13a985d87 | |||
| dc1a34de65 | |||
| 8010658111 | |||
| ef03e80d2c | |||
| 3788f7027e | |||
| 56f8f48e2b | |||
| 69484833c8 | |||
| c52bd6ae85 | |||
| ca6fd41f35 | |||
| f0841fdd0d | |||
| d5a2f4026a | |||
| 8684c3b92c | |||
| a44b435a5e | |||
| 24d6a52f4f | |||
| e7c17a948a | |||
| fbeed753e9 | |||
| 89eb11f635 | |||
| 31f362aa45 | |||
| 2360bd01e9 | |||
| bdeba55f0f | |||
| af9db3867e | |||
| 550da5a27c | |||
| 0cb3d69fd4 | |||
| 1158dad1f1 | |||
| f15efb661e |
@@ -4,26 +4,14 @@ on: [push]
|
||||
|
||||
jobs:
|
||||
|
||||
build-sydpc:
|
||||
build:
|
||||
runs-on: nixos
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v4
|
||||
- name: build sydpc
|
||||
run: nix build -L .#nixosConfigurations.sydpc.config.system.build.toplevel
|
||||
|
||||
build-fruitbook:
|
||||
runs-on: nixos
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v4
|
||||
- name: build fruitbook
|
||||
run: nix build -L .#nixosConfigurations.fruitbook.config.system.build.toplevel
|
||||
|
||||
build-deertopia:
|
||||
runs-on: nixos
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v4
|
||||
- name: build deertopia
|
||||
run: nix build -L .#nixosConfigurations.deertopia.config.system.build.toplevel
|
||||
|
||||
207
flake.lock
generated
207
flake.lock
generated
@@ -21,28 +21,28 @@
|
||||
"base16-fish": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1754405784,
|
||||
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
|
||||
"lastModified": 1765809053,
|
||||
"narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=",
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-helix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1752979451,
|
||||
"narHash": "sha256-0CQM+FkYy0fOO/sMGhOoNL80ftsAzYCg9VhIrodqusM=",
|
||||
"lastModified": 1760703920,
|
||||
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"rev": "27cf1e66e50abc622fb76a3019012dc07c678fac",
|
||||
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -129,11 +129,11 @@
|
||||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1758112371,
|
||||
"narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
|
||||
"lastModified": 1764873433,
|
||||
"narHash": "sha256-1XPewtGMi+9wN9Ispoluxunw/RwozuTRVuuQOmxzt+A=",
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
|
||||
"rev": "f7ffd917ac0d253dbd6a3bf3da06888f57c69f92",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -149,7 +149,7 @@
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"revCount": 69,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz?rev=ff81ac966bb2cae68946d5ed5fc4994f96d0ffec&revCount=69"
|
||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
@@ -161,11 +161,11 @@
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754091436,
|
||||
"narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=",
|
||||
"lastModified": 1772408722,
|
||||
"narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd",
|
||||
"rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -203,11 +203,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1756770412,
|
||||
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||
"lastModified": 1767609335,
|
||||
"narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||
"rev": "250481aafeb741edfe23d29195671c19b36b6dca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -287,11 +287,11 @@
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"host": "gitlab.gnome.org",
|
||||
"lastModified": 1762869044,
|
||||
"narHash": "sha256-nwm/GJ2Syigf7VccLAZ66mFC8mZJFqpJmIxSGKl7+Ds=",
|
||||
"lastModified": 1767737596,
|
||||
"narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=",
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "680e3d195a92203f28d4bf8c6e8bb537cc3ed4ad",
|
||||
"rev": "ef02db02bf0ff342734d525b5767814770d85b49",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
@@ -307,11 +307,11 @@
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768325819,
|
||||
"narHash": "sha256-mBKqOJkxCRwEhIXfq93WTcDXsBlJ/f1Dfv9thJxrDPs=",
|
||||
"lastModified": 1773608492,
|
||||
"narHash": "sha256-QZteyExJYSQzgxqdsesDPbQgjctGG7iKV/6ooyQPITk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "b1fa714d6cd656e3105d1965637be6ab7541d7d7",
|
||||
"rev": "9a40ec3b78fc688d0908485887d355caa5666d18",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -345,11 +345,11 @@
|
||||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768306584,
|
||||
"narHash": "sha256-GWLONqOKcsWKFYqoEIFbIv6Ti/xoSvsYC9LzZzB1oj4=",
|
||||
"lastModified": 1772698812,
|
||||
"narHash": "sha256-7+K/VaZ7TXUeUGSYshg8wC3UsRZHB+M4x6r38Q1B79c=",
|
||||
"owner": "sodiboo",
|
||||
"repo": "niri-flake",
|
||||
"rev": "1b8c8ba473cf336d74ffb05ee453c8fe6a05bbbc",
|
||||
"rev": "5641625ef950f024e3e0e3f38bb91f876290c0be",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -378,11 +378,11 @@
|
||||
"niri-unstable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1768196703,
|
||||
"narHash": "sha256-mttBQdVnVFO3mn+M+oqCsZZOtS2HvXYy+VaHxb8YuMw=",
|
||||
"lastModified": 1772207631,
|
||||
"narHash": "sha256-Jkkg+KqshFO3CbTszVVpkKN2AOObYz+wMsM3ONo1z5g=",
|
||||
"owner": "YaLTeR",
|
||||
"repo": "niri",
|
||||
"rev": "3672e79369d72297abda8878245ea4ec327062c6",
|
||||
"rev": "e708f546153f74acf33eb183b3b2992587a701e5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -423,11 +423,11 @@
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764576281,
|
||||
"narHash": "sha256-f6vfwmIb9C3brI4/KJ9MFUDWt6FsKQ0dbMO6AuFc7E0=",
|
||||
"lastModified": 1772813986,
|
||||
"narHash": "sha256-x0fD+LL+O99p36c2UnjnHvVq4/7TvGH/8G5lTNIJBCo=",
|
||||
"owner": "KaylorBen",
|
||||
"repo": "nixcord",
|
||||
"rev": "c8f47894134a4984acd319e66c4384eb1ff886e2",
|
||||
"rev": "e433a2919eb9b3a8c85ab3017c08685816e63a66",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -436,6 +436,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1773533765,
|
||||
"narHash": "sha256-qonGfS2lzCgCl59Zl63jF6dIRRpvW3AJooBGMaXjHiY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "f8e82243fd601afb9f59ad230958bd073795cbfe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1741402956,
|
||||
@@ -454,11 +469,11 @@
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1753579242,
|
||||
"narHash": "sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA=",
|
||||
"lastModified": 1772328832,
|
||||
"narHash": "sha256-e+/T/pmEkLP6BHhYjx6GmwP5ivonQQn0bJdH9YrRB+Q=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "0f36c44e01a6129be94e3ade315a5883f0228a6e",
|
||||
"rev": "c185c7a5e5dd8f9add5b2f8ebeff00888b070742",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -485,11 +500,11 @@
|
||||
},
|
||||
"nixpkgs-stable_2": {
|
||||
"locked": {
|
||||
"lastModified": 1768242861,
|
||||
"narHash": "sha256-F4IIxa5xDHjtrmMcayM8lHctUq1oGltfBQu2+oqDWP4=",
|
||||
"lastModified": 1772598333,
|
||||
"narHash": "sha256-YaHht/C35INEX3DeJQNWjNaTcPjYmBwwjFJ2jdtr+5U=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "1327e798cb055f96f92685df444e9a2c326ab5ed",
|
||||
"rev": "fabb8c9deee281e50b1065002c9828f2cf7b2239",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -500,22 +515,6 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_10": {
|
||||
"locked": {
|
||||
"lastModified": 1750386251,
|
||||
"narHash": "sha256-1ovgdmuDYVo5OUC5NzdF+V4zx2uT8RtsgZahxidBTyw=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "076e8c6678d8c54204abcb4b1b14c366835a58bb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"locked": {
|
||||
"lastModified": 1743568003,
|
||||
"narHash": "sha256-ZID5T65E8ruHqWRcdvZLsczWDOAWIE7om+vQOREwiX0=",
|
||||
@@ -549,11 +548,11 @@
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1767892417,
|
||||
"narHash": "sha256-dhhvQY67aboBk8b0/u0XB6vwHdgbROZT3fJAjyNh5Ww=",
|
||||
"lastModified": 1773389992,
|
||||
"narHash": "sha256-wvfdLLWJ2I9oEpDd9PfMA8osfIZicoQ5MT1jIwNs9Tk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba",
|
||||
"rev": "c06b4ae3d6599a672a6210b7021d699c351eebda",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -565,11 +564,11 @@
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1768127708,
|
||||
"narHash": "sha256-1Sm77VfZh3mU0F5OqKABNLWxOuDeHIlcFjsXeeiPazs=",
|
||||
"lastModified": 1772624091,
|
||||
"narHash": "sha256-QKyJ0QGWBn6r0invrMAK8dmJoBYWoOWy7lN+UHzW1jc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ffbc9f8cbaacfb331b6017d5a5abb21a492c9a38",
|
||||
"rev": "80bdc1e5ce51f56b19791b52b2901187931f5353",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -581,32 +580,32 @@
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1754028485,
|
||||
"narHash": "sha256-IiiXB3BDTi6UqzAZcf2S797hWEPCRZOwyNThJIYhUfk=",
|
||||
"lastModified": 1772465433,
|
||||
"narHash": "sha256-ywy9troNEfpgh0Ee+zaV1UTgU8kYBVKtvPSxh6clYGU=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "59e69648d345d6e8fef86158c555730fa12af9de",
|
||||
"rev": "c581273b8d5bdf1c6ce7e0a54da9841e6a763913",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-25.05",
|
||||
"ref": "nixos-25.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1768178648,
|
||||
"narHash": "sha256-kz/F6mhESPvU1diB7tOM3nLcBfQe7GU7GQCymRlTi/s=",
|
||||
"owner": "NixOS",
|
||||
"lastModified": 1773700673,
|
||||
"narHash": "sha256-RLidgpn3mN3cVkIiiYehcmM2ImBnPudwISFLy71zN0o=",
|
||||
"owner": "msyds",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3fbab70c6e69c87ea2b6e48aa6629da2aa6a23b0",
|
||||
"rev": "2595b5f0592534492bce3cb61c2c9bf5ba03ffbe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"owner": "msyds",
|
||||
"ref": "fix-bepasty",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -629,11 +628,11 @@
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1762977756,
|
||||
"narHash": "sha256-4PqRErxfe+2toFJFgcRKZ0UI9NSIOJa+7RXVtBhy4KE=",
|
||||
"lastModified": 1767767207,
|
||||
"narHash": "sha256-Mj3d3PfwltLmukFal5i3fFt27L6NiKXdBezC1EBuZs4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c5ae371f1a6a7fd27823bc500d9390b38c05fa55",
|
||||
"rev": "5912c1772a44e31bf1c63c0390b90501e5026886",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -693,11 +692,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1758998580,
|
||||
"narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
|
||||
"lastModified": 1767810917,
|
||||
"narHash": "sha256-ZKqhk772+v/bujjhla9VABwcvz+hB2IaRyeLT6CFnT0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
|
||||
"rev": "dead29c804adc928d3a69dfe7f9f12d0eec1f1a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -716,6 +715,7 @@
|
||||
"niri": "niri",
|
||||
"nixarr": "nixarr",
|
||||
"nixcord": "nixcord",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"nur": "nur",
|
||||
"sops-nix": "sops-nix",
|
||||
@@ -763,11 +763,11 @@
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764550443,
|
||||
"narHash": "sha256-ArO2V1YEHmEILilTj4KPtqF4gqc1q2HBrrrmygQ/UyU=",
|
||||
"lastModified": 1772296853,
|
||||
"narHash": "sha256-pAtzPsgHRKw/2Kv8HgAjSJg450FDldHPWsP3AKG/Xj0=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "794b6e1fa75177ebfeb32967f135858a1ab1ba15",
|
||||
"rev": "c4b8e80a1020e09a1f081ad0f98ce804a6e85acf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -797,20 +797,23 @@
|
||||
},
|
||||
"sydpkgs": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767975357,
|
||||
"narHash": "sha256-MDVh3/aVhkD1bh/r8c0gs9DL4e78CrUbUxOZHWlCwLM=",
|
||||
"owner": "msyds",
|
||||
"repo": "sydpkgs",
|
||||
"rev": "233479ab277d47b1dbda202eafca50e61c659151",
|
||||
"type": "github"
|
||||
"lastModified": 1773275674,
|
||||
"narHash": "sha256-kULSjFWDoDatz31aIses5q51ESUi0ASUc3MKmBYLnRY=",
|
||||
"ref": "fcitx5-toki-pona",
|
||||
"rev": "03f6a67a0a3b3c00ff4566147eddb0123cfe3d14",
|
||||
"revCount": 38,
|
||||
"type": "git",
|
||||
"url": "https://git.deertopia.net/msyds/sydpkgs"
|
||||
},
|
||||
"original": {
|
||||
"owner": "msyds",
|
||||
"repo": "sydpkgs",
|
||||
"type": "github"
|
||||
"ref": "fcitx5-toki-pona",
|
||||
"type": "git",
|
||||
"url": "https://git.deertopia.net/msyds/sydpkgs"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
@@ -861,7 +864,7 @@
|
||||
"tf2-nix": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": "nixpkgs_11"
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761467191,
|
||||
@@ -913,11 +916,11 @@
|
||||
"tinted-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757716333,
|
||||
"narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
|
||||
"lastModified": 1767710407,
|
||||
"narHash": "sha256-+W1EB79Jl0/gm4JqmO0Nuc5C7hRdp4vfsV/VdzI+des=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
|
||||
"rev": "2800e2b8ac90f678d7e4acebe4fa253f602e05b2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -929,11 +932,11 @@
|
||||
"tinted-tmux": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757811970,
|
||||
"narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
|
||||
"lastModified": 1767489635,
|
||||
"narHash": "sha256-e6nnFnWXKBCJjCv4QG4bbcouJ6y3yeT70V9MofL32lU=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
|
||||
"rev": "3c32729ccae99be44fe8a125d20be06f8d7d8184",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -945,11 +948,11 @@
|
||||
"tinted-zed": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757811247,
|
||||
"narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
|
||||
"lastModified": 1767488740,
|
||||
"narHash": "sha256-wVOj0qyil8m+ouSsVZcNjl5ZR+1GdOOAooAatQXHbuU=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
|
||||
"rev": "11abb0b282ad3786a2aae088d3a01c60916f2e40",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1035,11 +1038,11 @@
|
||||
"xwayland-satellite-unstable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1768106915,
|
||||
"narHash": "sha256-HlLo9zH4ULRXlmlIK948cHmdVhxyHgTHxGaoCRlW4k8=",
|
||||
"lastModified": 1772429643,
|
||||
"narHash": "sha256-M+bAeCCcjBnVk6w/4dIVvXvpJwOKnXjwi/lDbaN6Yws=",
|
||||
"owner": "Supreeeme",
|
||||
"repo": "xwayland-satellite",
|
||||
"rev": "72245e108f3b03c3c4474d2de9de2d1830849603",
|
||||
"rev": "10f985b84cdbcc3bbf35b3e7e43d1b2a84fa9ce2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
10
flake.nix
10
flake.nix
@@ -3,7 +3,9 @@
|
||||
|
||||
inputs = {
|
||||
disko.url = "github:nix-community/disko";
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
# nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
# Waiting on https://github.com/NixOS/nixpkgs/pull/500538
|
||||
nixpkgs.url = "github:msyds/nixpkgs/fix-bepasty";
|
||||
impermanence.url = "github:nix-community/impermanence";
|
||||
home-manager.url = "github:nix-community/home-manager";
|
||||
sops-nix.url = "github:Mic92/sops-nix";
|
||||
@@ -21,6 +23,7 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.vpnconfinement.follows = "vpn-confinement";
|
||||
};
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
||||
# Used for Firefox extensions/addons.
|
||||
nur = {
|
||||
url = "github:nix-community/NUR";
|
||||
@@ -29,7 +32,10 @@
|
||||
tf2-nix.url = "gitlab:msyds/tf2-nix";
|
||||
syd-fcitx5-tables.url =
|
||||
"git+https://git.deertopia.net/msyds/syd-fcitx5-tables";
|
||||
sydpkgs.url = "github:msyds/sydpkgs";
|
||||
sydpkgs = {
|
||||
url = "git+https://git.deertopia.net/msyds/sydpkgs?ref=fcitx5-toki-pona";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, ... }@inputs:
|
||||
|
||||
@@ -1,26 +1,30 @@
|
||||
{ config, pkgs, lib, disko, ... }:
|
||||
{ config, pkgs, lib, disko, nixos-hardware, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hardware.nix
|
||||
./filesystems.nix
|
||||
nixos-hardware.nixosModules.apple-macbook-pro-12-1
|
||||
];
|
||||
|
||||
# Enabled by default by Nixos-hardware.
|
||||
services.mbpfan.enable = false;
|
||||
|
||||
sydnix = {
|
||||
filesystemType = "btrfs";
|
||||
wifi.enable = true;
|
||||
stylix.enable = true;
|
||||
niri.enable = true;
|
||||
steam.enable = true;
|
||||
bluetooth.enable = true;
|
||||
# gdm.enable = true;
|
||||
# blueman.enable = true;
|
||||
openssh.enable = true;
|
||||
sydpkgs.overlay.enable = true;
|
||||
dank-material-shell.enable = true;
|
||||
kdeconnect.enable = true;
|
||||
upower.enable = true;
|
||||
|
||||
users.users = [
|
||||
"crumb"
|
||||
# "crumb"
|
||||
"msyds"
|
||||
];
|
||||
|
||||
|
||||
16
modules/home/bash.nix
Normal file
16
modules/home/bash.nix
Normal file
@@ -0,0 +1,16 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let cfg = config.sydnix.bash;
|
||||
in {
|
||||
options.sydnix.bash = {
|
||||
enable = lib.mkEnableOption "Bash";
|
||||
};
|
||||
|
||||
imports = [
|
||||
./bash/complete-alias.nix
|
||||
];
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.bash.enable = true;
|
||||
};
|
||||
}
|
||||
16
modules/home/bash/complete-alias.nix
Normal file
16
modules/home/bash/complete-alias.nix
Normal file
@@ -0,0 +1,16 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.sydnix.bash.complete-alias;
|
||||
in {
|
||||
options.sydnix.bash.complete-alias = {
|
||||
enable = lib.mkEnableOption "Alias completion";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.bash.initExtra = lib.mkAfter ''
|
||||
. ${lib.getExe pkgs.complete-alias}
|
||||
complete -F _complete_alias "''${!BASH_ALIASES[@]}"
|
||||
'';
|
||||
};
|
||||
}
|
||||
@@ -13,51 +13,36 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable
|
||||
(let
|
||||
# Fixes flickering and platform detection on Wayland.
|
||||
vesktop-wayland-wrapper =
|
||||
pkgs.symlinkJoin {
|
||||
name = "vesktop-wayland-wrapper";
|
||||
paths = [ pkgs.callPackage pkgs.vesktop ];
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/vesktop \
|
||||
--add-flags "--disable-gpu-compositing"
|
||||
# --add-flags "--disable-gpu-compositing --ozone-platform-hint=auto"
|
||||
'';
|
||||
};
|
||||
in {
|
||||
sydnix.impermanence.directories =
|
||||
let xdg-config-home =
|
||||
config.home.confighome
|
||||
or "${config.home.homeDirectory}/.config";
|
||||
in [
|
||||
# This directory should really be written in terms of
|
||||
# `config.programs.nixcord.vesktopConfigDir`, but it defaults to null
|
||||
# for unknown reasons. This is in conflict with the docs, which claim
|
||||
# it should be the path used here.
|
||||
(lib.removePrefix
|
||||
config.home.homeDirectory
|
||||
"${xdg-config-home}/vesktop")
|
||||
];
|
||||
imports = [
|
||||
./discord/jellyfin-rpc.nix
|
||||
];
|
||||
|
||||
programs.nixcord = {
|
||||
enable = true;
|
||||
discord = {
|
||||
# Install Vesktop without Discord.
|
||||
enable = false;
|
||||
# openASAR.enable = true;
|
||||
vencord.enable = false;
|
||||
vencord.package = pkgs.vencord;
|
||||
};
|
||||
vesktop = {
|
||||
enable = true;
|
||||
# package =
|
||||
# if cfg.fixWayland
|
||||
# then vesktop-wayland-wrapper
|
||||
# else pkgs.vesktop;
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
sydnix.impermanence.directories =
|
||||
let xdg-config-home =
|
||||
config.home.confighome
|
||||
or "${config.home.homeDirectory}/.config";
|
||||
in [
|
||||
# This directory should really be written in terms of
|
||||
# `config.programs.nixcord.vesktopConfigDir`, but it
|
||||
# defaults to null for unknown reasons. This is in conflict
|
||||
# with the docs, which claim it should be the path used
|
||||
# here.
|
||||
(lib.removePrefix
|
||||
config.home.homeDirectory
|
||||
"${xdg-config-home}/vesktop")
|
||||
];
|
||||
|
||||
programs.nixcord = {
|
||||
enable = true;
|
||||
discord = {
|
||||
enable = false;
|
||||
vencord.enable = false;
|
||||
vencord.package = pkgs.vencord;
|
||||
};
|
||||
});
|
||||
vesktop = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
93
modules/home/discord/jellyfin-rpc.nix
Normal file
93
modules/home/discord/jellyfin-rpc.nix
Normal file
@@ -0,0 +1,93 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.sydnix.discord.jellyfin-rpc;
|
||||
vesktop-wrapper =
|
||||
pkgs.vesktop.overrideAttrs (finalAttrs: prevAttrs: {
|
||||
postFixup = ''
|
||||
${prevAttrs.postFixup or ""}
|
||||
if [[ -e $out/bin/.vesktop-wrapped ]]; then
|
||||
echo ".vesktop-wrapped already exists..."
|
||||
exit 1
|
||||
fi
|
||||
mv $out/bin/vesktop $out/bin/.vesktop-wrapped
|
||||
tee $out/bin/vesktop <<EOF
|
||||
#!/usr/bin/env bash
|
||||
systemctl start --user jellyfin-rpc
|
||||
$out/bin/.vesktop-wrapped "\$@"
|
||||
systemctl stop --user jellyfin-rpc
|
||||
EOF
|
||||
chmod +x $out/bin/vesktop
|
||||
'';
|
||||
});
|
||||
|
||||
jellyfin-rpc-config-template =
|
||||
pkgs.writeText "jellyfin-rpc-config-template"
|
||||
(lib.toJSON {
|
||||
jellyfin = {
|
||||
url = "https://watch.deertopia.net";
|
||||
username = ["lain" "msyds"];
|
||||
music = {
|
||||
display = ["year" "album" "genres"];
|
||||
separator = "•";
|
||||
};
|
||||
blacklist.libraries = [
|
||||
"episode"
|
||||
"movie"
|
||||
"book"
|
||||
"audiobook"
|
||||
"livetv"
|
||||
];
|
||||
};
|
||||
images = {
|
||||
enable_images = true;
|
||||
imgur_images = false;
|
||||
};
|
||||
});
|
||||
in {
|
||||
options.sydnix.discord.jellyfin-rpc = {
|
||||
enable = lib.mkEnableOption "Jellyfin rich presence";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
systemd.user.services.jellyfin-rpc-configure =
|
||||
let api-key-file = config.sops.secrets.jellyfin-rpc-api-key.path;
|
||||
in {
|
||||
Unit = {
|
||||
After = [ "sops-nix.service" ];
|
||||
Requires = [ "sops-nix.service" ];
|
||||
X-Restart-Triggers = [ api-key-file ];
|
||||
};
|
||||
Install.WantedBy = [ "default.target" ];
|
||||
Service = {
|
||||
Type = "oneshot";
|
||||
ExecStart =
|
||||
pkgs.writeShellScript "jellyfin-rpc-configure" ''
|
||||
dest=''${XDG_CONFIG_HOME:-$HOME/.config}/jellyfin-rpc/main.json
|
||||
mkdir -p "$(dirname "$dest")"
|
||||
umask 177
|
||||
[[ -f "$dest" ]] && chmod 600 "$dest"
|
||||
${lib.getExe pkgs.jq} \
|
||||
< ${jellyfin-rpc-config-template} \
|
||||
> "$dest" \
|
||||
--rawfile api_key ${api-key-file} \
|
||||
'.jellyfin.api_key = $api_key'
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.services.jellyfin-rpc = {
|
||||
Unit.After = [ "jellyfin-rpc-configure.service" ];
|
||||
Service.ExecStart = lib.getExe pkgs.jellyfin-rpc;
|
||||
};
|
||||
|
||||
sydnix.sops.secrets.jellyfin-rpc-api-key = {};
|
||||
|
||||
programs.nixcord.vesktop.package = vesktop-wrapper;
|
||||
|
||||
assertions = [{
|
||||
assertion = config.programs.nixcord.vesktop.enable;
|
||||
message = "Jellyfin RPC requires Vesktop.";
|
||||
}];
|
||||
};
|
||||
}
|
||||
16
modules/home/documentation.nix
Normal file
16
modules/home/documentation.nix
Normal file
@@ -0,0 +1,16 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let cfg = config.sydnix.documentation;
|
||||
in {
|
||||
options.sydnix.documentation = {
|
||||
enable = lib.mkEnableOption "Docs";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.extraOutputsToInstall = [
|
||||
"doc"
|
||||
"info"
|
||||
"man"
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -128,6 +128,13 @@ in {
|
||||
version = cfg.package.version;
|
||||
};
|
||||
in {
|
||||
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
defaultApplicationPackages = [
|
||||
sydmacs
|
||||
];
|
||||
};
|
||||
|
||||
# Set emacsclient as the default editor for the time being.
|
||||
home.sessionVariables = {
|
||||
|
||||
@@ -7,6 +7,10 @@ in {
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
sydnix.impermanence.directories = [
|
||||
".config/kdeconnect"
|
||||
];
|
||||
|
||||
services.kdeconnect = {
|
||||
enable = true;
|
||||
indicator = true;
|
||||
|
||||
33
modules/home/toki-pona.nix
Normal file
33
modules/home/toki-pona.nix
Normal file
@@ -0,0 +1,33 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let cfg = config.sydnix.toki-pona;
|
||||
in {
|
||||
options.sydnix.toki-pona = {
|
||||
enable = lib.mkEnableOption "Toki Pona fonts, input, and spell-check";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
i18n.inputMethod.fcitx5.addons = [
|
||||
(pkgs.fcitx5-toki-pona.overrideAttrs (final: prev: {
|
||||
patches = prev.patches or [] ++ [
|
||||
./toki-pona/punctuation.patch
|
||||
];
|
||||
}))
|
||||
];
|
||||
|
||||
programs.ghostty.settings.font-family = lib.mkAfter [
|
||||
"sitelen seli kiwen mono juniko"
|
||||
];
|
||||
|
||||
sydnix.hunspell.dictionaries = ds: with ds; [
|
||||
tok
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
# nasin-nanpa-ucsur
|
||||
nasin-nanpa
|
||||
nasin-nanpa-helvetica
|
||||
sitelen-seli-kiwen
|
||||
];
|
||||
};
|
||||
}
|
||||
22
modules/home/toki-pona/punctuation.patch
Normal file
22
modules/home/toki-pona/punctuation.patch
Normal file
@@ -0,0 +1,22 @@
|
||||
diff --git a/static_tables/toki_pona_ucsur.txt b/static_tables/toki_pona_ucsur.txt
|
||||
index 1bacd3a..53f5c8e 100644
|
||||
--- a/static_tables/toki_pona_ucsur.txt
|
||||
+++ b/static_tables/toki_pona_ucsur.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-KeyCode=mnptkswljiueoa()[]{}^*.:"-_
|
||||
+KeyCode=mnptkswljiueoa()[]{}^*.:"-_<>,
|
||||
Length=16
|
||||
Prompt=
|
||||
ConstructPhrase=
|
||||
@@ -13,8 +13,11 @@ _
|
||||
^
|
||||
*
|
||||
.
|
||||
+, 。
|
||||
:
|
||||
-
|
||||
+< 「
|
||||
+> 」
|
||||
a
|
||||
akesi
|
||||
ala
|
||||
@@ -1,34 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.sydnix.users.crumb.bash;
|
||||
in {
|
||||
options.sydnix.users.crumb.bash.enable = lib.mkEnableOption "Bash, à la crumb";
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.bash = {
|
||||
enable = true;
|
||||
shellOptions = [
|
||||
# Correct minor typos in cd commands.
|
||||
"cdspell"
|
||||
"autocd"
|
||||
# Extra glob power.
|
||||
"extglob"
|
||||
# Recursive glob w/ **.
|
||||
"globstar"
|
||||
# Append to history file.
|
||||
"histappend"
|
||||
# Require user confirmation for commands using expansion.
|
||||
"histverify"
|
||||
# Re-edit failed history substitutions.
|
||||
"histreedit"
|
||||
];
|
||||
};
|
||||
|
||||
home.shellAliases = {
|
||||
nix2json = "nix eval --impure --json --file -";
|
||||
"..." = "cd ../..";
|
||||
"...." = "cd ../../..";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -26,8 +26,8 @@ in {
|
||||
};
|
||||
|
||||
globalOptions = {
|
||||
# Disable shift to toggle. I accidentally press it all the time.
|
||||
# 날 미치게 만들어요.
|
||||
# Disable shift to toggle. I accidentally press it all
|
||||
# the time. 날 미치게 만들어요.
|
||||
Hotkey.AltTriggerKeys = "";
|
||||
};
|
||||
|
||||
|
||||
36
modules/home/users/msyds/bash.nix
Normal file
36
modules/home/users/msyds/bash.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.sydnix.users.msyds.bash;
|
||||
in {
|
||||
options.sydnix.users.msyds.bash.enable =
|
||||
lib.mkEnableOption "Bash, à la msyds";
|
||||
config = lib.mkIf cfg.enable {
|
||||
sydnix.bash.enable = true;
|
||||
sydnix.bash.complete-alias.enable = true;
|
||||
|
||||
programs.bash.shellOptions = [
|
||||
# Correct minor typos in cd commands.
|
||||
"cdspell"
|
||||
# Implicitly prepend `cd` to directory names.
|
||||
"autocd"
|
||||
# Extra glob power.
|
||||
"extglob"
|
||||
# Recursive glob w/ **.
|
||||
"globstar"
|
||||
# Append to history file.
|
||||
"histappend"
|
||||
# Require user confirmation for commands using expansion.
|
||||
"histverify"
|
||||
# Re-edit failed history substitutions.
|
||||
"histreedit"
|
||||
];
|
||||
|
||||
home.shellAliases = {
|
||||
nix2json = "nix eval --impure --json --file -";
|
||||
"..." = "cd ../..";
|
||||
"...." = "cd ../../..";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
{ config, lib, pkgs, host, ... }:
|
||||
|
||||
let cfg = config.sydnix.users.msyds.dank-material-shell;
|
||||
let
|
||||
cfg = config.sydnix.users.msyds.dank-material-shell;
|
||||
on = hosts:
|
||||
if builtins.isString hosts
|
||||
then hosts == host
|
||||
else builtins.elem host hosts;
|
||||
in {
|
||||
options.sydnix.users.msyds.dank-material-shell = {
|
||||
enable = lib.mkEnableOption "Dank Material Shell";
|
||||
@@ -167,7 +172,7 @@ in {
|
||||
showControlCenterButton = true;
|
||||
showCapsLockIndicator = true;
|
||||
controlCenterShowNetworkIcon = true;
|
||||
controlCenterShowBluetoothIcon = true;
|
||||
controlCenterShowBluetoothIcon = on ["fruitbook"];
|
||||
controlCenterShowAudioIcon = true;
|
||||
controlCenterShowVpnIcon = true;
|
||||
controlCenterShowBrightnessIcon = false;
|
||||
@@ -286,9 +291,9 @@ in {
|
||||
batterySuspendTimeout = 0;
|
||||
batterySuspendBehavior = 0;
|
||||
batteryProfileName = "";
|
||||
lockBeforeSuspend = false;
|
||||
lockBeforeSuspend = true;
|
||||
loginctlLockIntegration = true;
|
||||
fadeToLockEnabled = false;
|
||||
fadeToLockEnabled = true;
|
||||
fadeToLockGracePeriod = 5;
|
||||
launchPrefix = "";
|
||||
brightnessDevicePins = {};
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let cfg = config.sydnix.users.crumb.discord;
|
||||
let cfg = config.sydnix.users.msyds.discord;
|
||||
in {
|
||||
options.sydnix.users.crumb.discord = {
|
||||
options.sydnix.users.msyds.discord = {
|
||||
enable = lib.mkEnableOption "Discord";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
sydnix.discord.enable = true;
|
||||
sydnix.discord.jellyfin-rpc.enable = true;
|
||||
|
||||
stylix.targets.nixcord.enable = true;
|
||||
stylix.targets.nixcord.enable = false;
|
||||
|
||||
programs.nixcord = {
|
||||
quickCss = ''
|
||||
@@ -29,6 +30,11 @@ in {
|
||||
];
|
||||
plugins = {
|
||||
ircColors.enable = true;
|
||||
voiceMessages = {
|
||||
enable = true;
|
||||
echoCancellation = false;
|
||||
noiseSuppression = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
vesktop = {
|
||||
@@ -31,6 +31,17 @@ in {
|
||||
treesit.enable = true;
|
||||
};
|
||||
|
||||
home.sessionVariables = {
|
||||
ESHELL_ALIASES_FILE = pkgs.writeText "eshell-aliases" ''
|
||||
alias cdp syd-project-cd
|
||||
alias js js --no-pager
|
||||
${lib.concatMapAttrsStringSep
|
||||
"\n"
|
||||
(alias: value: "alias ${alias} ${value} $*")
|
||||
config.home.shellAliases}
|
||||
'';
|
||||
};
|
||||
|
||||
sydnix.emacs = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
(syd-require-features
|
||||
'(syd/base
|
||||
syd/constants
|
||||
syd/fcitx
|
||||
syd/dash
|
||||
syd/disable-package
|
||||
syd/straight
|
||||
@@ -49,6 +50,7 @@
|
||||
syd/direnv
|
||||
syd/ligature
|
||||
syd/clojure
|
||||
syd/auctex
|
||||
syd/lisp
|
||||
syd/minibuffer
|
||||
syd/auto-save
|
||||
@@ -63,5 +65,6 @@
|
||||
syd/eshell
|
||||
syd/treesit
|
||||
syd/grammatical-framework
|
||||
syd/tabs
|
||||
syd/lsp
|
||||
syd/custom))
|
||||
|
||||
11
modules/home/users/msyds/emacs/lisp/syd/auctex.el
Normal file
11
modules/home/users/msyds/emacs/lisp/syd/auctex.el
Normal file
@@ -0,0 +1,11 @@
|
||||
;;; -*- lexical-binding: t; -*-
|
||||
|
||||
(require 'syd/base)
|
||||
|
||||
(use-package auctex
|
||||
:config
|
||||
(add-to-list 'TeX-view-program-selection '(output-pdf "Sioyek")))
|
||||
|
||||
(use-package auctex-latexmk)
|
||||
|
||||
(provide 'syd/auctex)
|
||||
@@ -108,4 +108,13 @@
|
||||
s)
|
||||
s))))
|
||||
|
||||
(defun syd-clojure--setup-clj-refactor ()
|
||||
(clj-refactor-mode 1)
|
||||
(yas-minor-mode 1)
|
||||
(cljr-add-keybindings-with-prefix "C-c r"))
|
||||
|
||||
(use-package clj-refactor
|
||||
:config
|
||||
(add-hook 'clojure-mode-hook #'syd-clojure--setup-clj-refactor))
|
||||
|
||||
(provide 'syd/clojure)
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
;;; -*- lexical-binding: t -*-
|
||||
;; -*- lexical-binding: t -*-
|
||||
|
||||
(require 'syd/base)
|
||||
(require 'syd/popups)
|
||||
|
||||
(setq
|
||||
;; Log native-compiler warnings, but don't display the buffer. Most of the
|
||||
@@ -8,4 +11,7 @@
|
||||
;; Scroll compilation buffer to follow output.
|
||||
compilation-scroll-output t)
|
||||
|
||||
(syd-push shackle-rules
|
||||
'("*compilation*" :select nil :size 0.42 :popup t :align bottom))
|
||||
|
||||
(provide 'syd/compilation)
|
||||
|
||||
@@ -150,7 +150,9 @@ if FILE-NAME has no TRAMP prefix."
|
||||
(eshell-last-dir-ring-file-name (file-name-concat
|
||||
syd-eshell-data-dir "lastdir"))
|
||||
(eshell-prompt-function #'syd-eshell--prompt-fn)
|
||||
(eshell-prompt-regexp syd-eshell--prompt-regexp))
|
||||
(eshell-prompt-regexp syd-eshell--prompt-regexp)
|
||||
(eshell-aliases-file (or (getenv "ESHELL_ALIASES_FILE")
|
||||
eshell-aliases-file)))
|
||||
:general
|
||||
(:keymaps 'syd-leader-open-map
|
||||
"e" #'syd-toggle-eshell)
|
||||
|
||||
10
modules/home/users/msyds/emacs/lisp/syd/fcitx.el
Normal file
10
modules/home/users/msyds/emacs/lisp/syd/fcitx.el
Normal file
@@ -0,0 +1,10 @@
|
||||
;;; -*- lexical-binding: t; -*-
|
||||
|
||||
(require 'syd/base)
|
||||
|
||||
(use-package fcitx
|
||||
:custom ((fcitx-remote-command "fcitx5-remote"))
|
||||
:config
|
||||
(fcitx-aggressive-setup))
|
||||
|
||||
(provide 'syd/fcitx)
|
||||
@@ -12,15 +12,21 @@
|
||||
(font-spec :family "JuliaMono" :size 16)
|
||||
"A monospace font secondary to `syd-fixed-pitch-font'.")
|
||||
|
||||
(defvar syd-sitelen-pona-font
|
||||
(font-spec :family "sitelen seli kiwen mono juniko"))
|
||||
|
||||
(defun syd-init-fonts-h ()
|
||||
"Loads `syd-fixed-pitch-font' and `syd-variable-pitch-font'."
|
||||
(dolist (map `((default . ,syd-fixed-pitch-font)
|
||||
(fixed-pitch . ,syd-fixed-pitch-font)
|
||||
(variable-pitch . ,syd-variable-pitch-font)))
|
||||
(fixed-pitch . ,syd-fixed-pitch-font)
|
||||
(variable-pitch . ,syd-variable-pitch-font)))
|
||||
(pcase-let ((`(,face . ,font) map))
|
||||
(set-face-attribute face nil
|
||||
:width 'normal :weight 'normal
|
||||
:slant 'normal :font font))))
|
||||
:width 'normal :weight 'normal
|
||||
:slant 'normal :font font)))
|
||||
(set-fontset-font
|
||||
t '(#xF1900 . #xF19FF)
|
||||
syd-sitelen-pona-font))
|
||||
|
||||
(let ((hook-point (if (daemonp)
|
||||
'server-after-make-frame-hook
|
||||
|
||||
@@ -5,22 +5,28 @@
|
||||
(use-package ligature
|
||||
:config
|
||||
(ligature-set-ligatures 'prog-mode
|
||||
'("|||>" "<|||" "<==>" "<!--" "####" "~~>" "***" "||="
|
||||
"||>" ":::" "::=" "=:=" "===" "==>" "=!=" "=>>"
|
||||
"=<<" "=/=" "!==" "!!." ">=>" ">>=" ">>>" ">>-"
|
||||
">->" "->>" "-->" "---" "-<<" "<~~" "<~>" "<*>"
|
||||
"<||" "<|>" "<$>" "<==" "<=>" "<=<" "<->" "<--"
|
||||
"<-<" "<<=" "<<-" "<<<" "<+>" "</>" "###" "#_("
|
||||
"..<" "..." "+++" "/==" "///" "_|_" "www" "&&" "^="
|
||||
"~~" "~@" "~=" "~>" "~-" "**" "*>" "*/" "||" "|}"
|
||||
"|]" "|=" "|>" "|-" "{|" "[|" "]#" "::" ":=" ":>"
|
||||
":<" "$>" "==" "=>" "!=" "!!" ">:" ">=" ">>" ">-"
|
||||
"-~" "-|" "->" "--" "-<" "<~" "<*" "<|" "<:" "<$"
|
||||
"<=" "<>" "<-" "<<" "<+" "</" "#{" "#[" "#:" "#="
|
||||
"#!" "##" "#(" "#?" "#_" "%%" ".=" ".-" ".." ".?"
|
||||
"+>" "++" "?:" "?=" "?." "??" ";;" ";;;"
|
||||
"/*" "/=" "/>" "//" "__" "~~" "(*" "*)"
|
||||
"\\\\" "://"))
|
||||
'("|||>" "<|||" "<==>" "<!--" "####" "~~>" "***" "||="
|
||||
"||>" ":::" "::=" "=:=" "===" "==>" "=!=" "=>>"
|
||||
"=<<" "=/=" "!==" "!!." ">=>" ">>=" ">>>" ">>-"
|
||||
">->" "->>" "-->" "---" "-<<" "<~~" "<~>" "<*>"
|
||||
"<||" "<|>" "<$>" "<==" "<=>" "<=<" "<->" "<--"
|
||||
"<-<" "<<=" "<<-" "<<<" "<+>" "</>" "###" "#_("
|
||||
"..<" "..." "+++" "/==" "///" "_|_" "www" "&&" "^="
|
||||
"~~" "~@" "~=" "~>" "~-" "**" "*>" "*/" "||" "|}"
|
||||
"|]" "|=" "|>" "|-" "{|" "[|" "]#" "::" ":=" ":>"
|
||||
":<" "$>" "==" "=>" "!=" "!!" ">:" ">=" ">>" ">-"
|
||||
"-~" "-|" "->" "--" "-<" "<~" "<*" "<|" "<:" "<$"
|
||||
"<=" "<>" "<-" "<<" "<+" "</" "#{" "#[" "#:" "#="
|
||||
"#!" "##" "#(" "#?" "#_" "%%" ".=" ".-" ".." ".?"
|
||||
"+>" "++" "?:" "?=" "?." "??" ";;" ";;;"
|
||||
"/*" "/=" "/>" "//" "__" "~~" "(*" "*)"
|
||||
"\\\\" "://"))
|
||||
;; Sitelen pona glyphs.
|
||||
(rx-let ((ideograph (any (#xF1900 . #xF198C))))
|
||||
(ligature-set-ligatures
|
||||
'fundamental-mode
|
||||
`(("" ,(rx (* ideograph)))
|
||||
("" ,(rx "" (* ideograph))))))
|
||||
(global-ligature-mode 1))
|
||||
|
||||
(provide 'syd/ligature)
|
||||
|
||||
9
modules/home/users/msyds/emacs/lisp/syd/markdown.el
Normal file
9
modules/home/users/msyds/emacs/lisp/syd/markdown.el
Normal file
@@ -0,0 +1,9 @@
|
||||
;; -*- lexical-binding: t; -*-
|
||||
|
||||
(require 'syd/base)
|
||||
|
||||
(use-package markdown-mode
|
||||
:config
|
||||
(add-hook 'markdown-mode-hook #'syd-prose-mode))
|
||||
|
||||
(provide 'syd/markdown)
|
||||
@@ -80,7 +80,8 @@
|
||||
:target (file "todays-korean/%<%Y-%m-%d>.org"))
|
||||
("I" "Korean irregularity class" plain
|
||||
(file ,(syd-emacs-file "lisp/syd/org/roam/irregularity-class.org"))
|
||||
:target (file ,default-target-file-name))))))
|
||||
:target (file ,default-target-file-name)))))
|
||||
(org-roam-link-auto-replace nil))
|
||||
:config
|
||||
(add-to-list 'org-agenda-files org-roam-directory)
|
||||
(with-eval-after-load 'org-roam-dailies
|
||||
|
||||
7
modules/home/users/msyds/emacs/lisp/syd/tabs.el
Normal file
7
modules/home/users/msyds/emacs/lisp/syd/tabs.el
Normal file
@@ -0,0 +1,7 @@
|
||||
;;; -*- lexical-binding: t -*-
|
||||
(require 'syd/base)
|
||||
|
||||
;; Disable tabs by default.
|
||||
(setq-default indent-tabs-mode nil)
|
||||
|
||||
(provide 'syd/tabs)
|
||||
20
modules/home/users/msyds/sioyek.nix
Normal file
20
modules/home/users/msyds/sioyek.nix
Normal file
@@ -0,0 +1,20 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let cfg = config.sydnix.users.msyds.sioyek;
|
||||
in {
|
||||
options.sydnix.users.msyds.sioyek = {
|
||||
enable = lib.mkEnableOption "Sioyek";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.sioyek = {
|
||||
enable = true;
|
||||
bindings = {
|
||||
"move_down" = "j";
|
||||
"move_up" = "k";
|
||||
"screen_down" = [ "d" "<C-d>" ];
|
||||
"screen_up" = [ "u" "<C-u>" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
12
modules/nixos/blueman.nix
Normal file
12
modules/nixos/blueman.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let cfg = config.sydnix.blueman;
|
||||
in {
|
||||
options.sydnix.blueman = {
|
||||
enable = lib.mkEnableOption "Blueman BlueTooth manager";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.blueman.enable = true;
|
||||
};
|
||||
}
|
||||
@@ -7,8 +7,6 @@ in {
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.blueman.enable = true;
|
||||
|
||||
hardware.bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true;
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let cfg = config.sydnix.deertopia.bepasty;
|
||||
in {
|
||||
options = {
|
||||
sydnix.deertopia.bepasty = {
|
||||
enable = mkEnableOption "Bepasty";
|
||||
enable = lib.mkEnableOption "Bepasty";
|
||||
|
||||
port = lib.mkOption {
|
||||
default = 22018;
|
||||
@@ -19,7 +17,7 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
config = lib.mkIf cfg.enable {
|
||||
sydnix.sops.secrets.bepasty-secret-key = {};
|
||||
sydnix.sops.secrets.bepasty-secret-config = {};
|
||||
|
||||
|
||||
@@ -40,11 +40,18 @@ in {
|
||||
|
||||
# sudo -u git gitea admin auth add-ldap --name gitea --port 3890 --bind-dn 'uid=gitea,ou=people,dc=deertopia,dc=net' --bind-password «password» --user-search-base 'ou=people,dc=deertopia,dc=net' --user-filter '(&(memberof=cn=git,ou=groups,dc=deertopia,dc=net)(|(uid=%[1]s)(mail=%[1]s)))' --username-attribute uid --firstname-attribute givenName --surname-attribute sn --email-attribute mail --avatar-attribute jpegPhoto --security-protocol unencrypted --host 127.0.0.1 --config /var/lib/gitea/custom/conf/app.ini --synchronize-users
|
||||
|
||||
sydnix.sops.secrets.gitea-mailer-password = {
|
||||
mode = "0440";
|
||||
owner = "git";
|
||||
group = "git";
|
||||
};
|
||||
|
||||
services.gitea = {
|
||||
enable = true;
|
||||
user = "git";
|
||||
group = "git";
|
||||
appName = "GupHub"; # Name per my darling Colestar ♥
|
||||
appName = "GupHub"; # Name per my dear Astrid ♥!!!!!
|
||||
mailerPasswordFile = config.sops.secrets.gitea-mailer-password.path;
|
||||
settings = {
|
||||
server = {
|
||||
ROOT_URL = "https://git.deertopia.net/";
|
||||
@@ -53,7 +60,16 @@ in {
|
||||
};
|
||||
service = {
|
||||
DISABLE_REGISTRATION = true;
|
||||
ENABLE_NOTIFY_MAIL = true;
|
||||
};
|
||||
mailer = {
|
||||
ENABLED = true;
|
||||
FROM = "Gitea <no-reply@deertopia.net>";
|
||||
PROTOCOL = "smtps";
|
||||
SMTP_ADDR = "smtp.fastmail.com";
|
||||
SMTP_PORT = 465;
|
||||
USER = "msyds@deertopia.net";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -3,13 +3,51 @@
|
||||
|
||||
let
|
||||
cfg = config.sydnix.gitea-actions-runner;
|
||||
container-name = "gitea-actions-runner";
|
||||
gitea-actions-runner-uid = 991;
|
||||
gitea-actions-runner-gid = 989;
|
||||
token-file = config.sops.secrets.gitea-actions-runner-token.path;
|
||||
in {
|
||||
options.sydnix.gitea-actions-runner = {
|
||||
enable = lib.mkEnableOption "Gitea actions runner";
|
||||
instance-name = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = config.networking.hostName;
|
||||
description = ''
|
||||
The name of the runner instance name.
|
||||
'';
|
||||
};
|
||||
user.name = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "gitea-actions-runner";
|
||||
description = ''
|
||||
The name of the user gitea-actions-runner should run under.
|
||||
'';
|
||||
};
|
||||
user.uid = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 991;
|
||||
description = ''
|
||||
The UID of the user gitea-actions-runner should run under.
|
||||
This must be known at evaluation time so that the same UID can
|
||||
be used both on the host and in the container, allowing the
|
||||
container to access the host's nix-daemon.
|
||||
'';
|
||||
};
|
||||
group.name = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "gitea-actions-runner";
|
||||
description = ''
|
||||
The name of the group gitea-actions-runner should run under.
|
||||
'';
|
||||
};
|
||||
group.gid = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 989;
|
||||
description = ''
|
||||
The GID of the group gitea-actions-runner should run under.
|
||||
This must be known at evaluation time so that the same GID can
|
||||
be used both on the host and in the container, allowing the
|
||||
container to access the host's nix-daemon.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
@@ -17,7 +55,7 @@ in {
|
||||
|
||||
sydnix.impermanence.directories = [ "/var/lib/gitea-actions-runner" ];
|
||||
|
||||
containers.${container-name} = {
|
||||
containers."gitea-actions-runner" = {
|
||||
autoStart = true;
|
||||
ephemeral = true;
|
||||
|
||||
@@ -35,9 +73,9 @@ in {
|
||||
config = { config, lib, pkgs, ... }: {
|
||||
system.stateVersion = "25.11";
|
||||
|
||||
services.gitea-actions-runner.instances.sydpc = {
|
||||
services.gitea-actions-runner.instances.${cfg.instance-name} = {
|
||||
enable = true;
|
||||
name = "sydpc";
|
||||
name = cfg.instance-name;
|
||||
url = "https://git.deertopia.net/";
|
||||
tokenFile = token-file;
|
||||
labels = [ "nixos:host" ];
|
||||
@@ -56,23 +94,27 @@ in {
|
||||
|
||||
# Disable dynamic user so runner state persists via bind mount
|
||||
assertions = [{
|
||||
assertion = config.systemd.services.gitea-actions-runner-sydpc.enable;
|
||||
assertion =
|
||||
config.systemd.services.gitea-actions-runner-sydpc.enable;
|
||||
message = ''
|
||||
Expected systemd service 'gitea-actions-runner-sydpc' is not
|
||||
enabled — the gitea-actions-runner module may have changed
|
||||
its naming scheme.
|
||||
Expected systemd service 'gitea-actions-runner-sydpc' is
|
||||
not enabled — the gitea-actions-runner NixOS module may
|
||||
have changed its naming scheme.
|
||||
'';
|
||||
}];
|
||||
|
||||
systemd.services.gitea-actions-runner-sydpc.serviceConfig.DynamicUser
|
||||
= lib.mkForce false;
|
||||
users.users.gitea-actions-runner = {
|
||||
uid = gitea-actions-runner-uid;
|
||||
|
||||
users.users.${cfg.user.name} = {
|
||||
uid = cfg.user.uid;
|
||||
home = "/var/lib/gitea-actions-runner";
|
||||
group = "gitea-actions-runner";
|
||||
group = cfg.group.name;
|
||||
isSystemUser = true;
|
||||
createHome = true;
|
||||
};
|
||||
users.groups.gitea-actions-runner.gid = gitea-actions-runner-gid;
|
||||
|
||||
users.groups.gitea-actions-runner.gid = cfg.group.gid;
|
||||
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
|
||||
@@ -81,23 +123,27 @@ in {
|
||||
nodejs
|
||||
jq
|
||||
attic-client
|
||||
omnix
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
# Needs to be outside of the container because container uses's
|
||||
# the host's nix-daemon
|
||||
nix.settings.trusted-users = [ "gitea-actions-runner" ];
|
||||
nix.settings.trusted-users = [
|
||||
cfg.user.name
|
||||
];
|
||||
|
||||
# Matching user on host — the container's gitea-actions-runner UID must be
|
||||
# recognized by the host's nix-daemon as trusted (shared UID namespace)
|
||||
users.users.gitea-actions-runner = {
|
||||
uid = gitea-actions-runner-uid;
|
||||
# Matching user on host — the container's gitea-actions-runner UID
|
||||
# must be recognized by the host's nix-daemon as trusted (shared
|
||||
# UID namespace)
|
||||
users.users.${cfg.user.name} = {
|
||||
uid = cfg.user.uid;
|
||||
home = "/var/lib/gitea-actions-runner";
|
||||
group = "gitea-actions-runner";
|
||||
group = cfg.group.name;
|
||||
isSystemUser = true;
|
||||
createHome = true;
|
||||
};
|
||||
users.groups.gitea-actions-runner.gid = gitea-actions-runner-gid;
|
||||
users.groups.${cfg.group.name}.gid = cfg.group.gid;
|
||||
};
|
||||
}
|
||||
|
||||
12
modules/nixos/upower.nix
Normal file
12
modules/nixos/upower.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let cfg = config.sydnix.upower;
|
||||
in {
|
||||
options.sydnix.upower = {
|
||||
enable = lib.mkEnableOption "UPower";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.upower.enable = true;
|
||||
};
|
||||
}
|
||||
@@ -59,6 +59,7 @@ let
|
||||
pkgs = nixpkgs;
|
||||
};
|
||||
inherit inputs system;
|
||||
host = hostName;
|
||||
};
|
||||
})
|
||||
];
|
||||
|
||||
@@ -30,6 +30,7 @@ anki-username: ENC[AES256_GCM,data:584uxjwyodM=,iv:/6HLSLzHgc77U1iN5JDLR9F+o8Nfe
|
||||
anki-password: ENC[AES256_GCM,data:plSKMTeeilKt6weAnzw/jMo65A==,iv:lzuPUt1+2Iwi9sHbaFj0OuBLd1p+Do2N5aCYXd45MFQ=,tag:WIABFp1T6NuIGpqqQFHmrg==,type:str]
|
||||
anki-sync-key: ENC[AES256_GCM,data:Ka4sPghPwmWQvdXw40ZRLogoMVTBjLnaSyHT9lTfn2XWHHqFAkANAg==,iv:bFkb/k7UUL8t26LjmQwiDYJpvq93NWuqUU/jNYkr7GQ=,tag:Mx5JdqjI3MDk7hsvOlPYIw==,type:str]
|
||||
gitea-actions-runner-token: ENC[AES256_GCM,data:JglbJ2hgXl1wV2bCkcged+D3UrpWMMBuX+ri6YeIqwLIlscvK/wVCdsxQZtDGw==,iv:BYhgfoIa/wHQkd4c7kU8AWAJQfpTfUvSamFXDBqQXTE=,tag:sIK1XxVPIU+uBGaJY3AmTQ==,type:str]
|
||||
gitea-mailer-password: ENC[AES256_GCM,data:bgFAhAzYcDhHi4Brg7x8CQ==,iv:hj8+YbcE+Jfhtu8g//Y8EiNw1CejTtMgstB/knbgOls=,tag:CYX3Pr4ErzvHGVfhpvfruw==,type:str]
|
||||
sops:
|
||||
age:
|
||||
- recipient: age10fqh0td67alzpyjyhdex5ncj9thvaty506r0t63vs2nz4ldafgaqadl8mg
|
||||
@@ -50,7 +51,7 @@ sops:
|
||||
TXFLY2l0UHJ3Z0NGZjVpbTQ2UC8yaTQKA7wTmW9Ha6T2KmCr/nkXdizgv8+V6SAp
|
||||
ZhDO+uDQ1evIh2wLWMOXNJ3d/zplLCOTzR2xkqBIUp5V7MXj45RUIA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2026-03-01T08:57:03Z"
|
||||
mac: ENC[AES256_GCM,data:uNqk+x+nLgDUdHI5flUuXF/vGnkMpUUhdFfkOULm+bebkPL6PI5kJHV78GPs+aA9BPCmTvomgGe51zvyJFRcH3gBJ2bF5YfdC0ROrRbZS4KYIuZwrELf77zq73MbIFt//BTpDYK4cUC8CPRoAEwtoTG6lyHbxcAk4+B5w2NFfN8=,iv:rFaEaav1LHrhtKtiRfIqHTj5+cOBv3lC1UyqEvOoUsg=,tag:x/4n+rcQxd+neQGLcXa66g==,type:str]
|
||||
lastmodified: "2026-03-22T07:49:51Z"
|
||||
mac: ENC[AES256_GCM,data:Y/7XSZtPlVPDV3eToYQ9MoAGF9nGq0sd0KU1VaR5duK1xbETULioQcpPvVk6HL1kPlUjnmR8RXfCKBC7EJ9P/UAMV2ySulLtD6daogCzF3qa2JSyXPuOyMuXMSjwCNcCyHgpaOrWz+7Zf9FU/1wQwVHeCDTf0sFHaX0xttFfHkg=,iv:7+zXPjeslh+z9hWhYXoUphpbg3Tpe4OHQEcUmetuiMM=,tag:LB0GuN+5TJxXyuvrrqOi7g==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.11.0
|
||||
version: 3.12.1
|
||||
|
||||
@@ -18,59 +18,67 @@
|
||||
];
|
||||
};
|
||||
|
||||
homeConfiguration = { config, lib, pkgs, ... }: {
|
||||
home.file.".ssh/id_ed25519".source =
|
||||
config.lib.file.mkOutOfStoreSymlink
|
||||
"/persist/private-keys/ssh/msyds@sydpc";
|
||||
homeConfiguration = { config, lib, pkgs, host, ... }:
|
||||
let on = hosts:
|
||||
if builtins.isString hosts
|
||||
then hosts == host
|
||||
else builtins.elem host hosts;
|
||||
in {
|
||||
home.file.".ssh/id_ed25519".source =
|
||||
config.lib.file.mkOutOfStoreSymlink
|
||||
"/persist/private-keys/ssh/msyds@sydpc";
|
||||
|
||||
home.file.".face".source = ./avatar.jpg;
|
||||
home.file.".face".source = ./avatar.jpg;
|
||||
|
||||
home.file.".ssh/id_ed25519.pub".source =
|
||||
../../public-keys/ssh/${"msyds@sydpc.pub"};
|
||||
home.file.".ssh/id_ed25519.pub".source =
|
||||
../../public-keys/ssh/${"msyds@sydpc.pub"};
|
||||
|
||||
sydnix = {
|
||||
xdg.enable = true;
|
||||
steam.enable = true;
|
||||
zotero.enable = true;
|
||||
openutau.enable = true;
|
||||
slippi.enable = true;
|
||||
desktop-environment.enable = true;
|
||||
clojure.enable = true;
|
||||
capitaine-cursors.enable = true;
|
||||
terraria.enable = true;
|
||||
kdeconnect.enable = true;
|
||||
qalculate.enable = true;
|
||||
sops = {
|
||||
enable = true;
|
||||
keyFile = "/persist/private-keys/age/crumb";
|
||||
};
|
||||
# Personal configurations.
|
||||
users.crumb = {
|
||||
bash.enable = true;
|
||||
direnv.enable = true;
|
||||
git.enable = true;
|
||||
nvim.enable = true;
|
||||
readline.enable = true;
|
||||
niri.enable = true;
|
||||
firefox.enable = true;
|
||||
ghostty.enable = true;
|
||||
# waybar.enable = true;
|
||||
tf2.enable = true;
|
||||
fcitx5.enable = true;
|
||||
anki.enable = true;
|
||||
mumble.enable = true;
|
||||
};
|
||||
users.msyds = {
|
||||
hunspell.enable = true;
|
||||
emacs.enable = true;
|
||||
impermanence.enable = true;
|
||||
syncthing.enable = true;
|
||||
fonts.enable = true;
|
||||
dank-material-shell.enable = true;
|
||||
sydnix = {
|
||||
documentation.enable = true;
|
||||
xdg.enable = true;
|
||||
steam.enable = on "sydpc";
|
||||
zotero.enable = true;
|
||||
slippi.enable = on "sydpc";
|
||||
desktop-environment.enable = true;
|
||||
clojure.enable = true;
|
||||
capitaine-cursors.enable = true;
|
||||
terraria.enable = on "sydpc";
|
||||
kdeconnect.enable = true;
|
||||
qalculate.enable = true;
|
||||
toki-pona.enable = true;
|
||||
sops = {
|
||||
enable = true;
|
||||
keyFile = "/persist/private-keys/age/crumb";
|
||||
};
|
||||
# Personal configurations.
|
||||
users.crumb = {
|
||||
direnv.enable = true;
|
||||
git.enable = true;
|
||||
nvim.enable = true;
|
||||
readline.enable = true;
|
||||
niri.enable = true;
|
||||
firefox.enable = true;
|
||||
ghostty.enable = true;
|
||||
# waybar.enable = true;
|
||||
tf2.enable = true;
|
||||
fcitx5.enable = true;
|
||||
anki.enable = true;
|
||||
mumble.enable = true;
|
||||
};
|
||||
users.msyds = {
|
||||
discord.enable = true;
|
||||
bash.enable = true;
|
||||
hunspell.enable = true;
|
||||
emacs.enable = true;
|
||||
impermanence.enable = true;
|
||||
syncthing.enable = true;
|
||||
fonts.enable = true;
|
||||
dank-material-shell.enable = true;
|
||||
sioyek.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Don't touch!
|
||||
home.stateVersion = "18.09";
|
||||
};
|
||||
|
||||
# Don't touch!
|
||||
home.stateVersion = "18.09";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ gitlab-oauth: ENC[AES256_GCM,data:1THznoGRZmq7BkisZoGa0ZiPG7aSmkV06SY=,iv:Gq6UPH
|
||||
anki-username: ENC[AES256_GCM,data:cUWaxIc=,iv:I2wy54406Xe4tVHIhIFZqbezepc2wtp2M15T7ES9zGQ=,tag:FiU2CscHDcNv+6S5pODG7w==,type:str]
|
||||
anki-password: ENC[AES256_GCM,data:kXQq1JPjTRpQ4f6/BOFj/gBhUA==,iv:P8MVsmCfyOoEJmyAjBfMSRT6mpkwDUBIzr2UjZmjHOA=,tag:D7KWEpldP/H6CUH7y+5/7Q==,type:str]
|
||||
anki-sync-key: ENC[AES256_GCM,data:wvAo92t6oR8PxE5EId/OC+J4GKs/Rp21PSp+uDt72JWFzeWHO6a1KA==,iv:2yU4skxlDuH6smSr5PnPe8ZkWf4gdxKBXQfzPFiZXoA=,tag:7KXl5A4vzRdkWO++LbMb9A==,type:str]
|
||||
jellyfin-rpc-api-key: ENC[AES256_GCM,data:srElaGG1JVWwDb+xA4iG9ew6oFUEHSd6AlLUXN8iA3c=,iv:z1UQshfWW6Q7GK8Ff8GK3OD7z0Aa5kePVRPLlUsDmF0=,tag:+csa3asD+0qthO05uZqK0A==,type:str]
|
||||
sops:
|
||||
age:
|
||||
- recipient: age1qayk0d0f765v57pedm7mtau6qkmv8rh6jtaqm40g5g9armaty4jqc0v0y2
|
||||
@@ -28,7 +29,7 @@ sops:
|
||||
VVBqSEM2bVFBU0M5YzZBQWIwUmVXUXMKvWb57Rc+rO5M8Pf7lvbSjuZB4FrHgT3A
|
||||
uBQHH3wpv0BVVzL8tucPnwNxDnwpWvFxxwNVy/rtfs6y6HPu6fuOsA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-11-30T00:32:08Z"
|
||||
mac: ENC[AES256_GCM,data:9c3xcwnGSoi/IpDHBJ922kd9Xh4EodOL/1B1epdCIB/N3Pu07wVMGSGm97e2uqczbFgebXc/Oz1Gpr9hdxNpvxlldXQgqPhZIlk6Pfelf6E0WcC5+QOE1ZQ6MTsgAE5RjFy2fctphXJi/Z9VuTcSgakSYuy+0QbPCfuwL5CaTVk=,iv:8qwCqjVALlaxJCAfZURpt7c6/3b9KKar7mtsYb3/rlw=,tag:utHZLe3FojSmyvBBIzfY2A==,type:str]
|
||||
lastmodified: "2026-03-06T21:55:34Z"
|
||||
mac: ENC[AES256_GCM,data:kkEZI0Of8KUpGJRoGAD3gXCtNz44Sucki4Fk2lQ55o+IcBYtxJwwpoQH3usihSigaPquee4XAxhdlWyHt7S46Q9dTFXjT9IUpnxrlG0ZQOnTRbdRlT2qcxLSlghdDWRuezhjT5KWFqlq4Av85KmL7kiB7LAkPVk6EERHJuFsWR8=,iv:Y3wd4hP1ui3rtXe++3j1oAKYbd8V4cc0SBLOlcyl5Zc=,tag:/FK8R28WAWDhWImMnm6wQg==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.11.0
|
||||
version: 3.12.1
|
||||
|
||||
Reference in New Issue
Block a user