Compare commits
1 commit
main
...
stylix-fix
| Author | SHA1 | Date | |
|---|---|---|---|
| e4839e4d2e |
52 changed files with 923 additions and 1058 deletions
1
.envrc
Normal file
1
.envrc
Normal file
|
|
@ -0,0 +1 @@
|
|||
use flake "git+https://git.lillianviolet.dev/Lillian-Violet/dev-templates.git?dir=nix"
|
||||
13
README.md
13
README.md
|
|
@ -46,16 +46,6 @@ To test if your build succeeds the basic checks and can start building the artif
|
|||
|
||||
Note: this does not build the full configuration, and errors might still happen in deployment, especially for dependencies that rely on external services like webservers to be called. For obvious reasons the test building does not actually pull in all the artifacts, and does not make external calls aside from to the package files (You will need a built nix store, or a connection to the git repository that hosts your packages, like an internet connection to github, to make the test run)
|
||||
|
||||
## Post installation
|
||||
|
||||
I have made a few commands for post installation (and for an iso installer to use) that make life a bit easier, they are automatically added to the [$PATH](https://en.wikipedia.org/wiki/PATH_(variable)). The commands will automatically inhibit sleep and standby so you don't have to worry about them getting interrupted.
|
||||
| Command | Effect |
|
||||
| ------------- | ------------- |
|
||||
| rebuild | Use the latest version of the repo and do a nixos-rebuild switch on it to upgrade your system. |
|
||||
| update | Update the flake lock in the repo, run a test to see if nothing breaks, and then push the flake lock update done to the repo. |
|
||||
| upgrade | Run update and rebuild one after the other, useful for a quick upgrade. |
|
||||
| install | Run a script that automatically lets you select a host to format the disks with disko, install nixos on that disk, and deploy the entire configuration. (useful for instal USBs) |
|
||||
|
||||
## Technical details
|
||||
|
||||
### [Home manager](https://github.com/nix-community/home-manager)
|
||||
|
|
@ -67,6 +57,3 @@ The secrets are managed in sops files within the hosts folders, there is only on
|
|||
``nix-shell -p sops --run "sops ./nixos/hosts/<hostname>/secrets/sops.yaml"``
|
||||
|
||||
This requires your system to have the keyfile available for sops to use, by default sops looks in the sops/age folder in your user folder for a keys.txt file with the private key. You can change this behaviour by setting the **\$SOPS_AGE_KEY_FILE** environment variable, or setting the **\$SOPS_AGE_KEY** environment variable to the key itself.
|
||||
|
||||
### [Just](https://github.com/casey/just)
|
||||
This repo uses just as a command runner for setting up and building the nixos files more easily. The programs needed to run all the commands are nix, just, and nom (nix output monitor). The commands you can use can be found in the justfile (named justfile in the root of this repo). This is purely for convenience, it doesn't add anything you could not manually do, it just automates a lot of steps.
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
disko.devices = {
|
||||
disk = {
|
||||
main = {
|
||||
sda1 = {
|
||||
type = "disk";
|
||||
device = "/dev/disk/by-path/pci-0000:01:00.0-nvme-1";
|
||||
device = "/dev/disk/by-path/pci-0000:06:00.0-ata-6";
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
|
|
@ -14,14 +14,16 @@
|
|||
type = "filesystem";
|
||||
format = "vfat";
|
||||
mountpoint = "/boot";
|
||||
mountOptions = [ "umask=0077" ];
|
||||
mountOptions = [
|
||||
"defaults"
|
||||
];
|
||||
};
|
||||
};
|
||||
nvme_luks = {
|
||||
luks = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "luks";
|
||||
name = "nvme_crypted";
|
||||
name = "crypted";
|
||||
extraOpenArgs = [];
|
||||
settings = {
|
||||
# if you want to use the key for interactive login be sure there is no trailing newline
|
||||
|
|
@ -29,30 +31,47 @@
|
|||
#keyFile = "/tmp/secret.key";
|
||||
allowDiscards = true;
|
||||
};
|
||||
#additionalKeyFiles = ["/tmp/additionalSecret.key"];
|
||||
content = {
|
||||
type = "lvm_pv";
|
||||
vg = "nvme_pool";
|
||||
vg = "pool";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
#sdc = {
|
||||
#device = "/dev/disk/by-path/pci-0000:06:00.0-ata-2";
|
||||
#type = "disk";
|
||||
#content = {
|
||||
#type = "gpt";
|
||||
#partitions = {
|
||||
#root = {
|
||||
#size = "100%";
|
||||
#content = {
|
||||
#type = "filesystem";
|
||||
#format = "ext4";
|
||||
#mountpoint = "/media";
|
||||
#};
|
||||
#};
|
||||
#};
|
||||
#};
|
||||
#};
|
||||
};
|
||||
lvm_vg = {
|
||||
nvme_pool = {
|
||||
pool = {
|
||||
type = "lvm_vg";
|
||||
lvs = {
|
||||
nvme_swap = {
|
||||
size = "32G";
|
||||
swap = {
|
||||
size = "16G";
|
||||
content = {
|
||||
type = "swap";
|
||||
discardPolicy = "both";
|
||||
resumeDevice = true; # resume from hiberation from this device
|
||||
};
|
||||
};
|
||||
nvme_root = {
|
||||
size = "100%";
|
||||
root = {
|
||||
size = "100%FREE";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "ext4";
|
||||
|
|
@ -65,5 +84,13 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
nodev = {
|
||||
"/home/lillian/Downloads" = {
|
||||
fsType = "tmpfs";
|
||||
mountOptions = [
|
||||
"size=4G"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
515
flake.lock
generated
515
flake.lock
generated
|
|
@ -5,11 +5,11 @@
|
|||
"fromYaml": "fromYaml"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1755819240,
|
||||
"narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
|
||||
"lastModified": 1732200724,
|
||||
"narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
|
||||
"rev": "153d52373b0fb2d343592871009a286ec8837aec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -21,28 +21,27 @@
|
|||
"base16-fish": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1754405784,
|
||||
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
|
||||
"lastModified": 1622559957,
|
||||
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-helix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1752979451,
|
||||
"narHash": "sha256-0CQM+FkYy0fOO/sMGhOoNL80ftsAzYCg9VhIrodqusM=",
|
||||
"lastModified": 1736852337,
|
||||
"narHash": "sha256-esD42YdgLlEh7koBrSqcT7p2fsMctPAcGl/+2sYJa2o=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"rev": "27cf1e66e50abc622fb76a3019012dc07c678fac",
|
||||
"rev": "03860521c40b0b9c04818f2218d9cc9efc21e7a5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -68,6 +67,33 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"bcachefs-tools": {
|
||||
"inputs": {
|
||||
"crane": "crane",
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-parts": [
|
||||
"flake-parts"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742852783,
|
||||
"narHash": "sha256-pgpFoMc1RGGSyOGJikcXzsQND7VQ1/ywTwFa537b/hQ=",
|
||||
"owner": "koverstreet",
|
||||
"repo": "bcachefs-tools",
|
||||
"rev": "6657ce2de3cdb25b14fb0183b90366e3e577fb9a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "koverstreet",
|
||||
"repo": "bcachefs-tools",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"blobs": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
|
@ -89,11 +115,11 @@
|
|||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762198582,
|
||||
"narHash": "sha256-P9giW/1Crn7ekQt4YIbONJ/hKFaHkTwyhz82FCjh+OM=",
|
||||
"lastModified": 1742599566,
|
||||
"narHash": "sha256-xr6ntmiUPXSh9o9mJ7og9vxALMQs1EQhIhWUAO2D1M0=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"rev": "08716214674ca27914daa52e6fa809cc022b581e",
|
||||
"rev": "5e303e8d7e251868fa79f83bbda69da90aa62402",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -104,11 +130,11 @@
|
|||
},
|
||||
"crane": {
|
||||
"locked": {
|
||||
"lastModified": 1754269165,
|
||||
"narHash": "sha256-0tcS8FHd4QjbCVoxN9jI+PjHgA4vc/IjkUSp+N3zy0U=",
|
||||
"lastModified": 1742394900,
|
||||
"narHash": "sha256-vVOAp9ahvnU+fQoKd4SEXB2JG2wbENkpqcwlkIXgUC0=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "444e81206df3f7d92780680e45858e31d2f07a08",
|
||||
"rev": "70947c1908108c0c551ddfd73d4f750ff2ea67cd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -119,11 +145,26 @@
|
|||
},
|
||||
"crane_2": {
|
||||
"locked": {
|
||||
"lastModified": 1754269165,
|
||||
"narHash": "sha256-0tcS8FHd4QjbCVoxN9jI+PjHgA4vc/IjkUSp+N3zy0U=",
|
||||
"lastModified": 1741148495,
|
||||
"narHash": "sha256-EV8KUaIZ2/CdBXlutXrHoZYbWPeB65p5kKZk71gvDRI=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "444e81206df3f7d92780680e45858e31d2f07a08",
|
||||
"rev": "75390a36cd0c2cdd5f1aafd8a9f827d7107f2e53",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"crane_3": {
|
||||
"locked": {
|
||||
"lastModified": 1739053031,
|
||||
"narHash": "sha256-LrMDRuwAlRFD2T4MgBSRd1s2VtOE+Vl1oMCNu3RpPE0=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "112e6591b2d6313b1bd05a80a754a8ee42432a7e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -139,11 +180,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761899396,
|
||||
"narHash": "sha256-XOpKBp6HLzzMCbzW50TEuXN35zN5WGQREC7n34DcNMM=",
|
||||
"lastModified": 1741786315,
|
||||
"narHash": "sha256-VT65AE2syHVj6v/DGB496bqBnu1PXrrzwlw07/Zpllc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"rev": "6f4cf5abbe318e4cd1e879506f6eeafd83f7b998",
|
||||
"rev": "0d8c6ad4a43906d14abd5c60e0ffe7b587b213de",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -155,11 +196,11 @@
|
|||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1758112371,
|
||||
"narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
|
||||
"lastModified": 1741628778,
|
||||
"narHash": "sha256-RsvHGNTmO2e/eVfgYK7g+eYEdwwh7SbZa+gZkT24MEA=",
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
|
||||
"rev": "5a81d390bb64afd4e81221749ec4bffcbeb5fa80",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -171,11 +212,11 @@
|
|||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1747046372,
|
||||
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -187,11 +228,42 @@
|
|||
"flake-compat_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1761588595,
|
||||
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_3": {
|
||||
"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_4": {
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -207,11 +279,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762040540,
|
||||
"narHash": "sha256-z5PlZ47j50VNF3R+IMS9LmzI5fYRGY/Z5O5tol1c9I4=",
|
||||
"lastModified": 1741352980,
|
||||
"narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "0010412d62a25d959151790968765a70c436598b",
|
||||
"rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -228,11 +300,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754091436,
|
||||
"narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=",
|
||||
"lastModified": 1740872218,
|
||||
"narHash": "sha256-ZaMw0pdoUKigLpv9HiNDH2Pjnosg7NBYMJlHTIsHEUo=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd",
|
||||
"rev": "3876f6b87db82f33775b1ef5ea343986105db764",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -245,15 +317,16 @@
|
|||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"stylix",
|
||||
"nur",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1756770412,
|
||||
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||
"lastModified": 1733312601,
|
||||
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -281,6 +354,27 @@
|
|||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": [
|
||||
"stylix",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
},
|
||||
|
|
@ -317,21 +411,21 @@
|
|||
"git-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"simple-nixos-mailserver",
|
||||
"stylix",
|
||||
"flake-compat"
|
||||
],
|
||||
"gitignore": "gitignore_2",
|
||||
"nixpkgs": [
|
||||
"simple-nixos-mailserver",
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760663237,
|
||||
"narHash": "sha256-BflA6U4AM1bzuRMR8QqzPXqh8sWVCNDzOdsxXEguJIc=",
|
||||
"lastModified": 1741379162,
|
||||
"narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "ca5b894d3e3e151ffc1db040b6ce4dcc75d31c37",
|
||||
"rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -365,7 +459,7 @@
|
|||
"gitignore_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"simple-nixos-mailserver",
|
||||
"stylix",
|
||||
"git-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
|
|
@ -387,16 +481,16 @@
|
|||
"gnome-shell": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1748186689,
|
||||
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
|
||||
"lastModified": 1732369855,
|
||||
"narHash": "sha256-JhUWbcYPjHO3Xs3x9/Z9RuqXbcp5yhPluGjwsdE2GMg=",
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
|
||||
"rev": "dadd58f630eeea41d645ee225a63f719390829dc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "GNOME",
|
||||
"ref": "48.2",
|
||||
"ref": "47.2",
|
||||
"repo": "gnome-shell",
|
||||
"type": "github"
|
||||
}
|
||||
|
|
@ -408,11 +502,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762228452,
|
||||
"narHash": "sha256-Y5950vzoyJ8+u4U6dlI/2VEbf3JQnIJsmRWWWcsgpRg=",
|
||||
"lastModified": 1742851132,
|
||||
"narHash": "sha256-8vEcDefstheV1whup+5fSpZu4g9Jr7WpYzOBKAMSHn4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "aa6936bb637e46a49cf1292486200ba41dd4bcf7",
|
||||
"rev": "c4d5d72805d14ea43c140eeb70401bf84c0f11b4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -422,17 +516,38 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741635347,
|
||||
"narHash": "sha256-2aYfV44h18alHXopyfL4D9GsnpE5XlSVkp4MGe586VU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "7fb8678716c158642ac42f9ff7a18c0800fea551",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"jovian": {
|
||||
"inputs": {
|
||||
"nix-github-actions": "nix-github-actions",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761748321,
|
||||
"narHash": "sha256-hD5mVzmUeyVppjArdy2uVdQe/CQUR9i3WgZB05onE7A=",
|
||||
"lastModified": 1742465245,
|
||||
"narHash": "sha256-gpjtkoeq5Ye9J8GoR+rWg3NL4bbEtcLvvF4nN6MtxdU=",
|
||||
"owner": "Jovian-Experiments",
|
||||
"repo": "Jovian-NixOS",
|
||||
"rev": "533db5857c9e00ca352558a928417116ee08a824",
|
||||
"rev": "a95606cae5c9e1f5b84debe7865ef171d4deb287",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -443,19 +558,19 @@
|
|||
},
|
||||
"lanzaboote": {
|
||||
"inputs": {
|
||||
"crane": "crane",
|
||||
"flake-compat": "flake-compat",
|
||||
"crane": "crane_2",
|
||||
"flake-compat": "flake-compat_2",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
|
||||
"rust-overlay": "rust-overlay"
|
||||
"rust-overlay": "rust-overlay_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762205063,
|
||||
"narHash": "sha256-If6vQ+KvtKs3ARBO9G3l+4wFSCYtRBrwX1z+I+B61wQ=",
|
||||
"lastModified": 1741442524,
|
||||
"narHash": "sha256-tVcxLDLLho8dWcO81Xj/3/ANLdVs0bGyCPyKjp70JWk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "lanzaboote",
|
||||
"rev": "88b8a563ff5704f4e8d8e5118fb911fa2110ca05",
|
||||
"rev": "d8099586d9a84308ffedac07880e7f07a0180ff4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -493,11 +608,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762055842,
|
||||
"narHash": "sha256-Pu1v3mlFhRzZiSxVHb2/i/f5yeYyRNqr0RvEUJ4UgHo=",
|
||||
"lastModified": 1742701275,
|
||||
"narHash": "sha256-AulwPVrS9859t+eJ61v24wH/nfBEIDSXYxlRo3fL/SA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-index-database",
|
||||
"rev": "359ff6333a7b0b60819d4c20ed05a3a1f726771f",
|
||||
"rev": "36dc43cb50d5d20f90a28d53abb33a32b0a2aae6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -529,11 +644,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1751903740,
|
||||
"narHash": "sha256-PeSkNMvkpEvts+9DjFiop1iT2JuBpyknmBUs0Un0a4I=",
|
||||
"lastModified": 1742568034,
|
||||
"narHash": "sha256-QaMEhcnscfF2MqB7flZr+sLJMMYZPnvqO4NYf9B4G38=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-generators",
|
||||
"rev": "032decf9db65efed428afd2fa39d80f7089085eb",
|
||||
"rev": "42ee229088490e3777ed7d1162cb9e9d8c3dbb11",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -544,11 +659,11 @@
|
|||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1762179181,
|
||||
"narHash": "sha256-T4+TNfXlF/gHbcNCC2HY7sMGBKgqNzyYeMBWmcbH7/o=",
|
||||
"lastModified": 1742806253,
|
||||
"narHash": "sha256-zvQ4GsCJT6MTOzPKLmlFyM+lxo0JGQ0cSFaZSACmWfY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "256770618502d2eda892af3ae91da5e386ce9586",
|
||||
"rev": "ecaa2d911e77c265c2a5bac8b583c40b0f151726",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -560,11 +675,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1761672384,
|
||||
"narHash": "sha256-o9KF3DJL7g7iYMZq9SWgfS1BFlNbsm6xplRjVlOCkXI=",
|
||||
"lastModified": 1742288794,
|
||||
"narHash": "sha256-Txwa5uO+qpQXrNG4eumPSD+hHzzYi/CdaM80M9XRLCo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "08dacfca559e1d7da38f3cf05f1f45ee9bfd213c",
|
||||
"rev": "b6eaf97c6960d97350c584de1b6dcff03c9daf42",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -574,29 +689,28 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-25_05": {
|
||||
"nixpkgs-24_11": {
|
||||
"locked": {
|
||||
"lastModified": 1761999846,
|
||||
"narHash": "sha256-IYlYnp4O4dzEpL77BD/lj5NnJy2J8qbHkNSFiPBCbqo=",
|
||||
"lastModified": 1734083684,
|
||||
"narHash": "sha256-5fNndbndxSx5d+C/D0p/VF32xDiJCJzyOqorOYW4JEo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3de8f8d73e35724bf9abef41f1bdbedda1e14a31",
|
||||
"rev": "314e12ba369ccdb9b352a4db26ff419f7c49fa84",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-25.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
"id": "nixpkgs",
|
||||
"ref": "nixos-24.11",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs-edge": {
|
||||
"locked": {
|
||||
"lastModified": 1762250068,
|
||||
"narHash": "sha256-bWfDQg/j6q68T6X0RtT4UrgaLue5u3JVBr6bDoi2ZXw=",
|
||||
"lastModified": 1742855907,
|
||||
"narHash": "sha256-7njF0f8vk19p0cCYP+9EgYWT2RPCTSD822Yi41THKcs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "780a54edb3810c2d7d97f4cbf6ae8aa32f93d2b8",
|
||||
"rev": "d395b30f4825e4bfbc31ed2fbd06162da496217e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -607,11 +721,11 @@
|
|||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1762111121,
|
||||
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
|
||||
"lastModified": 1742669843,
|
||||
"narHash": "sha256-G5n+FOXLXcRx+3hCJ6Rt6ZQyF1zqQ0DL0sWAMn2Nk0w=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
|
||||
"rev": "1e5b653dff12029333a6546c11e108ede13052eb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -623,11 +737,11 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1756125398,
|
||||
"narHash": "sha256-XexyKZpf46cMiO5Vbj+dWSAXOnr285GHsMch8FBoHbc=",
|
||||
"lastModified": 1739214665,
|
||||
"narHash": "sha256-26L8VAu3/1YRxS8MHgBOyOM8xALdo6N0I04PgorE7UM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3b9f00d7a7bf68acd4c4abb9d43695afb04e03a5",
|
||||
"rev": "64e75cd44acf21c7933d61d7721e812eac1b5a0a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -639,11 +753,11 @@
|
|||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1754243818,
|
||||
"narHash": "sha256-sEPw2W01UPf0xNGnMGNZIaE1XHkk7O+lLLetYEXVZHk=",
|
||||
"lastModified": 1741241576,
|
||||
"narHash": "sha256-/mxmUVd+AE2bTmulNfM7yICocUvavlFQHcMYK67z3qI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c460617dfb709a67d18bb31e15e455390ee4ee1c",
|
||||
"rev": "ffe8d1b1030b5de6eba761102ee34b6e41d040ee",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -655,11 +769,11 @@
|
|||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1762111121,
|
||||
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
|
||||
"lastModified": 1742669843,
|
||||
"narHash": "sha256-G5n+FOXLXcRx+3hCJ6Rt6ZQyF1zqQ0DL0sWAMn2Nk0w=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
|
||||
"rev": "1e5b653dff12029333a6546c11e108ede13052eb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -671,27 +785,26 @@
|
|||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1762111121,
|
||||
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
|
||||
"lastModified": 1732014248,
|
||||
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
|
||||
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"id": "nixpkgs",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1760596604,
|
||||
"narHash": "sha256-J/i5K6AAz/y5dBePHQOuzC7MbhyTOKsd/GLezSbEFiM=",
|
||||
"lastModified": 1742578646,
|
||||
"narHash": "sha256-GiQ40ndXRnmmbDZvuv762vS+gew1uDpFwOfgJ8tLiEs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3cbe716e2346710d6e1f7c559363d14e11c32a43",
|
||||
"rev": "94c4dbe77c0740ebba36c173672ca15a7926c993",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -703,11 +816,11 @@
|
|||
},
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1758690382,
|
||||
"narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
|
||||
"lastModified": 1741513245,
|
||||
"narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e643668fd71b949c53f8626614b21ff71a07379d",
|
||||
"rev": "e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -719,11 +832,11 @@
|
|||
},
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1754800730,
|
||||
"narHash": "sha256-HfVZCXic9XLBgybP0318ym3cDnGwBs/+H5MgxFVYF4I=",
|
||||
"lastModified": 1739138025,
|
||||
"narHash": "sha256-M4ilIfGxzbBZuURokv24aqJTbdjPA9K+DtKUzrJaES4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "641d909c4a7538f1539da9240dedb1755c907e40",
|
||||
"rev": "b2243f41e860ac85c0b446eadc6930359b294e79",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -735,21 +848,19 @@
|
|||
},
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": [
|
||||
"stylix",
|
||||
"flake-parts"
|
||||
],
|
||||
"flake-parts": "flake-parts_3",
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
],
|
||||
"treefmt-nix": "treefmt-nix_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1758998580,
|
||||
"narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
|
||||
"lastModified": 1741693509,
|
||||
"narHash": "sha256-emkxnsZstiJWmGACimyAYqIKz2Qz5We5h1oBVDyQjLw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
|
||||
"rev": "5479646b2574837f1899da78bdf9a48b75a9fb27",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -768,11 +879,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762115864,
|
||||
"narHash": "sha256-KREKZiBAkAnqJC+jvY+vSbLlrg8j6DFEU7Lv+tgOlHI=",
|
||||
"lastModified": 1742765550,
|
||||
"narHash": "sha256-2vVIh2JrL6GAGfgCeY9e6iNKrBjs0Hw3bGQEAbwVs68=",
|
||||
"owner": "pjones",
|
||||
"repo": "plasma-manager",
|
||||
"rev": "8e9e76efa3cc811c230512b40d8cfde06e40da5b",
|
||||
"rev": "b70be387276e632fe51232887f9e04e2b6ef8c16",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -794,11 +905,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1750779888,
|
||||
"narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
|
||||
"lastModified": 1740915799,
|
||||
"narHash": "sha256-JvQvtaphZNmeeV+IpHgNdiNePsIpHD5U/7QN5AeY44A=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
|
||||
"rev": "42b1ba089d2034d910566bf6b40830af6b8ec732",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -809,6 +920,7 @@
|
|||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"bcachefs-tools": "bcachefs-tools",
|
||||
"catppuccin": "catppuccin",
|
||||
"disko": "disko",
|
||||
"flake-parts": "flake-parts",
|
||||
|
|
@ -832,16 +944,16 @@
|
|||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"lanzaboote",
|
||||
"bcachefs-tools",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761791894,
|
||||
"narHash": "sha256-myRIDh+PxaREz+z9LzbqBJF+SnTFJwkthKDX9zMyddY=",
|
||||
"lastModified": 1742524367,
|
||||
"narHash": "sha256-KzTwk/5ETJavJZYV1DEWdCx05M4duFCxCpRbQSKWpng=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "59c45eb69d9222a4362673141e00ff77842cd219",
|
||||
"rev": "70bf752d176b2ce07417e346d85486acea9040ef",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -851,6 +963,27 @@
|
|||
}
|
||||
},
|
||||
"rust-overlay_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"lanzaboote",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741228283,
|
||||
"narHash": "sha256-VzqI+k/eoijLQ5am6rDFDAtFAbw8nltXfLBC6SIEJAE=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "38e9826bc4296c9daf18bc1e6aa299f3e932a403",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"rust-overlay_3": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"zjstatus",
|
||||
|
|
@ -858,11 +991,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754880555,
|
||||
"narHash": "sha256-tG6l0wiX8V8IvG4HFYY8IYN5vpNAxQ+UWunjjpE6SqU=",
|
||||
"lastModified": 1739240901,
|
||||
"narHash": "sha256-YDtl/9w71m5WcZvbEroYoWrjECDhzJZLZ8E68S3BYok=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "17c591a44e4eb77f05f27cd37e1cfc3f219c7fc4",
|
||||
"rev": "03473e2af8a4b490f4d2cdb2e4d3b75f82c8197c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -874,17 +1007,16 @@
|
|||
"simple-nixos-mailserver": {
|
||||
"inputs": {
|
||||
"blobs": "blobs",
|
||||
"flake-compat": "flake-compat_2",
|
||||
"git-hooks": "git-hooks",
|
||||
"flake-compat": "flake-compat_3",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nixpkgs-25_05": "nixpkgs-25_05"
|
||||
"nixpkgs-24_11": "nixpkgs-24_11"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762215676,
|
||||
"narHash": "sha256-5dDnedKkUIo8qqHbCL+tAPSMcQNQMp0evS6+dH4AoUA=",
|
||||
"lastModified": 1742413977,
|
||||
"narHash": "sha256-NkhM9GVu3HL+MiXtGD0TjuPCQ4GFVJPBZ8KyI2cFDGU=",
|
||||
"owner": "simple-nixos-mailserver",
|
||||
"repo": "nixos-mailserver",
|
||||
"rev": "82c22259140dcfa67e97f761eb9423382c9d449b",
|
||||
"rev": "b4fbffe79c00f19be94b86b4144ff67541613659",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -899,11 +1031,11 @@
|
|||
"nixpkgs": "nixpkgs_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1760998189,
|
||||
"narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=",
|
||||
"lastModified": 1742700801,
|
||||
"narHash": "sha256-ZGlpUDsuBdeZeTNgoMv+aw0ByXT2J3wkYw9kJwkAS4M=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3",
|
||||
"rev": "67566fe68a8bed2a7b1175fdfb0697ed22ae8852",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -919,8 +1051,11 @@
|
|||
"base16-helix": "base16-helix",
|
||||
"base16-vim": "base16-vim",
|
||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"git-hooks": "git-hooks",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"home-manager": "home-manager_2",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nur": "nur",
|
||||
"systems": "systems_2",
|
||||
|
|
@ -931,15 +1066,15 @@
|
|||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762101397,
|
||||
"narHash": "sha256-wGiL2K3kAyBBmIZpJEskaSIgyzzpg0zwfvri+Sy6/CI=",
|
||||
"owner": "nix-community",
|
||||
"lastModified": 1742855382,
|
||||
"narHash": "sha256-C/aBeGktWiRg2EoSc0Aug8v+cZirSkyoVtMx1P0Dex0=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "8c0640d5722a02178c8ee80a62c5f019cab4b3c1",
|
||||
"rev": "5321ab0c763caa786c9756a8e8e85d1c35a8e650",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"type": "github"
|
||||
}
|
||||
|
|
@ -1009,27 +1144,28 @@
|
|||
"tinted-kitty": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1735730497,
|
||||
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
||||
"lastModified": 1716423189,
|
||||
"narHash": "sha256-2xF3sH7UIwegn+2gKzMpFi3pk5DlIlM18+vj17Uf82U=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
||||
"rev": "eb39e141db14baef052893285df9f266df041ff8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"rev": "eb39e141db14baef052893285df9f266df041ff8",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757716333,
|
||||
"narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
|
||||
"lastModified": 1741468895,
|
||||
"narHash": "sha256-YKM1RJbL68Yp2vESBqeZQBjTETXo8mCTTzLZyckCfZk=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
|
||||
"rev": "47c8c7726e98069cade5827e5fb2bfee02ce6991",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1041,11 +1177,11 @@
|
|||
"tinted-tmux": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757811970,
|
||||
"narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
|
||||
"lastModified": 1740877430,
|
||||
"narHash": "sha256-zWcCXgdC4/owfH/eEXx26y5BLzTrefjtSLFHWVD5KxU=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
|
||||
"rev": "d48ee86394cbe45b112ba23ab63e33656090edb4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1057,11 +1193,11 @@
|
|||
"tinted-zed": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757811247,
|
||||
"narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
|
||||
"lastModified": 1725758778,
|
||||
"narHash": "sha256-8P1b6mJWyYcu36WRlSVbuj575QWIFZALZMTg5ID/sM4=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
|
||||
"rev": "122c9e5c0e6f27211361a04fae92df97940eccf9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1070,19 +1206,62 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zjstatus": {
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"crane": "crane_2",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"rust-overlay": "rust-overlay_2"
|
||||
"nixpkgs": [
|
||||
"bcachefs-tools",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761162625,
|
||||
"narHash": "sha256-cJD5RccT5aFwLFiId8PW91z39MpoQZIymj+qZEJ5jTE=",
|
||||
"lastModified": 1742370146,
|
||||
"narHash": "sha256-XRE8hL4vKIQyVMDXykFh4ceo3KSpuJF3ts8GKwh5bIU=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "adc195eef5da3606891cedf80c0d9ce2d3190808",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nur",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1733222881,
|
||||
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zjstatus": {
|
||||
"inputs": {
|
||||
"crane": "crane_3",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"rust-overlay": "rust-overlay_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741803511,
|
||||
"narHash": "sha256-DcCGBWvAvt+OWI+EcPRO+/IXZHkFgPxZUmxf2VLl8no=",
|
||||
"owner": "dj95",
|
||||
"repo": "zjstatus",
|
||||
"rev": "a4bb655af8f49fe53de7fefca54348de21ecbbb2",
|
||||
"rev": "df9c77718f7023de8406e593eda6b5b0bc09cddd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
|||
52
flake.nix
52
flake.nix
|
|
@ -13,11 +13,11 @@
|
|||
disko.url = "github:nix-community/disko";
|
||||
disko.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
# bcachefs-tools = {
|
||||
# url = "github:koverstreet/bcachefs-tools";
|
||||
# inputs.nixpkgs.follows = "nixpkgs";
|
||||
# inputs.flake-parts.follows = "flake-parts";
|
||||
# };
|
||||
bcachefs-tools = {
|
||||
url = "github:koverstreet/bcachefs-tools";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-parts.follows = "flake-parts";
|
||||
};
|
||||
|
||||
flake-parts = {
|
||||
url = "github:hercules-ci/flake-parts"; # Flake parts for easy flake management
|
||||
|
|
@ -33,7 +33,11 @@
|
|||
# catpuccin theme
|
||||
catppuccin.url = "github:catppuccin/nix";
|
||||
|
||||
# Conduwuit fork after it shut down
|
||||
# Conduit fork without all the fuss and drama
|
||||
# conduwuit = {
|
||||
# url = "github:girlbossceo/conduwuit";
|
||||
# inputs.nixpkgs.follows = "nixpkgs";
|
||||
# };
|
||||
|
||||
# Nix index database files
|
||||
nix-index-database.url = "github:nix-community/nix-index-database";
|
||||
|
|
@ -75,7 +79,7 @@
|
|||
# Add any other flake you might need
|
||||
# hardware.url = "github:nixos/nixos-hardware";
|
||||
# Stylix theming engine
|
||||
stylix.url = "github:nix-community/stylix";
|
||||
stylix.url = "github:danth/stylix";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
|
|
@ -95,15 +99,10 @@
|
|||
jovian,
|
||||
nixos-hardware,
|
||||
nix-index-database,
|
||||
# conduwuit,
|
||||
stylix,
|
||||
...
|
||||
} @ inputs: let
|
||||
supportedSystems = ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"];
|
||||
forEachSupportedSystem = f:
|
||||
nixpkgs.lib.genAttrs supportedSystems (system:
|
||||
f {
|
||||
pkgs = import nixpkgs {inherit system;};
|
||||
});
|
||||
inherit (self) outputs;
|
||||
inherit (inputs) nixpkgs-edge;
|
||||
# Supported systems for your flake packages, shell, etc.
|
||||
|
|
@ -130,10 +129,9 @@
|
|||
catppuccin.nixosModules.catppuccin
|
||||
stylix.nixosModules.stylix
|
||||
nix-index-database.nixosModules.nix-index
|
||||
{programs.nix-index-database.comma.enable = true;}
|
||||
{
|
||||
home-manager.sharedModules = [
|
||||
catppuccin.homeModules.catppuccin
|
||||
inputs.catppuccin.homeModules.catppuccin
|
||||
./home-manager/shared
|
||||
sops-nix.homeManagerModules.sops
|
||||
];
|
||||
|
|
@ -144,18 +142,12 @@
|
|||
./nixos/desktop
|
||||
{
|
||||
home-manager.sharedModules = [
|
||||
inputs.plasma-manager.homeModules.plasma-manager
|
||||
inputs.plasma-manager.homeManagerModules.plasma-manager
|
||||
./home-manager/desktop
|
||||
];
|
||||
}
|
||||
];
|
||||
in {
|
||||
devShells = forEachSupportedSystem ({pkgs}: {
|
||||
default = pkgs.mkShell {
|
||||
packages = with pkgs; [nom just git];
|
||||
};
|
||||
});
|
||||
|
||||
# Your custom packages
|
||||
# Accessible through 'nix build', 'nix shell', etc
|
||||
packages = forAllSystems (system:
|
||||
|
|
@ -180,18 +172,6 @@
|
|||
# NixOS configuration entrypoint
|
||||
# Available through 'nixos-rebuild --flake .#your-hostname'
|
||||
nixosConfigurations = {
|
||||
# nixIso = nixpkgs.lib.nixosSystem {
|
||||
# system = "x86_64-linux";
|
||||
# specialArgs = {inherit inputs outputs;};
|
||||
# modules =
|
||||
# sharedModules
|
||||
# ++ desktopModules
|
||||
# ++ [
|
||||
# ./nixos/hosts/iso/configuration.nix
|
||||
# "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-base.nix"
|
||||
# ];
|
||||
# };
|
||||
|
||||
EDI = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = {inherit inputs outputs;};
|
||||
|
|
@ -240,7 +220,6 @@
|
|||
specialArgs = {inherit inputs outputs;};
|
||||
modules =
|
||||
sharedModules
|
||||
++ desktopModules
|
||||
++ [
|
||||
{_module.args = {inherit pkgs-edge;};}
|
||||
# > Our main nixos configuration file <
|
||||
|
|
@ -249,7 +228,7 @@
|
|||
jovian.nixosModules.jovian
|
||||
{
|
||||
home-manager.sharedModules = [
|
||||
inputs.plasma-manager.homeModules.plasma-manager
|
||||
inputs.plasma-manager.homeManagerModules.plasma-manager
|
||||
];
|
||||
}
|
||||
];
|
||||
|
|
@ -261,7 +240,6 @@
|
|||
modules =
|
||||
sharedModules
|
||||
++ [
|
||||
{_module.args = {inherit pkgs-edge;};}
|
||||
./nixos/hosts/wheatley/configuration.nix
|
||||
];
|
||||
};
|
||||
|
|
|
|||
|
|
@ -13,8 +13,8 @@
|
|||
|
||||
# You can also split up your configuration and import pieces of it here:
|
||||
# ./nvim.nix
|
||||
./package-configs/plasma-desktop
|
||||
./package-configs/firefox
|
||||
./package-configs/plasma-desktop.nix
|
||||
./package-configs/firefox.nix
|
||||
./package-configs/konsole
|
||||
./package-configs/foot
|
||||
./package-configs/freetube
|
||||
|
|
@ -135,10 +135,6 @@
|
|||
source = config.lib.file.mkOutOfStoreSymlink "/home/lillian/.mozilla/firefox";
|
||||
target = ".floorp";
|
||||
};
|
||||
librewolf = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "/home/lillian/.mozilla/firefox";
|
||||
target = ".librewolf";
|
||||
};
|
||||
};
|
||||
|
||||
# Add stuff for your user as you see fit:
|
||||
|
|
@ -150,8 +146,8 @@
|
|||
direnv
|
||||
git
|
||||
git-credential-manager
|
||||
git-credential-manager
|
||||
ruff
|
||||
devtoolbox
|
||||
|
||||
# Chat applications:
|
||||
signal-desktop
|
||||
|
|
@ -169,7 +165,7 @@
|
|||
fcast-client
|
||||
|
||||
# Office applications:
|
||||
onlyoffice-desktopeditors
|
||||
onlyoffice-bin
|
||||
gimp
|
||||
thunderbird
|
||||
|
||||
|
|
@ -178,8 +174,8 @@
|
|||
flameshot
|
||||
fzf
|
||||
nextcloud-client
|
||||
# nitrokey-app
|
||||
# protonvpn-gui
|
||||
nitrokey-app
|
||||
protonvpn-gui
|
||||
virtualbox
|
||||
#watchmate
|
||||
qbittorrent
|
||||
|
|
@ -202,6 +198,7 @@
|
|||
|
||||
# Web browsing:
|
||||
firefoxpwa
|
||||
firefoxpwa
|
||||
ungoogled-chromium
|
||||
];
|
||||
};
|
||||
|
|
@ -237,11 +234,9 @@
|
|||
home-manager.enable = true;
|
||||
git = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user = {
|
||||
name = "Lillian-Violet";
|
||||
email = "git@lillianviolet.dev";
|
||||
};
|
||||
userEmail = "git@lillianviolet.dev";
|
||||
userName = "Lillian-Violet";
|
||||
extraConfig = {
|
||||
init = {
|
||||
defaultBranch = "main";
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,16 +1,11 @@
|
|||
{pkgs, ...}: {
|
||||
stylix.targets.firefox.profileNames = ["lillian"];
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
nativeMessagingHosts = [pkgs.firefoxpwa];
|
||||
package = pkgs.librewolf;
|
||||
profiles.default = {isDefault = false;};
|
||||
package = pkgs.floorp;
|
||||
profiles.lillian = {
|
||||
isDefault = true;
|
||||
id = 1;
|
||||
settings = {
|
||||
"sidebar.verticalTabs" = true;
|
||||
"sidebar.visibility" = "expand-on-hover";
|
||||
"browser.aboutConfig.showWarning" = false;
|
||||
"browser.bookmarks.addedImportButton" = true;
|
||||
"browser.bookmarks.restore_default_bookmarks" = false;
|
||||
|
|
@ -4,6 +4,7 @@
|
|||
# catppuccin.enable = true;
|
||||
settings = {
|
||||
main = {
|
||||
font = "Atkinson Monolegible:size=12";
|
||||
};
|
||||
|
||||
mouse = {
|
||||
|
|
|
|||
|
|
@ -1,23 +1,4 @@
|
|||
{
|
||||
osConfig,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
#TODO: make the creation of the command file easier, for now this is a nice solution though
|
||||
systemd.user.services."set-kde-connect-commands" = {
|
||||
Install = {
|
||||
WantedBy = ["default.target"];
|
||||
};
|
||||
Service = {
|
||||
Type = "OneShot";
|
||||
ExecStart = "${pkgs.writeShellScript "set-kde-connect-commands" ''
|
||||
#!/run/current-system/sw/bin/bash
|
||||
find ${config.home.homeDirectory}/.config/kdeconnect/ -type d -name \'kdeconnect_runcommand\' -execdir cp ${builtins.toPath ./kde-connect-commands} {}+"/config" \;
|
||||
''}";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
};
|
||||
{osConfig, ...}: {
|
||||
home.file.".config/kdeconnect/config" = {
|
||||
text = ''
|
||||
[General]
|
||||
|
|
@ -28,22 +9,6 @@
|
|||
target = ".config/kdeconnect/config";
|
||||
force = true;
|
||||
};
|
||||
home.file."Games/.directory" = {
|
||||
text = ''
|
||||
[Desktop Entry]
|
||||
Icon=folder-games
|
||||
'';
|
||||
target = "Games/.directory";
|
||||
force = true;
|
||||
};
|
||||
home.file."Code/.directory" = {
|
||||
text = ''
|
||||
[Desktop Entry]
|
||||
Icon=folder-script
|
||||
'';
|
||||
target = "Code/.directory";
|
||||
force = true;
|
||||
};
|
||||
|
||||
programs.plasma = {
|
||||
enable = true;
|
||||
|
|
@ -109,8 +74,6 @@
|
|||
hidden = [
|
||||
"Xwayland Video Bridge_pipewireToXProxy"
|
||||
"org.kde.plasma.devicenotifier"
|
||||
"org.kde.plasma.keyboardindicator"
|
||||
"org.kde.plasma.keyboardlayout"
|
||||
"org.kde.kscreen"
|
||||
"org.kde.plasma.printmanager"
|
||||
"chrome_status_icon_1"
|
||||
|
|
@ -118,9 +81,8 @@
|
|||
"Nitrokey App"
|
||||
"qBittorrent"
|
||||
"vlc"
|
||||
"obs"
|
||||
"steam"
|
||||
"nitrokey-app"
|
||||
"Thunderbird Daily"
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -156,10 +118,10 @@
|
|||
config = {
|
||||
General = {
|
||||
launchers = [
|
||||
"applications:librewolf.desktop"
|
||||
"applications:floorp.desktop"
|
||||
"applications:systemsettings.desktop"
|
||||
"applications:org.kde.dolphin.desktop"
|
||||
"applications:signal.desktop"
|
||||
"applications:signal-desktop.desktop"
|
||||
"applications:vesktop.desktop"
|
||||
"applications:thunderbird.desktop"
|
||||
"applications:cinny.desktop"
|
||||
|
|
@ -257,12 +219,12 @@
|
|||
"mediacontrol"."previousmedia" = "Media Previous";
|
||||
"mediacontrol"."stopmedia" = "Media Stop";
|
||||
"org_kde_powerdevil"."Decrease Keyboard Brightness" = "Keyboard Brightness Down";
|
||||
"org_kde_powerdevil"."Decrease Screen Brightness" = ["Monitor Brightness Down" "Ctrl+Volume Down"];
|
||||
"org_kde_powerdevil"."Decrease Screen Brightness Small" = ["Monitor Brightness Down" "Ctrl+Shift+Volume Down"];
|
||||
"org_kde_powerdevil"."Decrease Screen Brightness" = "Monitor Brightness Down";
|
||||
"org_kde_powerdevil"."Decrease Screen Brightness Small" = "Shift+Monitor Brightness Down";
|
||||
"org_kde_powerdevil"."Hibernate" = "Hibernate";
|
||||
"org_kde_powerdevil"."Increase Keyboard Brightness" = "Keyboard Brightness Up";
|
||||
"org_kde_powerdevil"."Increase Screen Brightness" = ["Monitor Brightness Up" "Ctrl+Volume Up"];
|
||||
"org_kde_powerdevil"."Increase Screen Brightness Small" = ["Shift+Monitor Brightness Up" "Ctrl+Shift+Volume Up"];
|
||||
"org_kde_powerdevil"."Increase Screen Brightness" = "Monitor Brightness Up";
|
||||
"org_kde_powerdevil"."Increase Screen Brightness Small" = "Shift+Monitor Brightness Up";
|
||||
"org_kde_powerdevil"."PowerDown" = "Power Down";
|
||||
"org_kde_powerdevil"."PowerOff" = "Power Off";
|
||||
"org_kde_powerdevil"."Sleep" = "Sleep";
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[General]
|
||||
commands="@ByteArray({\"2574d457_7a99_40a3_8239_24407c7a074d\":{\"command\":\"loginctl unlock-session\",\"name\":\"unlock\"},\"2bbbb9cc_892a_44a1_b097_27b149387511\":{\"command\":\"bluetoothctl disconnect 38:18:4C:11:56:99\",\"name\":\"disconnect headset\"},\"35ad74aa_c1f0_4dd7_a392_2b2676105b62\":{\"command\":\"systemctl hibernate\",\"name\":\"hibernate\"},\"5dd755de_e098_4907_982d_bedba5c3511d\":{\"command\":\"loginctl lock-session\",\"name\":\"lock\"},\"6423946a_b13e_4127_a0d0_0ca38e79fa0f\":{\"command\":\"bluetoothctl connect 38:18:4C:11:56:99\",\"name\":\"connect headset\"},\"690a4134_162b_4851_83a4_bf75722c699a\":{\"command\":\"systemctl suspend\",\"name\":\"suspend\"},\"99ae3913_1757_4ed0_ad7e_91c6f5d740ef\":{\"command\":\"qdbus org.kde.kglobalaccel /component/kmix invokeShortcut \\\"mute\\\"\",\"name\":\"mute\"},\"b11480dd_19f7_49c0_9dcc_3065ddc5150b\":{\"command\":\"qdbus org.kde.kglobalaccel /component/kmix invokeShortcut \\\"mic_mute\\\"\",\"name\":\"mute mic\"},\"bd36530a_9ed5_4345_989d_189c27b3ce00\":{\"command\":\"systemctl reboot\",\"name\":\"reboot\"},\"cf6180f7_e4bd_4f15_a9d1_19ed14e99913\":{\"command\":\"file=\\\"$HOME/Images/WebcamImage_$(date \\\"+%Y%m%d_%H%M%S\\\").jpg\\\"; ffmpeg -f video4linux2 -s 1280x720 -i /dev/video0 -ss 0:0:2 -frames 1 \\\"${file}\\\" && kdeconnect-cli -d $(kdeconnect-cli -a --id-only) --share \\\"${file}\\\"\",\"name\":\"webcam to phone\"},\"d31a3cab_bb6a_459d_89fb_533d0d8fec61\":{\"command\":\"systemctl poweroff\",\"name\":\"shutdown\"},\"f08e1a64_53be_41da_b942_e05e45f1d69c\":{\"command\":\"qdbus org.kde.kglobalaccel /component/kmix invokeShortcut \\\"decrease_volume\\\"\",\"name\":\"volume down\"},\"fbd67152_2a58_4d5d_a210_982fa0eeb171\":{\"command\":\"qdbus org.kde.kglobalaccel /component/kmix invokeShortcut \\\"increase_volume\\\"\",\"name\":\"volume up\"},\"fc3adde9_7049_4166_bcda_a74d13ec91eb\":{\"command\":\"file=/tmp/$(hostname)_$(date \\\"+%Y%m%d_%H%M%S\\\").png; spectacle -bo \\\"${file}\\\" && while ! [ -f \\\"${file}\\\" ]; do sleep 0.5; done && kdeconnect-cli -d $(kdeconnect-cli -a --id-only) --share \\\"${file}\\\"\",\"name\":\"screenshot to phone\"}})"
|
||||
|
|
@ -16,10 +16,8 @@
|
|||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
lutris
|
||||
android-tools
|
||||
];
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
home.stateVersion = "25.11";
|
||||
home.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,11 +17,8 @@
|
|||
|
||||
home.packages = with pkgs; [
|
||||
r2modman
|
||||
ryubing
|
||||
ryujinx
|
||||
lutris
|
||||
vscodium
|
||||
intiface-central
|
||||
unrar
|
||||
];
|
||||
|
||||
programs.mangohud = {
|
||||
|
|
@ -30,5 +27,5 @@
|
|||
};
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
home.stateVersion = "25.11";
|
||||
home.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +0,0 @@
|
|||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKeZHHAEoUh/Ly9F1xUSPZLPNE0Yh/wM2qWgKvlEBa8A lillian@GLaDOS
|
||||
|
|
@ -11,11 +11,13 @@
|
|||
|
||||
# You can also split up your configuration and import pieces of it here:
|
||||
# ./nvim.nix
|
||||
../../desktop
|
||||
../../shared
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
];
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
home.stateVersion = "25.11";
|
||||
home.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGtwcWXnwOOI8G3NqAMfTeuSuDk9ly5xqwQDH2Iey3u+ lillian@queen
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINl+QRyKBYm+sx0hUiD2u6FBdT7aXsZBGUxm4cb7r24k lillian@GLaDOS
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL279XPFj1nzLDozFclntPh8rOcn3d1B5iJNGds9Ray6 lillian@shodan
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKRT5MqPrYUhhD5rJFp0PQbkTRtGcNaCaTxEkZw9RiVT lillian@GLaDOS
|
||||
|
|
|
|||
|
|
@ -12,8 +12,13 @@
|
|||
# You can also split up your configuration and import pieces of it here:
|
||||
# ./nvim.nix
|
||||
|
||||
../../desktop/package-configs/plasma-desktop.nix
|
||||
../../desktop/package-configs/firefox.nix
|
||||
../../desktop/package-configs/konsole
|
||||
../../desktop/package-configs/foot
|
||||
../../desktop/package-configs/freetube
|
||||
../../desktop/package-configs/vesktop
|
||||
../../shared
|
||||
../../desktop
|
||||
];
|
||||
nixpkgs = {
|
||||
# You can add overlays here
|
||||
|
|
@ -28,17 +33,82 @@
|
|||
# });
|
||||
# })
|
||||
];
|
||||
# Configure your nixpkgs instance
|
||||
config = {
|
||||
# Disable if you don't want unfree packages
|
||||
allowUnfree = true;
|
||||
};
|
||||
};
|
||||
|
||||
home = {
|
||||
username = "lillian";
|
||||
homeDirectory = "/home/lillian";
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
#Chat:
|
||||
vesktop
|
||||
|
||||
#Gaming:
|
||||
prismlauncher
|
||||
r2modman
|
||||
ryubing
|
||||
ryujinx
|
||||
|
||||
# Multimedia:
|
||||
freetube
|
||||
obs-studio
|
||||
vlc
|
||||
fcast-receiver
|
||||
fcast-client
|
||||
|
||||
# System tools:
|
||||
rage
|
||||
flameshot
|
||||
fzf
|
||||
nextcloud-client
|
||||
nitrokey-app
|
||||
protonvpn-gui
|
||||
sops
|
||||
#watchmate
|
||||
qbittorrent
|
||||
zsh
|
||||
|
||||
# Theming:
|
||||
catppuccin-cursors
|
||||
(catppuccin-kde.override {
|
||||
flavour = ["macchiato"];
|
||||
accents = ["mauve"];
|
||||
})
|
||||
catppuccin-plymouth
|
||||
catppuccin-sddm-corners
|
||||
|
||||
# Web browsing:
|
||||
firefox
|
||||
ungoogled-chromium
|
||||
];
|
||||
programs = {
|
||||
# # Automount services for user
|
||||
# programs.bashmount.enable = true;
|
||||
# services.udiskie = {
|
||||
# enable = true;
|
||||
# automount = true;
|
||||
# notify = false;
|
||||
# tray = "never";
|
||||
# };
|
||||
|
||||
# Enable home-manager and git
|
||||
home-manager.enable = true;
|
||||
git = {
|
||||
enable = true;
|
||||
userEmail = "git@lillianviolet.dev";
|
||||
userName = "Lillian-Violet";
|
||||
signing.format = "ssh";
|
||||
};
|
||||
};
|
||||
|
||||
# Make the kde screenlock not require a password :)
|
||||
programs.plasma.kscreenlocker.passwordRequired = false;
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
home.stateVersion = "25.11";
|
||||
home.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILxXVL6QAiMLwvUYBtXCbkHEh6ENgaEO/rkZWSPJrjLJ lillian@wheatley
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMrmRjLF2tVkWeV7EOgUiF77Q9t+rBziRAdOPo92pyvF lillian@GLaDOS
|
||||
|
|
|
|||
|
|
@ -35,5 +35,5 @@
|
|||
};
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
home.stateVersion = "25.11";
|
||||
home.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
46
home-manager/kde-connect-commands.json
Normal file
46
home-manager/kde-connect-commands.json
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
[
|
||||
{
|
||||
"command": "systemctl poweroff",
|
||||
"name": "shutdown"
|
||||
},
|
||||
{
|
||||
"command": "systemctl reboot",
|
||||
"name": "reboot"
|
||||
},
|
||||
{
|
||||
"command": "systemctl suspend",
|
||||
"name": "suspend"
|
||||
},
|
||||
{
|
||||
"command": "systemctl hibernate",
|
||||
"name": "hibernate"
|
||||
},
|
||||
{
|
||||
"command": "loginctl lock-session",
|
||||
"name": "lock"
|
||||
},
|
||||
{
|
||||
"command": "loginctl unlock-session",
|
||||
"name": "unlock"
|
||||
},
|
||||
{
|
||||
"command": "qdbus org.kde.kglobalaccel /component/kmix invokeShortcut \"mute\"",
|
||||
"name": "mute"
|
||||
},
|
||||
{
|
||||
"command": "qdbus org.kde.kglobalaccel /component/kmix invokeShortcut \"mic_mute\"",
|
||||
"name": "mute mic"
|
||||
},
|
||||
{
|
||||
"command": "file=/tmp/$(hostname)_$(date \"+%Y%m%d_%H%M%S\").png; spectacle -bo \"${file}\" && while ! [ -f \"${file}\" ]; do sleep 0.5; done && kdeconnect-cli -d $(kdeconnect-cli -a --id-only) --share \"${file}\"",
|
||||
"name": "screenshot to phone"
|
||||
},
|
||||
{
|
||||
"command": "file=\"$HOME/Images/WebcamImage_$(date \"+%Y%m%d_%H%M%S\").jpg\"; ffmpeg -f video4linux2 -s 1280x720 -i /dev/video0 -ss 0:0:2 -frames 1 \"${file}\" && kdeconnect-cli -d $(kdeconnect-cli -a --id-only) --share \"${file}\"",
|
||||
"name": "webcam to phone"
|
||||
},
|
||||
{
|
||||
"command": "",
|
||||
"name": ""
|
||||
}
|
||||
]
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
pkgs,
|
||||
osConfig,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
|
|
@ -12,7 +13,6 @@
|
|||
./shell/eza.nix
|
||||
./shell/hyfetch.nix
|
||||
];
|
||||
|
||||
home = {
|
||||
username = "lillian";
|
||||
homeDirectory = "/home/lillian";
|
||||
|
|
@ -21,8 +21,18 @@
|
|||
target = ".ssh/id_ed25519.pub";
|
||||
force = true;
|
||||
};
|
||||
};
|
||||
|
||||
packages = with pkgs; [
|
||||
catppuccin = {
|
||||
flavor = "macchiato";
|
||||
btop.enable = true;
|
||||
cache.enable = true;
|
||||
chromium.enable = true;
|
||||
freetube.enable = true;
|
||||
freetube.flavor = "macchiato";
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
# System tools:
|
||||
vscode-langservers-extracted
|
||||
sops
|
||||
|
|
@ -35,16 +45,6 @@
|
|||
nil
|
||||
gh
|
||||
];
|
||||
};
|
||||
|
||||
catppuccin = {
|
||||
flavor = "macchiato";
|
||||
btop.enable = true;
|
||||
cache.enable = true;
|
||||
chromium.enable = true;
|
||||
freetube.enable = true;
|
||||
freetube.flavor = "macchiato";
|
||||
};
|
||||
programs = {
|
||||
navi.enable = true;
|
||||
yazi = {
|
||||
|
|
@ -54,36 +54,33 @@
|
|||
# };
|
||||
};
|
||||
};
|
||||
# stylix.enable = true;
|
||||
# qt.platformTheme.name = lib.mkForce "kvantum";
|
||||
# qt.style.name = lib.mkForce "kvantum";
|
||||
|
||||
# stylix = {
|
||||
# enable = true;
|
||||
# autoEnable = true;
|
||||
# base16Scheme = {
|
||||
# scheme = "Catppuccin Macchiato";
|
||||
# author = "https://github.com/catppuccin/catppuccin";
|
||||
# base00 = "24273a";
|
||||
# base01 = "1e2030";
|
||||
# base02 = "363a4f";
|
||||
# base03 = "494d64";
|
||||
# base04 = "5b6078";
|
||||
# base05 = "cad3f5";
|
||||
# base06 = "f4dbd6";
|
||||
# base07 = "b7bdf8";
|
||||
# base08 = "ed8796";
|
||||
# base09 = "f5a97f";
|
||||
# base0A = "eed49f";
|
||||
# base0B = "a6da95";
|
||||
# base0C = "8bd5ca";
|
||||
# base0D = "8aadf4";
|
||||
# base0E = "c6a0f6";
|
||||
# base0F = "f0c6c6";
|
||||
# };
|
||||
# image = ./background.jpg;
|
||||
# cursor.package = pkgs.catppuccin-cursors;
|
||||
# cursor.name = "catppuccin-macchiato-mauve-cursors";
|
||||
# cursor.size = 16;
|
||||
# };
|
||||
stylix = {
|
||||
enable = true;
|
||||
autoEnable = true;
|
||||
base16Scheme = {
|
||||
scheme = "Catppuccin Macchiato";
|
||||
author = "https://github.com/catppuccin/catppuccin";
|
||||
base00 = "24273a";
|
||||
base01 = "1e2030";
|
||||
base02 = "363a4f";
|
||||
base03 = "494d64";
|
||||
base04 = "5b6078";
|
||||
base05 = "cad3f5";
|
||||
base06 = "f4dbd6";
|
||||
base07 = "b7bdf8";
|
||||
base08 = "ed8796";
|
||||
base09 = "f5a97f";
|
||||
base0A = "eed49f";
|
||||
base0B = "a6da95";
|
||||
base0C = "8bd5ca";
|
||||
base0D = "8aadf4";
|
||||
base0E = "c6a0f6";
|
||||
base0F = "f0c6c6";
|
||||
};
|
||||
image = ./background.jpg;
|
||||
cursor.package = pkgs.catppuccin-cursors;
|
||||
cursor.name = "catppuccin-macchiato-mauve-cursors";
|
||||
cursor.size = 16;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,50 +0,0 @@
|
|||
[
|
||||
{
|
||||
"command": "systemctl poweroff",
|
||||
"name": "shutdown"
|
||||
},
|
||||
{
|
||||
"command": "systemctl reboot",
|
||||
"name": "reboot"
|
||||
},
|
||||
{
|
||||
"command": "systemctl suspend",
|
||||
"name": "suspend"
|
||||
},
|
||||
{
|
||||
"command": "systemctl hibernate",
|
||||
"name": "hibernate"
|
||||
},
|
||||
{
|
||||
"command": "loginctl lock-session",
|
||||
"name": "lock"
|
||||
},
|
||||
{
|
||||
"command": "loginctl unlock-session",
|
||||
"name": "unlock"
|
||||
},
|
||||
{
|
||||
"command": "qdbus org.kde.kglobalaccel /component/kmix invokeShortcut \"mute\"",
|
||||
"name": "mute"
|
||||
},
|
||||
{
|
||||
"command": "qdbus org.kde.kglobalaccel /component/kmix invokeShortcut \"mic_mute\"",
|
||||
"name": "mute mic"
|
||||
},
|
||||
{
|
||||
"command": "file=/tmp/$(hostname)_$(date \"+%Y%m%d_%H%M%S\").png; spectacle -bo \"${file}\" && while ! [ -f \"${file}\" ]; do sleep 0.5; done && kdeconnect-cli -d $(kdeconnect-cli -a --id-only) --share \"${file}\"",
|
||||
"name": "screenshot to phone"
|
||||
},
|
||||
{
|
||||
"command": "file=\"$HOME/Images/WebcamImage_$(date \"+%Y%m%d_%H%M%S\").jpg\"; ffmpeg -f video4linux2 -s 1280x720 -i /dev/video0 -ss 0:0:2 -frames 1 \"${file}\" && kdeconnect-cli -d $(kdeconnect-cli -a --id-only) --share \"${file}\"",
|
||||
"name": "webcam to phone"
|
||||
},
|
||||
{
|
||||
"command": "bluetoothctl connect 38:18:4C:11:56:99",
|
||||
"name": "connect headset"
|
||||
},
|
||||
{
|
||||
"command": "bluetoothctl disconnect 38:18:4C:11:56:99",
|
||||
"name": "disconnect headset"
|
||||
}
|
||||
]
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "helix";
|
||||
version = "25.01.1";
|
||||
version = "24.07";
|
||||
|
||||
# This release tarball includes source code for the tree-sitter grammars,
|
||||
# which is not ordinarily part of the repository.
|
||||
|
|
@ -17,7 +17,6 @@ rustPlatform.buildRustPackage rec {
|
|||
stripRoot = false;
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "";
|
||||
|
||||
nativeBuildInputs = [git installShellFiles];
|
||||
|
|
|
|||
|
|
@ -10,7 +10,6 @@
|
|||
mode = "horizontal";
|
||||
};
|
||||
backend = "neofetch";
|
||||
pride_month_disable = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -57,15 +57,15 @@
|
|||
pane size=1 borderless=true {
|
||||
plugin location="file:${inputs.zjstatus.packages.${pkgs.system}.default}/bin/zjstatus.wasm" {
|
||||
format_left "#[bg=#1D1D2E,fg=#C9D2F5,bold] {session} {mode} {tabs}"
|
||||
format_right "#[bg=#C9D2F5,fg=#1D1D2E]▶#[bg=#C9D2F5,fg=#C9D2F5]▶#[bg=#C9D2F5,fg=#1D1D2E,bold]{datetime}#[bg=#1D1D2E,fg=#C9D2F5]▶"
|
||||
format_right "#[bg=#C9D2F5,fg=#1D1D2E]#[bg=#C9D2F5,fg=#C9D2F5]#[bg=#C9D2F5,fg=#1D1D2E,bold]{datetime}#[bg=#1D1D2E,fg=#C9D2F5]"
|
||||
|
||||
mode_locked "#[fg=magenta,bold] {name} "
|
||||
mode_normal "#[fg=green,bold] {name} "
|
||||
mode_resize "#[fg=orange,bold] {name} "
|
||||
mode_default_to_mode "resize"
|
||||
|
||||
tab_normal "#[bg=#C9D2F5,fg=#1D1D2E]▶#[bg=#C9D2F5,fg=#C9D2F5]▶#[bg=#C9D2F5,fg=#1D1D2E,bold]{name}{sync_indicator}{fullscreen_indicator}{floating_indicator}#[bg=#C9D2F5,fg=#C9D2F5]▶#[bg=#1D1D2E,fg=#C9D2F5]▶"
|
||||
tab_active "#[bg=#A6DA95,fg=#1D1D2E]▶#[bg=#A6DA95,fg=#A6DA95]▶#[bg=#A6DA95,fg=#1D1D2E,bold]{name}{sync_indicator}{fullscreen_indicator}{floating_indicator}#[bg=#A6DA95,fg=#A6DA95]▶#[bg=#1D1D2E,fg=#A6DA95]▶"
|
||||
tab_normal "#[bg=#C9D2F5,fg=#1D1D2E]#[bg=#C9D2F5,fg=#C9D2F5]#[bg=#C9D2F5,fg=#1D1D2E,bold]{name}{sync_indicator}{fullscreen_indicator}{floating_indicator}#[bg=#C9D2F5,fg=#C9D2F5]#[bg=#1D1D2E,fg=#C9D2F5]"
|
||||
tab_active "#[bg=#A6DA95,fg=#1D1D2E]#[bg=#A6DA95,fg=#A6DA95]#[bg=#A6DA95,fg=#1D1D2E,bold]{name}{sync_indicator}{fullscreen_indicator}{floating_indicator}#[bg=#A6DA95,fg=#A6DA95]#[bg=#1D1D2E,fg=#A6DA95]"
|
||||
|
||||
tab_sync_indicator " "
|
||||
tab_fullscreen_indicator "□ "
|
||||
|
|
@ -140,15 +140,15 @@
|
|||
pane size=1 borderless=true {
|
||||
plugin location="file:${inputs.zjstatus.packages.${pkgs.system}.default}/bin/zjstatus.wasm" {
|
||||
format_left "#[bg=#1D1D2E,fg=#C9D2F5,bold] {session} {mode} {tabs}"
|
||||
format_right "#[bg=#C9D2F5,fg=#1D1D2E]▶#[bg=#C9D2F5,fg=#C9D2F5]▶#[bg=#C9D2F5,fg=#1D1D2E,bold]{datetime}#[bg=#1D1D2E,fg=#C9D2F5]▶"
|
||||
format_right "#[bg=#C9D2F5,fg=#1D1D2E]#[bg=#C9D2F5,fg=#C9D2F5]#[bg=#C9D2F5,fg=#1D1D2E,bold]{datetime}#[bg=#1D1D2E,fg=#C9D2F5]"
|
||||
|
||||
mode_locked "#[fg=magenta,bold] {name} "
|
||||
mode_normal "#[fg=green,bold] {name} "
|
||||
mode_resize "#[fg=orange,bold] {name} "
|
||||
mode_default_to_mode "resize"
|
||||
|
||||
tab_normal "#[bg=#C9D2F5,fg=#1D1D2E]▶#[bg=#C9D2F5,fg=#C9D2F5]▶#[bg=#C9D2F5,fg=#1D1D2E,bold]{name}{sync_indicator}{fullscreen_indicator}{floating_indicator}#[bg=#C9D2F5,fg=#C9D2F5]▶#[bg=#1D1D2E,fg=#C9D2F5]▶"
|
||||
tab_active "#[bg=#A6DA95,fg=#1D1D2E]▶#[bg=#A6DA95,fg=#A6DA95]▶#[bg=#A6DA95,fg=#1D1D2E,bold]{name}{sync_indicator}{fullscreen_indicator}{floating_indicator}#[bg=#A6DA95,fg=#A6DA95]▶#[bg=#1D1D2E,fg=#A6DA95]▶"
|
||||
tab_normal "#[bg=#C9D2F5,fg=#1D1D2E]#[bg=#C9D2F5,fg=#C9D2F5]#[bg=#C9D2F5,fg=#1D1D2E,bold]{name}{sync_indicator}{fullscreen_indicator}{floating_indicator}#[bg=#C9D2F5,fg=#C9D2F5]#[bg=#1D1D2E,fg=#C9D2F5]"
|
||||
tab_active "#[bg=#A6DA95,fg=#1D1D2E]#[bg=#A6DA95,fg=#A6DA95]#[bg=#A6DA95,fg=#1D1D2E,bold]{name}{sync_indicator}{fullscreen_indicator}{floating_indicator}#[bg=#A6DA95,fg=#A6DA95]#[bg=#1D1D2E,fg=#A6DA95]"
|
||||
|
||||
tab_sync_indicator " "
|
||||
tab_fullscreen_indicator "□ "
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@
|
|||
];
|
||||
};
|
||||
# Extra commands that take more complex forms
|
||||
initContent = ''
|
||||
initExtra = ''
|
||||
eval "$(zoxide init --cmd cd zsh)"
|
||||
tre() { command tre "$@" -e && source "/tmp/tre_aliases_$USER" 2>/dev/null; }
|
||||
zhx() { command zellij action new-tab --layout $HOME/.config/zellij/layouts/helix.kdl; }
|
||||
|
|
|
|||
28
justfile
28
justfile
|
|
@ -1,44 +1,22 @@
|
|||
# Build the nixos configuration and switch to it
|
||||
build:
|
||||
sudo echo "sudo check..." && sudo nixos-rebuild --fallback --log-format internal-json -v switch --flake .# --show-trace |& nom --json
|
||||
sudo nixos-rebuild switch --flake .# --show-trace
|
||||
|
||||
# Build the nixos configuration bot don't switch to it until a reboot
|
||||
boot:
|
||||
sudo echo "sudo check..." && sudo nixos-rebuild --fallback --log-format internal-json -v boot --flake .# --show-trace |& nom --json
|
||||
|
||||
# Run the nix flake in the nix repl
|
||||
run:
|
||||
nix-repl -f flake:nixpkgs
|
||||
|
||||
# Check the nix configuration for errors
|
||||
test:
|
||||
sudo echo "sudo check..." && sudo nix flake check --show-trace --log-format internal-json -v |& nom --json
|
||||
sudo nix flake check --show-trace
|
||||
|
||||
# Update the flake lock
|
||||
update:
|
||||
nix flake update --log-format internal-json -v |& nom --json && zsh
|
||||
nix flake update
|
||||
|
||||
# Clean your nix store and optimize it
|
||||
clean:
|
||||
sudo nix-collect-garbage
|
||||
sudo nix-store --optimise
|
||||
|
||||
# Set up the commit hook for testing before doing a commit
|
||||
setup:
|
||||
#!/run/current-system/sw/bin/bash -e
|
||||
if [ -s ./.git/hooks/pre-commit ]; then
|
||||
read -p $"This file already contains the following text:
|
||||
$(<./.git/hooks/pre-commit)
|
||||
Do you want to add the test hook (y/N)? (This will NOT delete data)" choice
|
||||
case "$choice" in
|
||||
y|Y ) echo "just test" >> ./.git/hooks/pre-commit && chmod +x ./.git/hooks/pre-commit && echo "Added test hook to pre-commit.";;
|
||||
* ) echo "No test added to pre-commit.";;
|
||||
esac
|
||||
else
|
||||
echo "just test" >> ./.git/hooks/pre-commit && chmod +x ./.git/hooks/pre-commit
|
||||
fi
|
||||
|
||||
# Make sure all the git actions of pulling, adding all files, committing, and pushing are done in one command
|
||||
push:
|
||||
git pull
|
||||
git add *
|
||||
|
|
|
|||
|
|
@ -28,15 +28,9 @@
|
|||
allowUnfree = true;
|
||||
};
|
||||
};
|
||||
services.udev.extraRules = ''
|
||||
KERNEL=="hidraw*", ATTRS{idVendor}=="057e", MODE="0660", TAG+="uaccess"
|
||||
KERNEL=="hidraw*", KERNELS=="*057e:*", MODE="0660", TAG+="uaccess"
|
||||
KERNEL=="hidraw*", ATTRS{idVendor}=="2dc8", MODE="0660", TAG+="uaccess"
|
||||
KERNEL=="hidraw*", KERNELS=="*2DC8:*", MODE="0660", TAG+="uaccess"
|
||||
'';
|
||||
|
||||
environment.systemPackages =
|
||||
with pkgs; [
|
||||
(with pkgs; [
|
||||
# Custom tools
|
||||
dvd
|
||||
dvt
|
||||
|
|
@ -45,11 +39,6 @@
|
|||
|
||||
# System tools
|
||||
aha
|
||||
ttf-ms-win10
|
||||
wineWowPackages.stable
|
||||
bottles
|
||||
tpm2-abrmd
|
||||
jdk23
|
||||
#bcachefs-tools
|
||||
clinfo
|
||||
comma
|
||||
|
|
@ -73,13 +62,7 @@
|
|||
zsh
|
||||
|
||||
# KDE/QT
|
||||
kdePackages.plasma-desktop
|
||||
kdePackages.plasma-wayland-protocols
|
||||
kdePackages.libplasma
|
||||
kdePackages.plasma-integration
|
||||
kdePackages.plasma-activities
|
||||
kdePackages.plasma-workspace
|
||||
kdePackages.plasma-vault
|
||||
krunner-translator
|
||||
kdePackages.discover
|
||||
kdePackages.filelight
|
||||
kdePackages.kcalc
|
||||
|
|
@ -97,23 +80,21 @@
|
|||
kdePackages.krdc
|
||||
kdePackages.krfb
|
||||
kdePackages.kate
|
||||
kdePackages.xwaylandvideobridge
|
||||
libportal-qt5
|
||||
libportal
|
||||
|
||||
# User tools
|
||||
freetube
|
||||
noisetorch
|
||||
qjackctl
|
||||
wireplumber
|
||||
#rustdesk
|
||||
]
|
||||
# ++ (with pkgs-edge; [
|
||||
])
|
||||
++ (with pkgs-edge; [
|
||||
freetube
|
||||
# list of latest packages from nixpkgs master
|
||||
# Can be used to install latest version of some packages
|
||||
# ])
|
||||
;
|
||||
|
||||
fonts.packages = [pkgs.ttf-ms-win10];
|
||||
]);
|
||||
sops = {
|
||||
secrets."nextcloud-password" = {
|
||||
mode = "0600";
|
||||
|
|
@ -125,7 +106,7 @@
|
|||
programs = {
|
||||
# Allow executing of anything on the system with a , eg: , python executes python from the nix store even if not in $PATH currently
|
||||
command-not-found.enable = lib.mkForce false;
|
||||
# nix-index.enable = true;
|
||||
nix-index.enable = true;
|
||||
nix-index-database.comma.enable = true;
|
||||
|
||||
direnv = {
|
||||
|
|
@ -145,8 +126,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
xdg.portal.enable = true;
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true; # Enables support for 32bit libs that steam uses
|
||||
|
||||
|
|
@ -157,10 +136,10 @@
|
|||
xserver.enable = true;
|
||||
|
||||
# Enable the KDE Plasma Desktop Environment.
|
||||
# displayManager.sddm = {
|
||||
# enable = true;
|
||||
# wayland.enable = true;
|
||||
# };
|
||||
displayManager.sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
};
|
||||
displayManager.defaultSession = "plasma";
|
||||
desktopManager.plasma6.enable = true;
|
||||
desktopManager.plasma6.notoPackage = pkgs.atkinson-hyperlegible;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
{pkgs, ...}: {
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
package = pkgs.librewolf;
|
||||
package = pkgs.floorp;
|
||||
policies = {
|
||||
DisableTelemetry = true;
|
||||
DisableFirefoxStudies = true;
|
||||
|
|
@ -115,10 +119,10 @@
|
|||
installation_mode = "force_installed";
|
||||
};
|
||||
# Tree Style Tabs
|
||||
# "treestyletab@piro.sakura.ne.jp" = {
|
||||
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/tree-style-tab/latest.xpi";
|
||||
# installation_mode = "force_installed";
|
||||
# };
|
||||
"treestyletab@piro.sakura.ne.jp" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/tree-style-tab/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
# Adaptive Tab Bar Colour
|
||||
"ATBC@EasonWong" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/Adaptive-Tab-Bar-Colour/latest.xpi";
|
||||
|
|
@ -156,8 +160,6 @@
|
|||
"floorp.tabbar.style" = 2;
|
||||
"floorp.browser.user.interface" = 8;
|
||||
"signon.rememberSignons" = true;
|
||||
"browser.ml.chat.enabled" = false;
|
||||
"browser.ml.chat.shortcuts" = false;
|
||||
};
|
||||
# TODO: switch to ManagedBookmarks as this will be dropped at some point https://mozilla.github.io/policy-templates/#managedbookmarks
|
||||
# Bookmarks = [
|
||||
|
|
|
|||
|
|
@ -24,47 +24,8 @@
|
|||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
gparted
|
||||
];
|
||||
|
||||
programs.virt-manager.enable = true;
|
||||
|
||||
users.groups.libvirtd.members = ["lillian"];
|
||||
|
||||
virtualisation.libvirtd.enable = true;
|
||||
|
||||
virtualisation.spiceUSBRedirection.enable = true;
|
||||
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
};
|
||||
|
||||
services.displayManager.defaultSession = "plasma";
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
|
||||
services.samba = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
settings = {
|
||||
global = {
|
||||
"invalid users" = [
|
||||
"root"
|
||||
];
|
||||
"passwd program" = "/run/wrappers/bin/passwd %u";
|
||||
security = "user";
|
||||
};
|
||||
public = {
|
||||
browseable = "yes";
|
||||
comment = "Public samba share.";
|
||||
"guest ok" = "yes";
|
||||
path = "/home/lillian/samba";
|
||||
"read only" = "no";
|
||||
};
|
||||
};
|
||||
};
|
||||
users.groups.samba.members = ["lillian"];
|
||||
|
||||
services.vpn-ip = {
|
||||
ip = "3";
|
||||
};
|
||||
|
|
@ -85,11 +46,9 @@
|
|||
loader.systemd-boot.enable = lib.mkForce false;
|
||||
initrd.systemd.enable = true;
|
||||
|
||||
binfmt.emulatedSystems = ["aarch64-linux"];
|
||||
|
||||
lanzaboote = {
|
||||
enable = true;
|
||||
pkiBundle = "/var/lib/sbctl";
|
||||
pkiBundle = "/etc/secureboot";
|
||||
};
|
||||
kernelModules = [
|
||||
"iwlmvm"
|
||||
|
|
@ -98,5 +57,5 @@
|
|||
};
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
system.stateVersion = "25.11";
|
||||
system.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,17 +31,8 @@
|
|||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
gparted
|
||||
];
|
||||
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
};
|
||||
|
||||
services.displayManager.defaultSession = "plasma";
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
|
||||
services.vpn-ip = {
|
||||
ip = "2";
|
||||
};
|
||||
|
|
@ -49,6 +40,16 @@
|
|||
networking.hostName = "GLaDOS";
|
||||
|
||||
services.xserver.videoDrivers = ["amdgpu"];
|
||||
hardware = {
|
||||
# Add vulkan support to GPU
|
||||
graphics.extraPackages = with pkgs; [
|
||||
amdvlk
|
||||
];
|
||||
# For 32 bit applications
|
||||
graphics.extraPackages32 = with pkgs; [
|
||||
driversi686Linux.amdvlk
|
||||
];
|
||||
};
|
||||
programs = {
|
||||
# gamemode.enable = false;
|
||||
# gamemode.settings = {
|
||||
|
|
@ -71,28 +72,31 @@
|
|||
};
|
||||
|
||||
jovian = {
|
||||
steamos = {
|
||||
enableAutoMountUdevRules = true;
|
||||
steam = {
|
||||
enable = true;
|
||||
autoStart = false;
|
||||
user = "lillian";
|
||||
desktopSession = "plasma";
|
||||
};
|
||||
decky-loader = {
|
||||
enable = true;
|
||||
package = pkgs.decky-loader-prerelease;
|
||||
extraPackages = [pkgs.python3];
|
||||
};
|
||||
hardware.has.amd.gpu = true;
|
||||
};
|
||||
|
||||
boot = {
|
||||
loader.systemd-boot.enable = false;
|
||||
};
|
||||
|
||||
binfmt.emulatedSystems = ["aarch64-linux"];
|
||||
|
||||
lanzaboote = {
|
||||
boot.lanzaboote = {
|
||||
enable = true;
|
||||
pkiBundle = "/var/lib/sbctl";
|
||||
};
|
||||
};
|
||||
|
||||
users.users.lillian.extraGroups = ["gamemode"];
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
system.stateVersion = "25.11";
|
||||
system.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,20 +10,20 @@
|
|||
# outputs.homeManagerModules.example
|
||||
# outputs.nixosModules.contabo.wan
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
outputs.nixosModules.vpn-ip
|
||||
# Or modules exported from other flakes (such as nix-colors):
|
||||
# inputs.nix-colors.homeManagerModules.defaults
|
||||
|
||||
# Import shared settings
|
||||
../../shared
|
||||
];
|
||||
|
||||
# programs.command-not-found.enable = lib.mkForce false;
|
||||
# programs.nix-index.enable = true;
|
||||
# programs.nix-index-database.comma.enable = true;
|
||||
programs.command-not-found.enable = lib.mkForce false;
|
||||
programs.nix-index.enable = true;
|
||||
programs.nix-index-database.comma.enable = true;
|
||||
|
||||
# boot.tmp.cleanOnBoot = true;
|
||||
# zramSwap.enable = false;
|
||||
# networking.domain = "";
|
||||
boot.tmp.cleanOnBoot = true;
|
||||
zramSwap.enable = false;
|
||||
networking.domain = "";
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
# require public key authentication for better security
|
||||
|
|
@ -45,9 +45,7 @@
|
|||
#Set up sops config, and configure where the keyfile is, then set the mode for the unencrypted keys
|
||||
sops.defaultSopsFile = ./secrets/sops.yaml;
|
||||
|
||||
services.vpn-ip.enable = false;
|
||||
|
||||
# services.desktopManager.plasma6.enable = true;
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Custom tools
|
||||
|
|
@ -67,9 +65,11 @@
|
|||
sbctl
|
||||
tpm2-tools
|
||||
tpm2-tss
|
||||
waydroid
|
||||
zsh
|
||||
|
||||
# KDE/QT
|
||||
krunner-translator
|
||||
kdePackages.discover
|
||||
kdePackages.kcalc
|
||||
kdePackages.kdepim-addons
|
||||
|
|
@ -81,14 +81,13 @@
|
|||
kdePackages.plasma-pa
|
||||
kdePackages.sddm-kcm
|
||||
kdePackages.dolphin-plugins
|
||||
libportal-qt5
|
||||
libportal
|
||||
];
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
networking.hostName = "iso";
|
||||
|
||||
# Contabo ipv6 nameservers: "2a02:c207::1:53" "2a02:c207::2:53"
|
||||
|
||||
networking.firewall.enable = true;
|
||||
|
|
@ -107,24 +106,24 @@
|
|||
# Enable bluetooth hardware
|
||||
hardware.bluetooth.enable = true;
|
||||
|
||||
# security.tpm2.enable = true;
|
||||
# security.tpm2.pkcs11.enable = true; # expose /run/current-system/sw/lib/libtpm2_pkcs11.so
|
||||
# security.tpm2.tctiEnvironment.enable = true; # TPM2TOOLS_TCTI and TPM2_PKCS11_TCTI env variables
|
||||
# users.users.lillian.extraGroups = ["tss"]; # tss group has access to TPM devices
|
||||
security.tpm2.enable = true;
|
||||
security.tpm2.pkcs11.enable = true; # expose /run/current-system/sw/lib/libtpm2_pkcs11.so
|
||||
security.tpm2.tctiEnvironment.enable = true; # TPM2TOOLS_TCTI and TPM2_PKCS11_TCTI env variables
|
||||
users.users.lillian.extraGroups = ["tss"]; # tss group has access to TPM devices
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "Europe/Amsterdam";
|
||||
|
||||
# programs.git = {
|
||||
# enable = true;
|
||||
# };
|
||||
programs.git = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
# programs.direnv = {
|
||||
# enable = true;
|
||||
# };
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
# # Enable completion of system packages by zsh
|
||||
# environment.pathsToLink = ["/share/zsh"];
|
||||
# Enable completion of system packages by zsh
|
||||
environment.pathsToLink = ["/share/zsh"];
|
||||
|
||||
# kde power settings do not turn off screen
|
||||
systemd = {
|
||||
|
|
@ -137,17 +136,17 @@
|
|||
};
|
||||
};
|
||||
|
||||
# home-manager = {
|
||||
# extraSpecialArgs = {inherit inputs outputs;};
|
||||
# users = {
|
||||
# # Import your home-manager configuration
|
||||
# lillian = import ../../../home-manager/hosts/iso;
|
||||
# };
|
||||
# };
|
||||
home-manager = {
|
||||
extraSpecialArgs = {inherit inputs outputs;};
|
||||
users = {
|
||||
# Import your home-manager configuration
|
||||
lillian = import ../../../home-manager/hosts/iso;
|
||||
};
|
||||
};
|
||||
|
||||
# boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
|
||||
# boot.supportedFilesystems = lib.mkForce ["bcachefs" "btrfs" "cifs" "f2fs" "jfs" "ntfs" "reiserfs" "vfat" "xfs"];
|
||||
boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
|
||||
boot.supportedFilesystems = lib.mkForce ["bcachefs" "btrfs" "cifs" "f2fs" "jfs" "ntfs" "reiserfs" "vfat" "xfs"];
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
system.stateVersion = "25.11";
|
||||
system.stateVersion = "24.11";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
lillian-password: ENC[AES256_GCM,data:eQzZwGxK9Lw2gc8HDNw57odxPzTH4sa/2O97h3VAghRwLClmCYKT91kxj2F3kQ4iEctBl0GxdS4WoL3H9eE4/CAPffXdTmkdYg==,iv:2ezB4DNHFv5ceJ2gtATV12Azm3vFFDLX1qSSy+cKuMY=,tag:zxb5agUCDpi92bYV7+DmoA==,type:str]
|
||||
ssh-private-key: ENC[AES256_GCM,data:YQ+9aKpBL9XYl0IBxpPttUli6/E25alUhO36dZwPPSIBLI1ehyczocQMxNRYNtB2xKYx4wPaYIndLBhj9VdTUgaOWUd2C6aU6YgXgFAsjgEwqVDZWRp7TrTHojtrS5HnJgfopx6EqPf/uljD9yQsOkubDDUbpYkpWX/3vixm9LJ1eRXxTxXW8D3O5OM2Z1NsqA7meVa1xhvWJokqS4sD5ntp1HT78Xmu62EweHQVGaznUvWZupYh0uCQd0tr6GVTZLHdyCdaFUGHRbRddBcljpBIRWaWkhIrkjejvptUZ4Ht/UN5XM5z+zfU3DxsDOxeJ7m83om9I3WdZSdq1aDXe+VFEfMrx/0QTk2LtAmOvujcN6wO7a77SD4Rpuvq8KH2CeKrwMLlFf2BeGIcGhvAhRYUVxtypM38DEdbf/7xIcw0vQP2zNZN4QWdukUInDndnAxMfbIXKpYI5OPRaZMTVui41hkS86LBfbd5RhTjyzrtIpVSq9XkKRX7d5i8Gcjb4ORpQvrNNYMo+TXCiLNTg3/q0My/jEhfjfTF,iv:EpKC9judTZ1+0Y2LC1OK2YzGH/orRpZNtE7O+ZZyU1E=,tag:S6ju/FkwIBbBA8YU3dRo1A==,type:str]
|
||||
nextcloud-password: ENC[AES256_GCM,data:5u8j1wau5FewTe+t3YZ365Acfcrt09XDgCUNpDbuVKaNZIEW3gdR60XACQeAvsyQeznynILJnz7/txV2,iv:l1xYhUkQGdWYNNy1lG9xB5SgL9cn2FdzAs19iVCohlA=,tag:rT0flG+v9wd8jSUm8DrCjg==,type:str]
|
||||
wg-private-key: ENC[AES256_GCM,data:3JpyscuzK4LG1lfM3oyQNBHy7BQ2WeTaSyaZoaNfS4U7KkpEaCp5EVLBYiY=,iv:odDG8xp+d+O4FuECfeCJn/z2ka4KSzSBvgBCmcMZ0S0=,tag:iPwnqgtap+i44Mru/S7TyA==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age12e00qvf4shtmsfq3ujamyaa72pjvad2qhrxkvpl9hryrjvgxev4sjhmkxz
|
||||
enc: |
|
||||
|
|
@ -13,7 +14,8 @@ sops:
|
|||
dXlaN3dWOUl4Mys2V0x3Z3F6UVU4MVUKEJYpX8XhSNcM+7aUuxnIwrokY0/29Cnh
|
||||
yz0HAZkaj8FwvnPnafo5jmwVyi6WXECvX5E0NZfjKH4AF5vTu6Wukg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-08-14T18:00:16Z"
|
||||
mac: ENC[AES256_GCM,data:NnX0hMrfeKJucgqgVUIUS0WOHerkDtKe3P+4vvWRCMX3eXg4Tsju8pZySZP7RSZX7+2W3OUHMOUuAum0YrVasTXuhm6jPvlbqvRnVXaVzCNheIUvTCF7LFeJEOQYKS5m8AiVKFRrxz+dGn90DSeijjajSePBjo8AnKyAOQEt1S8=,iv:1iJiqJU0vdDiWnJAYDlbOBBa9lBOODjjdlsRH54aTGI=,tag:JZtgVeLvFN6vcCZkRnuNcQ==,type:str]
|
||||
lastmodified: "2024-03-20T18:17:48Z"
|
||||
mac: ENC[AES256_GCM,data:3UHIoYPHC6n56CHguOVuoFd9VwCjGiD9VCYy2d5W+4XQEZpjnONX8fhwwWRm42COymz89tmqDmpDp88BnSU8uE14IaCIUoxfCaRiZtjAiHjouua2jr50aUV56pwyan8ZiiOjP8oP1VY/tsv1w0jWI9TjSTHvCdNLR8XEcf6bCrk=,iv:/lBJdkQgwZyiztQ9vSoHgY+WxXJKHFI93dxtOSunHNo=,tag:lLwrSdzoN9CzmyIdLOe5ig==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.10.2
|
||||
version: 3.8.1
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
outputs,
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
|
|
@ -56,6 +55,7 @@
|
|||
|
||||
environment.systemPackages = with pkgs; [
|
||||
fzf
|
||||
matrix-conduit
|
||||
docker
|
||||
docker-compose
|
||||
gitea
|
||||
|
|
@ -68,53 +68,29 @@
|
|||
#jellyfin
|
||||
#jellyfin-web
|
||||
#jellyfin-ffmpeg
|
||||
nextcloud-spreed-signaling
|
||||
nats-server
|
||||
nginx
|
||||
onlyoffice-documentserver
|
||||
openssl
|
||||
phanpy
|
||||
postgresql_16
|
||||
python310
|
||||
# python310Packages.nbconvert
|
||||
janus-gateway
|
||||
jupyter
|
||||
# rabbitmq-server
|
||||
rabbitmq-server
|
||||
roundcube
|
||||
roundcubePlugins.contextmenu
|
||||
roundcubePlugins.carddav
|
||||
roundcubePlugins.custom_from
|
||||
roundcubePlugins.persistent_login
|
||||
roundcubePlugins.thunderbird_labels
|
||||
youtube-dl
|
||||
sqlite
|
||||
rocksdb
|
||||
];
|
||||
services.vpn-ip = {
|
||||
enable = false;
|
||||
};
|
||||
|
||||
systemd = {
|
||||
services."upgrade-nextcloud" = {
|
||||
path = with pkgs; [nextcloud31];
|
||||
enable = true;
|
||||
unitConfig = {
|
||||
after = "nextcloud-setup.service";
|
||||
};
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${config.services.nextcloud.occ}/bin/nextcloud-occ upgrade";
|
||||
RemainAfterExit = "yes";
|
||||
};
|
||||
};
|
||||
|
||||
timers."upgrade-nextcloud" = {
|
||||
wantedBy = ["timers.target"];
|
||||
partOf = ["upgrade-nextcloud.service"];
|
||||
timerConfig = {
|
||||
OnCalendar = "daily";
|
||||
Unit = "nextcloud-setup.service";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
networking = {
|
||||
domain = "";
|
||||
|
||||
|
|
@ -217,5 +193,5 @@
|
|||
};
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
system.stateVersion = "25.11";
|
||||
system.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,8 +8,7 @@ mailpassunhash: ENC[AES256_GCM,data:q/P3nrNLy3hCISDmalw94nzWIFhoCdCTyflj27D2Ltr8
|
|||
rpcSecret: ENC[AES256_GCM,data:gOuQSY2RI6rnSnG1,iv:xz1ueq4/UOKYBs5r9Tk4jL0+GyX8uo8I8ZymVgIMKLI=,tag:Fr8rWIttLz7X8Pri6FBJBQ==,type:str]
|
||||
wg-private-key: ENC[AES256_GCM,data:mq8QWoQ4tE4eYaFbwCzQnRREUFI2qrnmDnwurKMu6qdKkDylqc65E7jgGDI=,iv:r5RdcmfW4OaKlbbzUCPahONvpLcfZ7X7KcEEYFIYFDk=,tag:e93C4lByJV75JMHLJ02PfA==,type:str]
|
||||
lillian-password: ENC[AES256_GCM,data:tc+Romv2fL+tdqLLmbwqaF4IHrNZ0VEpnECmW/66FW7IUpjHMyS7YP+pmmvDCzM9afIXMxyPFHGNRwiCmxqstiiNeSeLdo6rDw==,iv:sGeu9aNTgdpThv+0Z/nZKIrat1xNgM0t/KTGPaFbsdI=,tag:kZBHF4X0KO9znog61NwU+Q==,type:str]
|
||||
coturn-auth-secret: ENC[AES256_GCM,data:1K7WX5FGhF7+CRZs4SEVKogsGv/93IJVvLeMe6/d1dg3g5/6fQkRCVl1KicMUOsqUxMweUn5hUXSO1h/ruWvPA==,iv:0U/JoeVin2zTkyk60x2boUQRzGW+9swlbxP1ENCbAFQ=,tag:ll8WCgMNtun5Va0VpC81Tw==,type:str]
|
||||
hpb-secret: ENC[AES256_GCM,data:I/64j3nA0BWW5YY4STMFzxnSKQ+TmiHvweIIGOMJvV4=,iv:zezsPPnKlVBVlrJeG4pGbtuiz1GEWLmQaZl1isNa+pk=,tag:YbTWLAjIIMDn5Jo43U0QtA==,type:str]
|
||||
coturn-auth-secret: ENC[AES256_GCM,data:RYxyATuYIcrGd8h8Gc4CP9ZQ80ekuuwHehnOPYisHejmycgT8a2mWpk+5r3HkFmBNcLDeNlfnhIif5oLHGuHyw==,iv:M2GdNDxP4xpP35FJPTgljbcKpOm6DmEEnIYRItAxDVI=,tag:IiiNXeTi6Yja5PrnKRkhdA==,type:str]
|
||||
grafana-telegraf-key: ENC[AES256_GCM,data:agpUzG1/n2NAKDt45IgelmDf0CUlC82fmD4f7JdcszNuUg7uCNA7XeaJ6PZtHQ==,iv:keo3i+qSbtXkA5fyCr2S5z9nJS9bXUn5WDiPgWocPU8=,tag:p/nDff10PRhi9pOszp1PnA==,type:str]
|
||||
sync-secrets: ENC[AES256_GCM,data:AwCgqfSXmYVGnCV5PJ5Ql44IiutTS76F1H7Ow7gB4mQQ8PtiAsmArzpAXd7LzsXedm55X04U+GvkcbM9cwPcF+psyb3Zi8EnI/mjnI9MgFyySSEcosJZVAtCpXGIMyYgRXtF5OBh5CzupAG059d1TDAqrSpLXMuSDdypTaOMHxnlq5q1swfpzhhY3PVgUKVFXdjZLX8aF3JTE9ceVxFsB+traLzOQsl+QKty0x0mpuqR97zkMCchX7bTwgUgbl7phzTvmwV8Qw==,iv:gkZs5NB9+CLfz4kfV4ha2llZQPP81uuXRKqUlASgpiA=,tag:DXkiG0ZFHLHlVhwLwtv/XQ==,type:str]
|
||||
writefreely: ENC[AES256_GCM,data:QOj5h/rHCxmgpPNhu3IS4eyruhQokHTJxW6yQM9YDgQ=,iv:qAd+/rAAanzL9FTIX22M+2kwI0WI2d3i86cJrn8MFBo=,tag:3zvpqnovDEoJdvK/qcFDuQ==,type:str]
|
||||
|
|
@ -17,6 +16,10 @@ writefreelymysql: ENC[AES256_GCM,data:1JZwIX04O3DBAo7JvEkeNrFcSdcmk/u4WUf/kkbr2J
|
|||
ssh-private-key: ENC[AES256_GCM,data:DK/ggskAyhvotRkf36oZBoPw3hGvVlXneqaJZRPwX2a3YVMy4zgDE3iN65UeR6mfkp9J3OmLejOHeWFB/bRCHY3oTW6GUuZljTe2rI1/x/d2s4zX5UPPEWcy3cXH25d72DzElQBEMDKuZyDe0OZ0/NkR//vEeXgoA2Nr/NKHlTWrq/t26DMD2Vt+kQ+S9b0hh4tgh3OP1lwRu9/mTJOmInd/86gKB9+aD9V0oFvNbMEmgbwIah+ZjQBHB7GEIwjUc/lLmc+3RSn9J0rICIhnhL7NTzHUDHkYd93Tm0L9UHIyi9Oco2sK8tuV5mTDM1OK8CbDg/5FICTQ0H4sstCrDNZd2wE4E1kaZuwYOyxpzQpWJY8jOxxw5oIE0IccvvptM/9vp+0f1F2RIDrkIdHSLpFbGZGvXNVAWlXyv+0qOYS7BGzD0KAh9f74GcAvULq36vdzBahb5e+CqT3JXESne8qhkpsP0G9Z1I1Fy0xpADx/9cTnAm5RmXTw/KBPmBA5IZYZBRbR/C+N7Xyxr7u9RcwFJdIbSpAeT/ew,iv:pHT7DtX1ab7boPboXRaSg9w/4sMgNraEswtEf2tBPkw=,tag:Fbw2/Evf4ZsLFMBPflf9CA==,type:str]
|
||||
mollysocket-vapid-key: ENC[AES256_GCM,data:8N2hxY6WN6mCcjMIFsw/Vt1RoGvUbYxkVPOOn4WRjXZtEEkkVCIaNevozF4xCnBUEWIukNg8lZk8ake/pHAq,iv:+NHm3hSotcRPRjrwEe9xKnEeYbnUZqJEB1sd5B+tWIE=,tag:Pd2pnJqj771XqdqBREGzJQ==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age12e00qvf4shtmsfq3ujamyaa72pjvad2qhrxkvpl9hryrjvgxev4sjhmkxz
|
||||
enc: |
|
||||
|
|
@ -27,7 +30,8 @@ sops:
|
|||
KzNBMCtUaS9sU21Xc1JUd1FSR29tSkEKyqaDM/WUWjK2l+ahE6sIFYsQ6Qtkf7yz
|
||||
NWFTzsDZBmm9kpSIjchf+PuBuoRHeEKbEH8jnMlYB3J8boEnUnXMlw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-08-04T13:04:56Z"
|
||||
mac: ENC[AES256_GCM,data:ppQgyWY/4Kr8/Ag5x7wBv1RZAxky6Itf4sBBRIzJj8njzSDOPm0blcDHjIGesu9PwmjnnJihZivmWXj43pAjxf6p4FmtlBAIqLUjRIV7fR16VINo7dPx4Pv6+sw1uwFvLliD/FfKwYo2S+Lx0eQnOzW1p7RROpbQJQ8k7AUngKE=,iv:Pk8sPdAMzITgeeaoZHJc77ywp47DuB5A1Lx5pjtHXM0=,tag:JkMDnjYMPTFkyOiikA7ejA==,type:str]
|
||||
lastmodified: "2025-01-14T13:43:37Z"
|
||||
mac: ENC[AES256_GCM,data:GK+WcmMgDbZ5xeqMK06CuquR6/ptd2oXzVJ9V74+n6lBx4XsyPu17puKGKgsGsIHeRYdbwtQh8tm42/XJ0tK8qJz1yGvfQxPasd+ibRBHatWWHzQ/czR3NIRWYqGF9/mxi2uHrftaKtku1/huxjzjb69blopMzn2LEH0vCzXCkc=,iv:K6Fbhmz9FAzLd8KcjDSriVre8MhCYrGTVXh+u6oGLaQ=,tag:4Ylrs+Mm54vAKFQyyo8Njg==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.10.2
|
||||
version: 3.9.2
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
outputs.nixosModules.vpn-ip
|
||||
|
||||
# Import the shared settings
|
||||
../../desktop
|
||||
../../desktop/package-configs/firefox
|
||||
|
||||
# You can also split up your configuration and import pieces of it here:
|
||||
# ./nvim.nix
|
||||
|
|
@ -46,17 +46,12 @@
|
|||
|
||||
lanzaboote = {
|
||||
enable = true;
|
||||
pkiBundle = "/var/lib/sbctl";
|
||||
pkiBundle = "/etc/secureboot";
|
||||
};
|
||||
consoleLogLevel = 0;
|
||||
kernelParams = ["quiet" "udev.log_priority=0" "fbcon=vc:2-6" "console=tty0"];
|
||||
plymouth.enable = true;
|
||||
};
|
||||
services.udev.extraRules = ''
|
||||
KERNEL=="hidraw*", ATTRS{idVendor}=="2dc8", MODE="0660", TAG+="uaccess"
|
||||
KERNEL=="hidraw*", KERNELS=="*2DC8:*", MODE="0660", TAG+="uaccess"
|
||||
SUBSYSTEM=="hidraw", ATTRS{idVendor}=="2dc8", MODE="0666"
|
||||
'';
|
||||
zramSwap.enable = false;
|
||||
networking = {
|
||||
domain = "";
|
||||
|
|
@ -65,10 +60,8 @@
|
|||
networkmanager.enable = true;
|
||||
|
||||
firewall.enable = true;
|
||||
firewall.interfaces."wg0".allowedTCPPorts = [8080];
|
||||
firewall.interfaces."wg0".allowedUDPPorts = [8080];
|
||||
firewall.allowedTCPPorts = [22 8080 8091 9090 9777 46899 46898];
|
||||
firewall.allowedUDPPorts = [22 8080 8091 9090 9777 46899 46898];
|
||||
|
||||
firewall.allowedTCPPorts = [22];
|
||||
|
||||
hostName = "shodan";
|
||||
};
|
||||
|
|
@ -76,10 +69,28 @@
|
|||
ip = "4";
|
||||
};
|
||||
|
||||
xdg.portal.extraPortals = [pkgs.kdePackages.xdg-desktop-portal-kde];
|
||||
services = {
|
||||
openssh.enable = true; # Enables support for 32bit libs that steam uses
|
||||
|
||||
# Enable the X11 windowing system.
|
||||
xserver.enable = true;
|
||||
|
||||
# Enable the KDE Plasma Desktop Environment.
|
||||
desktopManager.plasma6.enable = true;
|
||||
|
||||
avahi = {
|
||||
nssmdns4 = true;
|
||||
enable = true;
|
||||
ipv4 = true;
|
||||
ipv6 = true;
|
||||
publish = {
|
||||
enable = true;
|
||||
addresses = true;
|
||||
workstation = true;
|
||||
};
|
||||
};
|
||||
displayManager = {
|
||||
# defaultSession = "plasma";
|
||||
defaultSession = "plasma";
|
||||
sddm.wayland.enable = lib.mkForce true;
|
||||
sddm.settings = {
|
||||
Autologin = {
|
||||
|
|
@ -88,17 +99,76 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Enable flatpak support
|
||||
flatpak.enable = true;
|
||||
packagekit.enable = true;
|
||||
|
||||
# Configure keymap in X11
|
||||
xserver = {
|
||||
xkb.layout = "us";
|
||||
xkb.variant = "";
|
||||
};
|
||||
|
||||
# Enable CUPS to print documents.
|
||||
printing.enable = true;
|
||||
|
||||
# Enable fwupd daemon and user space client
|
||||
fwupd.enable = true;
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs = {
|
||||
# You can add overlays here
|
||||
overlays = [
|
||||
];
|
||||
# Configure your nixpkgs instance
|
||||
config = {
|
||||
# Disable if you don't want unfree packages
|
||||
allowUnfree = true;
|
||||
};
|
||||
};
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Custom tools
|
||||
auto-mount
|
||||
|
||||
#System:
|
||||
btrfs-progs
|
||||
decky-loader
|
||||
jre8
|
||||
# jellyfin-media-player
|
||||
efitools
|
||||
jq
|
||||
# noto-fonts
|
||||
# noto-fonts-emoji-blob-bin
|
||||
# noto-fonts-emoji
|
||||
qjackctl
|
||||
|
||||
#rustdesk
|
||||
sbctl
|
||||
udisks
|
||||
util-linux
|
||||
waypipe
|
||||
python3
|
||||
protonup-qt
|
||||
|
||||
#KDE:
|
||||
krunner-translator
|
||||
# kdePackages.discover
|
||||
kdePackages.kcalc
|
||||
kdePackages.kdepim-addons
|
||||
kdePackages.kirigami
|
||||
kdePackages.kdeconnect-kde
|
||||
# kdePackages.krunner-ssh
|
||||
# kdePackages.krunner-symbols
|
||||
kdePackages.qtvirtualkeyboard
|
||||
kdePackages.packagekit-qt
|
||||
kdePackages.krdc
|
||||
kdePackages.krfb
|
||||
libportal
|
||||
|
||||
#Gaming:
|
||||
heroic
|
||||
|
|
@ -106,29 +176,6 @@
|
|||
protontricks
|
||||
rare
|
||||
lutris
|
||||
|
||||
(kodi.withPackages (kodiPkgs:
|
||||
with kodiPkgs; [
|
||||
steam-controller
|
||||
invidious
|
||||
youtube
|
||||
netflix
|
||||
upnext
|
||||
sponsorblock
|
||||
sendtokodi
|
||||
jellyfin
|
||||
inputstream-adaptive
|
||||
inputstreamhelper
|
||||
inputstream-ffmpegdirect
|
||||
upnext
|
||||
sponsorblock
|
||||
sendtokodi
|
||||
routing
|
||||
requests-cache
|
||||
requests
|
||||
plugin-cache
|
||||
a4ksubtitles
|
||||
]))
|
||||
];
|
||||
|
||||
jovian = {
|
||||
|
|
@ -141,7 +188,7 @@
|
|||
decky-loader = {
|
||||
enable = true;
|
||||
package = pkgs.decky-loader-prerelease;
|
||||
extraPackages = [pkgs.python3 pkgs.flatpak pkgs.uutils-findutils];
|
||||
extraPackages = [pkgs.python3];
|
||||
};
|
||||
devices.steamdeck = {
|
||||
enable = true;
|
||||
|
|
@ -149,15 +196,59 @@
|
|||
};
|
||||
steamos = {
|
||||
enableAutoMountUdevRules = true;
|
||||
enableMesaPatches = true;
|
||||
};
|
||||
};
|
||||
fonts.packages = [pkgs.ttf-ms-win10];
|
||||
programs = {
|
||||
steam = lib.mkForce {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||||
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
||||
extest.enable = true;
|
||||
};
|
||||
kdeconnect.enable = true;
|
||||
|
||||
noisetorch = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
git = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
# # Enable automounting of removable media
|
||||
# services.udisks2.enable = true;
|
||||
# services.devmon.enable = true;
|
||||
# services.gvfs.enable = true;
|
||||
# environment.variables.GIO_EXTRA_MODULES = lib.mkForce ["${pkgs.gvfs}/lib/gio/modules"];
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "Europe/Amsterdam";
|
||||
hardware = {
|
||||
graphics.enable32Bit = true;
|
||||
|
||||
# Enable bluetooth hardware
|
||||
bluetooth.enable = true;
|
||||
|
||||
# Enable sound with pipewire.
|
||||
};
|
||||
|
||||
services.pulseaudio.enable = false;
|
||||
users.users.lillian.extraGroups = ["decky" "tss" "input"];
|
||||
|
||||
# Enable completion of system packages by zsh
|
||||
environment.pathsToLink = ["/share/zsh"];
|
||||
|
||||
security = {
|
||||
rtkit.enable = true;
|
||||
tpm2 = {
|
||||
enable = true;
|
||||
pkcs11.enable = true; # expose /run/current-system/sw/lib/libtpm2_pkcs11.so
|
||||
tctiEnvironment.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
system.stateVersion = "25.11";
|
||||
system.stateVersion = "25.05";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,11 @@
|
|||
lillian-password: ENC[AES256_GCM,data:uPNBvMyhkiX3eedduFlsFUIcas/VBVSYrsmGTlgGUOzTQST59CYZRoq0ArphIJ3+Usy6KbR5tA5FCp4PoB3qVYBfjlAq6dhZIw==,iv:TiUIo2lvdL6SiDuW4gWn0TeJXkz5MldzqGxuK3MNPnE=,tag:d3p/h+q50JxygDtk2qxIeQ==,type:str]
|
||||
wg-private-key: ENC[AES256_GCM,data:PeuKeYRHfOzGlekLI95EH3qq+blntZrrboPKaKC0ghD5zIyaCYrFHYWLkug=,iv:BcugGYW7+i7d04H4EKn+BdJJPqwMVVvlHBETO0x0kQM=,tag:Z/ammSrFpWTIbVfi4VJZ9w==,type:str]
|
||||
ssh-private-key: ENC[AES256_GCM,data:7K3p6Lu4je2fNmvtKpLY2z7MG5E0gg3486PCLTlm/NzWpiH0FO8KO2yPkPPVurXfUWj7ig3eiP+bc6+kufRQ8+MCHaR+JA056cdMch0MMK92FyPvJjNKzwB4W3BpdvOKipaZvuvSfgdrEdpz6rWRwBb9KaUW5aHBjW5eQNm+q0yP2uZjW6Ncp/zrdevjlRJyXGnNJD8CBDQgLILvqlvziRO4xBnSZOmFpdCKM9jMkxwHIQUND4ic71G6cheN+kIsgsa67DlJjfrngGWxKrlC3Q2DC+30vHtW8f18oa+g7eu9eTz8+bSLxYJf9TADwE+UYe2Hakib1ju67yxBkcomIjBvqgo+zEr0jC2qYmOvlKfqn64gSbAE7zEVCbavz6gA2EMb0g47twtAdgGUyzppGQ4LXjZXv6lyYov2gdXP7bzAcXXfzDh92BuTUOp9HXOTsLh7XC7cPKziowwwT+oUeOaSujMT9tgqkazgcVR3ne+PjxduptV75gxOwxeu6F2Zm+4Y4xJBdJeyP1Baq0yj4HNY/gv3pxEEXgU5,iv:TJ3AsSvXeUmBsKd6xy+Kc1ws+Yc9ZQ5Q4A8UFHI7Wsg=,tag:egCYoe3Mkbvkup0itszm4w==,type:str]
|
||||
nextcloud-password: ENC[AES256_GCM,data:vA+L/7rTne16AZbibUAaLAcQKLoKPvM1ATNL/hbzjVt+qmxHhmuQq0cqKdoPOFlOftMNLo5HSKiHdLxh,iv:kw0IorbyjT/ocanJDcR3kuPCqHsPwSD4axIp2dfn1Fc=,tag:5QLl3xKq4a0EiImO07ardQ==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age12e00qvf4shtmsfq3ujamyaa72pjvad2qhrxkvpl9hryrjvgxev4sjhmkxz
|
||||
enc: |
|
||||
|
|
@ -13,7 +16,8 @@ sops:
|
|||
KzNBMCtUaS9sU21Xc1JUd1FSR29tSkEKyqaDM/WUWjK2l+ahE6sIFYsQ6Qtkf7yz
|
||||
NWFTzsDZBmm9kpSIjchf+PuBuoRHeEKbEH8jnMlYB3J8boEnUnXMlw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-10-22T13:25:05Z"
|
||||
mac: ENC[AES256_GCM,data:qGLiJvoU+lyzMBr1jW3My5kNLCm59xVmdc3knyg64KMbAL65q7m5EJBC9uvRX0ZcxaNXWuRJWyUu1VV9tIKtSW+HLVJUZuTCi+0qswOL331LLuyDzhIkOKbPUPiDzKaMLif7EqENN9kN2aGSivpMVB5QkqRccmg6ya1Qkx5Ao7A=,iv:RiaIdq5Ve/PNVTD38Qh4YM+2x8fEU027r7hlmoNZI9A=,tag:jm9ZThwSVtpyed+kMIgaJw==,type:str]
|
||||
lastmodified: "2024-12-22T22:35:15Z"
|
||||
mac: ENC[AES256_GCM,data:olqDdjgOF7MsYXibawEn4bou6LPof25j231+Vwr+pSGCO19Sj44OkZpS0YmNBi+Uym+X6RGM5uV3fg4JYVgThnALI9JFyFuZ41gjPRyNBXJ16RnogKykHK5XNjQEogYho5bgLA8DTDeOvSfFHW2ENM052z6lJyAaPWJLa4ADlEY=,iv:YXGKcHQfqZCnK9Z3Nw/JxcTmZR++0iKUc7PDbLBqahY=,tag:UbHZvFZjaYjrC51Q1f/oyg==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.11.0
|
||||
version: 3.9.2
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
programs = {
|
||||
# Allow executing of anything on the system with a , eg: , python executes python from the nix store even if not in $PATH currently
|
||||
command-not-found.enable = lib.mkForce false;
|
||||
# nix-index.enable = true;
|
||||
nix-index.enable = true;
|
||||
nix-index-database.comma.enable = true;
|
||||
};
|
||||
services = {
|
||||
|
|
@ -162,36 +162,6 @@
|
|||
enable = false;
|
||||
};
|
||||
|
||||
services.stubby = {
|
||||
enable = true;
|
||||
settings =
|
||||
pkgs.stubby.passthru.settingsExample
|
||||
// {
|
||||
upstream_recursive_servers = [
|
||||
{
|
||||
address_data = "192.242.2.4";
|
||||
tls_auth_name = "base.dns.mullvad.net";
|
||||
tls_pubkey_pinset = [
|
||||
{
|
||||
digest = "sha256";
|
||||
value = "g8bfYNSxU86c8odFPsdTvWnC2VZkxIiHLZ2a6pydEjI=";
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
address_data = "2a07:e340::4";
|
||||
tls_auth_name = "base.dns.mullvad.net";
|
||||
tls_pubkey_pinset = [
|
||||
{
|
||||
digest = "sha256";
|
||||
value = "g8bfYNSxU86c8odFPsdTvWnC2VZkxIiHLZ2a6pydEjI=";
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
networking = {
|
||||
hostName = "wheatley";
|
||||
|
||||
|
|
@ -207,8 +177,12 @@
|
|||
# Configure DNS servers manually (this example uses Cloudflare and Google DNS)
|
||||
# IPv6 DNS servers can be used here as well.
|
||||
nameservers = [
|
||||
"194.242.2.4"
|
||||
"2a07:e340::4"
|
||||
# "127.0.0.1"
|
||||
# "::1"
|
||||
"94.140.14.49"
|
||||
"94.140.14.59"
|
||||
"2a10:50c0:0:0:0:0:ded:ff"
|
||||
"2a10:50c0:0:0:0:0:ded:ff"
|
||||
];
|
||||
|
||||
wireguard.enable = true;
|
||||
|
|
@ -246,36 +220,6 @@
|
|||
|
||||
# wg public key for host: A02sO7uLdgflhPIRd0cbJONIaPP4z8HTxDkmX4NegFg=
|
||||
# TODO: generate this dynamically based on other hosts
|
||||
wg0 = {
|
||||
address = ["10.70.93.226/32" "fc00:bbbb:bbbb:bb01::7:5de1/128"];
|
||||
privateKeyFile = lib.mkForce config.sops.secrets."wg-private-key".path;
|
||||
dns = ["100.64.0.7"];
|
||||
extraOptions = {
|
||||
FwMark = 51820;
|
||||
};
|
||||
|
||||
listenPort = 51820;
|
||||
|
||||
postUp = ''
|
||||
${pkgs.iproute2}/bin/ip rule add from 192.168.2.43 table main
|
||||
${pkgs.iptables}/bin/iptables -t mangle -A PREROUTING -i end0 -j CONNMARK --set-mark 51820
|
||||
${pkgs.iptables}/bin/iptables -t mangle -A PREROUTING -m connmark --mark 51820 -j MARK --set-mark 51820
|
||||
'';
|
||||
|
||||
preDown = ''
|
||||
${pkgs.iproute2}/bin/ip rule del from 192.168.2.43 table main
|
||||
${pkgs.iptables}/bin/iptables -t mangle -D PREROUTING -i end0 -j CONNMARK --set-mark 51820
|
||||
${pkgs.iptables}/bin/iptables -t mangle -D PREROUTING -m connmark --mark 51820 -j MARK --set-mark 51820
|
||||
'';
|
||||
|
||||
peers = [
|
||||
{
|
||||
publicKey = "/wPQafVa/60OIp8KqhC1xTTG+nQXZF17uo8XfdUnz2E=";
|
||||
allowedIPs = ["0.0.0.0/0" "::0/0"];
|
||||
endpoint = "31.171.154.50:51820";
|
||||
}
|
||||
];
|
||||
};
|
||||
wg1 = {
|
||||
# Determines the IP address and subnet of the server's end of the tunnel interface.
|
||||
address = ["10.0.0.1/24" "fdc9:281f:04d7:9ee9::1/64"];
|
||||
|
|
@ -285,26 +229,22 @@
|
|||
|
||||
# This allows the wireguard server to route your traffic to the internet and hence be like a VPN
|
||||
postUp = ''
|
||||
${pkgs.iptables}/bin/iptables -A FORWARD -i wg1 -j ACCEPT
|
||||
${pkgs.iptables}/bin/iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE
|
||||
${pkgs.iptables}/bin/ip6tables -A FORWARD -i wg1 -j ACCEPT
|
||||
${pkgs.iptables}/bin/ip6tables -t nat -A POSTROUTING -o wg0 -j MASQUERADE
|
||||
${pkgs.iptables}/bin/iptables -A FORWARD -i wg0 -j ACCEPT
|
||||
${pkgs.iptables}/bin/iptables -t nat -A POSTROUTING -s 10.0.0.1/24 -o eth0 -j MASQUERADE
|
||||
${pkgs.iptables}/bin/ip6tables -A FORWARD -i wg0 -j ACCEPT
|
||||
${pkgs.iptables}/bin/ip6tables -t nat -A POSTROUTING -s fdc9:281f:04d7:9ee9::1/64 -o eth0 -j MASQUERADE
|
||||
'';
|
||||
|
||||
# Undo the above
|
||||
preDown = ''
|
||||
${pkgs.iptables}/bin/iptables -D FORWARD -i wg1 -j ACCEPT
|
||||
${pkgs.iptables}/bin/iptables -t nat -D POSTROUTING -o wg0 -j MASQUERADE
|
||||
${pkgs.iptables}/bin/ip6tables -D FORWARD -i wg1 -j ACCEPT
|
||||
${pkgs.iptables}/bin/ip6tables -t nat -D POSTROUTING -o wg0 -j MASQUERADE
|
||||
${pkgs.iptables}/bin/iptables -D FORWARD -i wg0 -j ACCEPT
|
||||
${pkgs.iptables}/bin/iptables -t nat -D POSTROUTING -s 10.0.0.1/24 -o eth0 -j MASQUERADE
|
||||
${pkgs.iptables}/bin/ip6tables -D FORWARD -i wg0 -j ACCEPT
|
||||
${pkgs.iptables}/bin/ip6tables -t nat -D POSTROUTING -s fdc9:281f:04d7:9ee9::1/64 -o eth0 -j MASQUERADE
|
||||
'';
|
||||
|
||||
privateKeyFile = lib.mkForce config.sops.secrets."wg-private-key".path;
|
||||
|
||||
extraOptions = {
|
||||
FwMark = 51820;
|
||||
};
|
||||
|
||||
peers = [
|
||||
{
|
||||
#GLaDOS public key
|
||||
|
|
@ -334,7 +274,7 @@
|
|||
# enable NAT
|
||||
enable = true;
|
||||
externalInterface = "end0";
|
||||
internalInterfaces = ["wg1" "wg0"];
|
||||
internalInterfaces = ["wg1"];
|
||||
};
|
||||
firewall = {
|
||||
enable = true;
|
||||
|
|
@ -346,7 +286,6 @@
|
|||
80 # http
|
||||
443 # https
|
||||
51821 # wg
|
||||
51820 # wg-mullvad
|
||||
7878
|
||||
53 # dnsmasq
|
||||
];
|
||||
|
|
@ -412,6 +351,6 @@
|
|||
services.cage.enable = true;
|
||||
nixpkgs.config.kodi.enableAdvancedLauncher = true;
|
||||
|
||||
system.stateVersion = "25.11";
|
||||
system.stateVersion = "25.05";
|
||||
nixpkgs.hostPlatform = lib.mkForce "aarch64-linux";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,11 +29,17 @@
|
|||
'';
|
||||
in {
|
||||
# Configure Conduit itself
|
||||
services.matrix-continuwuity = {
|
||||
services.matrix-conduit = {
|
||||
enable = true;
|
||||
|
||||
# This causes NixOS to use the flake defined in this repository instead of
|
||||
# the build of Conduit built into nixpkgs.
|
||||
# package = inputs.conduwuit.packages.${pkgs.system}.default;
|
||||
package = pkgs.conduwuit;
|
||||
|
||||
settings.global = {
|
||||
inherit server_name;
|
||||
database_backend = "rocksdb";
|
||||
allow_registration = false;
|
||||
# emergency_password = "testpassword";
|
||||
turn_uris = ["turn:turn.gladtherescake.eu.url?transport=udp" "turn:turn.gladtherescake.eu?transport=tcp"];
|
||||
|
|
@ -111,7 +117,6 @@ in {
|
|||
locations."=/.well-known/matrix/client" = {
|
||||
# Use the contents of the derivation built previously
|
||||
alias = "${well_known_client}";
|
||||
return = "200 '{\"m.homeserver\": {\"base_url\": \"https://${server_name}\"}, \"org.matrix.msc3575.proxy\": {\"url\": \"https://${server_name}\"}}'";
|
||||
|
||||
extraConfig = ''
|
||||
# Set the header since by default NGINX thinks it's just bytes
|
||||
|
|
@ -125,7 +130,6 @@ in {
|
|||
proxyPass = "http://matrix.gladtherescake.eu/client/unstable/org.matrix.msc3575/sync";
|
||||
proxyWebsockets = true;
|
||||
recommendedProxySettings = false;
|
||||
return = "200 '{\"contacts\": [{\"matrix_id\": \"@admin:server.name\", \"email_address\": \"admin@server.name\", \"role\": \"m.role.admin\"}]}'";
|
||||
extraConfig = ''
|
||||
proxy_set_header Host $host;
|
||||
proxy_buffering off;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
services.coturn = {
|
||||
enable = true;
|
||||
use-auth-secret = true;
|
||||
static-auth-secret-file = config.sops.secrets."coturn-auth-secret".path;
|
||||
static-auth-secret = "cPKWEn4Fo5TAJoE7iX3xeVOaMVE4afeRN1iRGWYfbkWbkaZMxTpnmazHyH6c6yXT";
|
||||
realm = "turn.gladtherescake.eu";
|
||||
relay-ips = [
|
||||
"62.171.160.195"
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
./gotosocial
|
||||
./mail-server
|
||||
./nextcloud
|
||||
# ./phanpy
|
||||
./phanpy
|
||||
./postgres
|
||||
./roundcube
|
||||
./coturn
|
||||
|
|
@ -14,6 +14,5 @@
|
|||
#./firefox-sync
|
||||
./writefreely
|
||||
./mollysocket
|
||||
./jellyfin
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
# services.dovecot2.sieve.extensions = ["fileinto"];
|
||||
|
||||
mailserver = {
|
||||
stateVersion = 3;
|
||||
enable = true;
|
||||
enableImap = true;
|
||||
enableSubmission = true;
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@
|
|||
enable = true;
|
||||
hostName = "nextcloud.gladtherescake.eu";
|
||||
|
||||
package = pkgs.nextcloud32;
|
||||
package = pkgs.nextcloud30;
|
||||
|
||||
# Use HTTPS for links
|
||||
https = true;
|
||||
|
|
@ -69,7 +69,6 @@
|
|||
overwriteprotocol = "https";
|
||||
default_phone_region = "NL";
|
||||
maintenance_window_start = 3;
|
||||
log_type = "file";
|
||||
};
|
||||
appstoreEnable = true;
|
||||
extraAppsEnable = true;
|
||||
|
|
@ -102,9 +101,9 @@
|
|||
# #jwtSecretFile = config.sops.secrets."local.json".path;
|
||||
# };
|
||||
|
||||
# services.rabbitmq = {
|
||||
# enable = true;
|
||||
# };
|
||||
services.rabbitmq = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
systemd.services."sops-nix.service" = {
|
||||
before = [
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
pkgs-edge,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
|
|
@ -14,7 +13,7 @@
|
|||
#../hosts/${config.networking.hostName}/hardware-configuration.nix
|
||||
];
|
||||
sops = {
|
||||
age.keyFile = "var/secrets/keys.txt";
|
||||
age.keyFile = ../../../../../../var/secrets/keys.txt;
|
||||
secrets."lillian-password".neededForUsers = true;
|
||||
|
||||
defaultSopsFile = ../hosts/${config.networking.hostName}/secrets/sops.yaml;
|
||||
|
|
@ -30,10 +29,11 @@
|
|||
};
|
||||
#TODO: remove this when unneeded for freetube
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"python3.12-youtube-dl-2021.12.17"
|
||||
];
|
||||
|
||||
nix = {
|
||||
package = pkgs-edge.lix;
|
||||
package = pkgs.lix;
|
||||
gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
|
|
@ -67,19 +67,6 @@
|
|||
];
|
||||
};
|
||||
};
|
||||
|
||||
#TODO: ugly hardcoded delete, if it ever becomes a problem fix this, else just leave it I guess
|
||||
system.userActivationScripts = {
|
||||
removeConflictingFiles = {
|
||||
text = ''
|
||||
rm -f /home/lillian/.config/gtk-3.0/settings.ini.backup
|
||||
rm -f /home/lillian/.config/gtk-3.0/gtk.css.backup
|
||||
rm -f /home/lillian/.config/gtk-4.0/settings.ini.backup
|
||||
rm -f /home/lillian/.config/gtk-4.0/gtk.css.backup
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
catppuccin = {
|
||||
flavor = "macchiato";
|
||||
tty.enable = true;
|
||||
|
|
@ -91,28 +78,17 @@
|
|||
# grub.enable = false;
|
||||
};
|
||||
|
||||
programs = {
|
||||
zsh = {
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
gnupg.agent = {
|
||||
programs.gnupg.agent = {
|
||||
enable = true;
|
||||
enableBrowserSocket = true;
|
||||
};
|
||||
chromium = {
|
||||
enable = true;
|
||||
#Bet these options get renamed and put under a SearchProvider subheader...
|
||||
defaultSearchProviderSearchURL = "https://noai.duckduckgo.com/?t=ftab&q={searchTerms}";
|
||||
defaultSearchProviderEnabled = true;
|
||||
extensions = ["cjpalhdlnbpafiamejdnhcphjbkeiagm" "gcbommkclmclpchllfjekcdonpmejbdp"];
|
||||
};
|
||||
};
|
||||
|
||||
stylix = {
|
||||
targets.qt.platform = lib.mkForce "kde";
|
||||
enable = true;
|
||||
# targets.qt.platform = "kde6";
|
||||
autoEnable = true;
|
||||
base16Scheme = {
|
||||
scheme = "Catppuccin Macchiato";
|
||||
|
|
@ -137,7 +113,7 @@
|
|||
image = ./background.jpg;
|
||||
cursor.package = pkgs.catppuccin-cursors.macchiatoMauve;
|
||||
cursor.name = "catppuccin-macchiato-mauve-cursors";
|
||||
cursor.size = 24;
|
||||
cursor.size = 16;
|
||||
homeManagerIntegration.followSystem = true;
|
||||
fonts = {
|
||||
serif = {
|
||||
|
|
@ -162,60 +138,19 @@
|
|||
};
|
||||
};
|
||||
|
||||
services.scx.enable =
|
||||
if (pkgs.system == "aarch64-linux")
|
||||
then false
|
||||
else true;
|
||||
|
||||
fonts.packages = [
|
||||
pkgs.atkinson-hyperlegible
|
||||
pkgs.atkinson-monolegible
|
||||
pkgs.noto-fonts-emoji-blob-bin
|
||||
pkgs.noto-fonts
|
||||
pkgs.nerd-fonts.fira-mono
|
||||
pkgs.font-awesome
|
||||
pkgs.liberation_ttf
|
||||
];
|
||||
|
||||
fonts.fontconfig = {
|
||||
useEmbeddedBitmaps = true;
|
||||
# defaultFonts = {
|
||||
# fonts.fontconfig.defaultFonts = {
|
||||
# emoji = ["Blobmoji"];
|
||||
# monospace = ["Atkinson Monolegible"];
|
||||
# sansSerif = ["Atkinson Hyperlegible"];
|
||||
# };
|
||||
};
|
||||
systemd = {
|
||||
services."shutdown-zellij-zsh" = {
|
||||
path = with pkgs; [killall];
|
||||
enable = true;
|
||||
unitConfig = {
|
||||
Before = "shutdown.target";
|
||||
};
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${pkgs.killall}/bin/killall -SIGKILL zellij zsh";
|
||||
RemainAfterExit = "yes";
|
||||
};
|
||||
};
|
||||
|
||||
services."start-vpn-wg" =
|
||||
if config.services.vpn-ip.enable
|
||||
then {
|
||||
path = with pkgs; [systemd];
|
||||
enable = true;
|
||||
unitConfig = {
|
||||
Wants = "network-online.target";
|
||||
After = "network-online.target";
|
||||
};
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${pkgs.systemd}/bin/systemctl start wg-quick-wg0.service";
|
||||
RemainAfterExit = "yes";
|
||||
};
|
||||
}
|
||||
else {};
|
||||
};
|
||||
|
||||
networking =
|
||||
if config.services.vpn-ip.enable
|
||||
|
|
@ -224,7 +159,7 @@
|
|||
|
||||
wg-quick.interfaces = {
|
||||
wg0 = {
|
||||
autostart = false;
|
||||
autostart = true;
|
||||
address = ["10.0.0.${config.services.vpn-ip.ip}/24" "fdc9:281f:04d7:9ee9::${config.services.vpn-ip.ip}/64"];
|
||||
dns = ["10.0.0.1" "fdc9:281f:04d7:9ee9::1"];
|
||||
listenPort = 51821;
|
||||
|
|
@ -242,15 +177,8 @@
|
|||
}
|
||||
else {};
|
||||
|
||||
environment = {
|
||||
systemPackages = with pkgs; [
|
||||
nix-output-monitor
|
||||
usbutils
|
||||
];
|
||||
|
||||
# Enable completion of system packages by zsh
|
||||
pathsToLink = ["/share/zsh"];
|
||||
};
|
||||
environment.pathsToLink = ["/share/zsh"];
|
||||
|
||||
home-manager = {
|
||||
backupFileExtension = "backup";
|
||||
|
|
@ -265,8 +193,7 @@
|
|||
};
|
||||
|
||||
users = {
|
||||
users = {
|
||||
lillian = {
|
||||
users.lillian = {
|
||||
isNormalUser = true;
|
||||
extraGroups = ["sudo" "networkmanager" "wheel" "vboxsf" "docker"];
|
||||
shell = pkgs.zsh;
|
||||
|
|
@ -276,11 +203,10 @@
|
|||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH30G2PJOnI6jnAtxOQV0SpLFUva0adarLZLvaoZvjGE lillian@GLaDOS"
|
||||
];
|
||||
};
|
||||
mutableUsers = false;
|
||||
|
||||
root = {
|
||||
users.root = {
|
||||
hashedPassword = "*";
|
||||
};
|
||||
};
|
||||
mutableUsers = false;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,13 +22,12 @@
|
|||
install-nix-no-inhibit
|
||||
update
|
||||
upgrade
|
||||
simple-completion-language-server
|
||||
# simple-completion-language-server
|
||||
|
||||
# System tools
|
||||
age
|
||||
alejandra
|
||||
e2fsprogs
|
||||
uutils-findutils
|
||||
git
|
||||
git-filter-repo
|
||||
pre-commit
|
||||
|
|
@ -43,10 +42,6 @@
|
|||
wget
|
||||
zsh
|
||||
tldr
|
||||
nmap
|
||||
knot-dns
|
||||
libressl
|
||||
nettools
|
||||
|
||||
# System libraries
|
||||
])
|
||||
|
|
|
|||
|
|
@ -14,6 +14,4 @@ pkgs: {
|
|||
phanpy = pkgs.callPackage ./phanpy {};
|
||||
auto-mount = pkgs.callPackage ./auto-mount {};
|
||||
simple-completion-language-server = pkgs.callPackage ./simple-completion-language-server {};
|
||||
freetube-0236 = pkgs.callPackage ./freetube-0.23.6 {};
|
||||
ttf-ms-win10 = pkgs.callPackage ./ttf-ms-win10 {};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,121 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchFromGitHub,
|
||||
fetchYarnDeps,
|
||||
replaceVars,
|
||||
makeDesktopItem,
|
||||
|
||||
nodejs,
|
||||
yarnConfigHook,
|
||||
yarnBuildHook,
|
||||
makeShellWrapper,
|
||||
copyDesktopItems,
|
||||
electron,
|
||||
|
||||
nixosTests,
|
||||
}:
|
||||
let
|
||||
description = "Open Source YouTube app for privacy";
|
||||
in
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "freetube";
|
||||
version = "0.23.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FreeTubeApp";
|
||||
repo = "FreeTube";
|
||||
tag = "v${finalAttrs.version}-beta";
|
||||
hash = "sha256-Z1L45RHlmylfqKBY37PC5TQ3ubOgH0AHFGM7VkmtkZ0=";
|
||||
};
|
||||
|
||||
# Darwin requires writable Electron dist
|
||||
postUnpack =
|
||||
if stdenvNoCC.hostPlatform.isDarwin then
|
||||
''
|
||||
cp -r ${electron.dist} electron-dist
|
||||
chmod -R u+w electron-dist
|
||||
''
|
||||
else
|
||||
''
|
||||
ln -s ${electron.dist} electron-dist
|
||||
'';
|
||||
|
||||
patches = [
|
||||
(replaceVars ./patch-build-script.patch {
|
||||
electron-version = electron.version;
|
||||
})
|
||||
];
|
||||
|
||||
yarnOfflineCache = fetchYarnDeps {
|
||||
yarnLock = "${finalAttrs.src}/yarn.lock";
|
||||
hash = "sha256-ia5wLRt3Hmo4/dsB1/rhGWGJ7LMnVR9ju9lSlQZDTTg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs
|
||||
yarnConfigHook
|
||||
yarnBuildHook
|
||||
makeShellWrapper
|
||||
copyDesktopItems
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
''
|
||||
+ lib.optionalString stdenvNoCC.hostPlatform.isLinux ''
|
||||
mkdir -p $out/share/freetube
|
||||
cp -r build/*-unpacked/{locales,resources{,.pak}} -t $out/share/freetube
|
||||
|
||||
makeWrapper ${lib.getExe electron} $out/bin/freetube \
|
||||
--add-flags "$out/share/freetube/resources/app.asar" \
|
||||
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}"
|
||||
|
||||
install -D _icons/icon.svg $out/share/icons/hicolor/scalable/apps/freetube.svg
|
||||
''
|
||||
+ lib.optionalString stdenvNoCC.hostPlatform.isDarwin ''
|
||||
mkdir -p $out/Applications
|
||||
cp -r build/mac*/FreeTube.app $out/Applications
|
||||
ln -s "$out/Applications/FreeTube.app/Contents/MacOS/FreeTube" $out/bin/freetube
|
||||
''
|
||||
+ ''
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "freetube";
|
||||
desktopName = "FreeTube";
|
||||
comment = description;
|
||||
exec = "freetube %U";
|
||||
terminal = false;
|
||||
type = "Application";
|
||||
icon = "freetube";
|
||||
startupWMClass = "FreeTube";
|
||||
mimeTypes = [ "x-scheme-handler/freetube" ];
|
||||
categories = [ "Network" ];
|
||||
})
|
||||
];
|
||||
|
||||
passthru.tests = nixosTests.freetube;
|
||||
|
||||
meta = {
|
||||
inherit description;
|
||||
homepage = "https://freetubeapp.io/";
|
||||
license = lib.licenses.agpl3Only;
|
||||
maintainers = with lib.maintainers; [
|
||||
ryneeverett
|
||||
pentane
|
||||
ryand56
|
||||
sigmasquadron
|
||||
ddogfoodd
|
||||
];
|
||||
badPlatforms = [
|
||||
# output app is called "Electron.app" while derivation expects "FreeTube.app"
|
||||
#see: https://github.com/NixOS/nixpkgs/pull/384596#issuecomment-2677141349
|
||||
lib.systems.inspect.patterns.isDarwin
|
||||
];
|
||||
inherit (electron.meta) platforms;
|
||||
mainProgram = "freetube";
|
||||
};
|
||||
})
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
diff --git a/_scripts/ebuilder.config.js b/_scripts/ebuilder.config.js
|
||||
index 5b79d961..9f5945d2 100644
|
||||
--- a/_scripts/ebuilder.config.js
|
||||
+++ b/_scripts/ebuilder.config.js
|
||||
@@ -1,6 +1,8 @@
|
||||
const { name, productName } = require('../package.json')
|
||||
|
||||
const config = {
|
||||
+ electronVersion: "@electron-version@",
|
||||
+ electronDist: "electron-dist",
|
||||
appId: `io.freetubeapp.${name}`,
|
||||
copyright: 'Copyleft © 2020-2024 freetubeapp@protonmail.com',
|
||||
// asar: false,
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
git,
|
||||
nix-output-monitor,
|
||||
gum,
|
||||
writeShellApplication,
|
||||
}:
|
||||
|
|
@ -8,7 +7,7 @@ writeShellApplication
|
|||
{
|
||||
name = "install-nix-no-inhibit";
|
||||
|
||||
runtimeInputs = [git gum nix-output-monitor];
|
||||
runtimeInputs = [git gum];
|
||||
|
||||
text = ''
|
||||
# An install script for NixOS installation to /tmp
|
||||
|
|
@ -37,8 +36,8 @@ writeShellApplication
|
|||
--mode zap_create_mount \
|
||||
"./disko/''${dir}/default.nix"
|
||||
echo "NixOS Installing..."
|
||||
sudo nixos-install --flake .#"''${dir}" --show-trace --log-format internal-json -v |& nom --json
|
||||
sudo nixos-install --flake .#"''${dir}" --show-trace --log-format internal-json -v |& nom --json
|
||||
sudo nixos-install --flake .#"''${dir}"
|
||||
sudo nixos-install --flake .#"''${dir}"
|
||||
popd > /dev/null
|
||||
echo "Cleaning up repository in '/tmp/install-nix'..."
|
||||
rm -rf ./install-nix
|
||||
|
|
|
|||
|
|
@ -1,13 +1,9 @@
|
|||
{
|
||||
writeShellApplication,
|
||||
nix-output-monitor,
|
||||
just,
|
||||
}:
|
||||
{writeShellApplication}:
|
||||
writeShellApplication
|
||||
{
|
||||
name = "rebuild-no-inhibit";
|
||||
|
||||
runtimeInputs = [nix-output-monitor just];
|
||||
runtimeInputs = [];
|
||||
|
||||
text = ''
|
||||
# A rebuild script for NixOS
|
||||
|
|
@ -18,11 +14,7 @@ writeShellApplication
|
|||
git clone https://codeberg.org/Lillian-Violet/NixOS-Config.git ./rebuild
|
||||
pushd ./rebuild > /dev/null
|
||||
echo "NixOS Rebuilding..."
|
||||
if [ "''$HOSTNAME" = shodan ]; then
|
||||
just boot
|
||||
else
|
||||
just build
|
||||
fi
|
||||
sudo nixos-rebuild switch --flake .#
|
||||
popd > /dev/null
|
||||
echo "Cleaning up repository in '/tmp/rebuild'..."
|
||||
rm -rf ./rebuild
|
||||
|
|
|
|||
|
|
@ -5,16 +5,16 @@
|
|||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "simple-completion-language-server";
|
||||
version = "6c797949ad5a6e9548b60b5475d1c9977f26c811";
|
||||
version = "ff9f90bc96c347f284571bc6310bc31f95508d55";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "estin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-cITZdlDB03i7gOYbahV99wZOQ7tisnqdT/N2Z12oLFM=";
|
||||
hash = "sha256-qybbZXjKzKcc6UXfAjwmkkB+qEUuGQXABRbMj7bNksM=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-nannF4BKRLCcsS7VznzEHqrhLHYvN4X22t8jud87XEM=";
|
||||
cargoHash = "sha256-VTz2Fm+PRUPM5+u9D+2TzGGIEQwb1j0Lz0WRaQ5/Yzo=";
|
||||
meta = with lib; {
|
||||
description = "Language server to enable word completion and snippets for Helix editor";
|
||||
homepage = "https://github.com/estin/simple-completion-language-server";
|
||||
|
|
|
|||
|
|
@ -1,29 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchzip,
|
||||
}:
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "ttf-ms-win10";
|
||||
version = "1.0";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/streetsamurai00mi/ttf-ms-win10/archive/refs/heads/build.zip";
|
||||
hash = "sha256-UwkHlrSRaXhfoMlimyXFETV9yq1SbvUXykrhigf+wP8=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dm644 *.ttf -t $out/share/fonts/truetype
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/streetsamurai00mi/ttf-ms-win10";
|
||||
description = "Windows 10 ttf Fonts";
|
||||
license = licenses.unfree;
|
||||
maintainers = [];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue