Compare commits
1 Commits
dendritic
...
92066aa6a2
| Author | SHA1 | Date | |
|---|---|---|---|
| 92066aa6a2 |
74
README.md
@@ -1,74 +0,0 @@
|
|||||||
# The Void
|
|
||||||
*An opinionated dendritic nix configuration*
|
|
||||||
|
|
||||||
## The Concept
|
|
||||||
|
|
||||||
I have been trying to get consistent, across device experiences from the second that I
|
|
||||||
started using linux. I tried my best with arch, but I foolishly believed that just remembering
|
|
||||||
what packages I installed would be enough. Then I started managing my dotfiles with GNU stow,
|
|
||||||
but that only allowed for a single host per repo. I moved over to doot, and simultaneously nixos.
|
|
||||||
|
|
||||||
I believed a dotfiles manager was my endgame. The final evolution, but it was far from ideal. I had to
|
|
||||||
manage a mess of dotfiles, submodules and nix packages that were completely uncoupled from the apps that
|
|
||||||
used them. Hyprland just assumed that I had all of my apps installed, assumed that otter-launcher's
|
|
||||||
config existed. Just by forgetting an app or a toml file, I had the potential to brick my entire setup.
|
|
||||||
|
|
||||||
This is no longer the case.
|
|
||||||
|
|
||||||
The solution is similar to that of safely typed languages, like rust. Rust, instead of having optional parameters
|
|
||||||
like typescript, requires that a variable be passed to a function, regardless of whether it contains anything.
|
|
||||||
This leads to what is essentially a fixed dependancy tree, where there are no points of failiure, only allowing
|
|
||||||
for logic errors and such. The same methodology can be applied to nix, using flake parts and wrapper scripts.
|
|
||||||
|
|
||||||
Instead of defining the packages beside the app, and its config, you can use the config to define the required binaries.
|
|
||||||
By wrapping a config that contains a nix variable, ie a binary, that binary is intrinsically linked to that config,
|
|
||||||
and will therefore always be installed. No more dependancy issues, and because the configs are defined within nix too, no
|
|
||||||
more potential for missing config files. Dotfile managers are no more, long live dotfile managers. Any app with a `--config`
|
|
||||||
flag can now be fully versioned and self contained within one repo, config and all, accessible on any machine with nix.
|
|
||||||
|
|
||||||
One command for a truly reproducible, fully contained, configured system. This is the endgame.
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
Usage is similar to any other flake, with everything in the module directory being an output.
|
|
||||||
|
|
||||||
The folder structure is simply defined:
|
|
||||||
```
|
|
||||||
modules/
|
|
||||||
|- features/ - all available apps, every subfolder contains a seperate wrapped binary
|
|
||||||
|- attrs/ - attributes composed of other modules, no new features defined
|
|
||||||
|- system/ - basic system modules, no binaries. Should not be run standalone. (Think network and audio config)
|
|
||||||
|- hosts/ - available presets for machines. Output names match subfolder names, eg #HACKSTATION, and hostnames
|
|
||||||
```
|
|
||||||
|
|
||||||
### Nixos Configurations
|
|
||||||
|
|
||||||
Due to the host module referencing `/etc/nixos/hardware-configuration.nix`, so that it is seperated from the repo,
|
|
||||||
all rebuild commands will need `--impure`, unless you copy your configuration into the repo.
|
|
||||||
|
|
||||||
HACKSTATION is the heavier system, mobile02 is minimal and has no specialist hyprland config.
|
|
||||||
|
|
||||||
It is recommended to clone the repo beforehand, but the system can be built directly from remote
|
|
||||||
```bash
|
|
||||||
# Local Clone, . is the directory containing flake.nix
|
|
||||||
sudo nixos-rebuild switch --impure --flake .
|
|
||||||
|
|
||||||
# Build from remote
|
|
||||||
sudo nixos-rebuild switch --impure --flake "git+https://git.voidarc.co.uk/voidarc/nixos.git?ref=dendritic"
|
|
||||||
```
|
|
||||||
Both of these commands can be appended with a desired hostname in order to build that configuration.
|
|
||||||
```bash
|
|
||||||
# Example of building mobile02 from a local repo
|
|
||||||
sudo nixos-rebuild switch --impure --flake .#mobile02
|
|
||||||
```
|
|
||||||
There is no default output, so if the current hostname doesn't match a host, you will get an error.
|
|
||||||
Building this config should be non destructive to any existing dotfiles, but will remove all users (not home directories)
|
|
||||||
from the system other than `user01`, who's default password is `qwer`.
|
|
||||||
|
|
||||||
### Binaries
|
|
||||||
|
|
||||||
Any binary can be run with the same base command (will change when merged to main)
|
|
||||||
```bash
|
|
||||||
nix run "git+https://git.voidarc.co.uk/voidarc/nixos.git?ref=dendritic#appname"
|
|
||||||
```
|
|
||||||
`Appname` can be substituted for the name of any folder in the `modules/features` dir, ie `kitty` or `otter-launcher`
|
|
||||||
557
flake.lock
generated
@@ -24,11 +24,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1784368054,
|
"lastModified": 1782073106,
|
||||||
"narHash": "sha256-zF1iJkBQSDWmRO4/LEeHR1SpKY0lqZaxkoQJpPS9K9U=",
|
"narHash": "sha256-dnS5SaZlPqR1E0dPXaPc+lFkBwLUbAgbwsVMk7uA6dY=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "9b5f14d9483445e766294eb8fbe0b8f370269ed0",
|
"rev": "6d6e2384f381def4ea4ea81543cba4bbdac72457",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -37,24 +37,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"beaker-src": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1780436704,
|
|
||||||
"narHash": "sha256-3aMH1YblnpiXKdkQVMRLmMZ5/8G7vB4HAfLg7+izyHg=",
|
|
||||||
"ref": "refs/heads/master",
|
|
||||||
"rev": "360d6271e1a20d128430e52637d5d35f4c706ca5",
|
|
||||||
"revCount": 34,
|
|
||||||
"shallow": false,
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.bwaaa.monster/beaker"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"shallow": false,
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.bwaaa.monster/beaker"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"crane": {
|
"crane": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1781825982,
|
"lastModified": 1781825982,
|
||||||
@@ -70,21 +52,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"crane_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1781825982,
|
|
||||||
"narHash": "sha256-SlXKwIRIhrOSAcTjCB3ftPLzJWZStQIPS7J1FlZPnKk=",
|
|
||||||
"owner": "ipetkov",
|
|
||||||
"repo": "crane",
|
|
||||||
"rev": "469fd08d0bcf6926321fa973c6777fbc87785dd7",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "ipetkov",
|
|
||||||
"repo": "crane",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"davinci": {
|
"davinci": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
@@ -192,39 +159,26 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"gitignore": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_7"
|
"nixpkgs": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprland",
|
||||||
|
"pre-commit-hooks",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1709087332,
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||||
"owner": "numtide",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-utils",
|
"repo": "gitignore.nix",
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "numtide",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-utils",
|
"repo": "gitignore.nix",
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils_3": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems_9"
|
|
||||||
},
|
|
||||||
"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"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -359,18 +313,20 @@
|
|||||||
"hyprland": {
|
"hyprland": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprland": "hyprland_2",
|
"hyprland": "hyprland_2",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
"otter-launcher": "otter-launcher",
|
"otter-launcher": "otter-launcher",
|
||||||
"woomer": "woomer",
|
"woomer": "woomer",
|
||||||
"wrappers": "wrappers",
|
"wrappers": "wrappers",
|
||||||
"wshowkeys": "wshowkeys"
|
"wshowkeys": "wshowkeys"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1786391152,
|
"lastModified": 1783179784,
|
||||||
"narHash": "sha256-P+dUN0wWRYLop9lLsnCOEi5bYE/GC5LvzV2VZh520TM=",
|
"narHash": "sha256-9qyKPHXc2fK6oZxCXLV9q0WdyNYdgCpfiAouRf+ELrc=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "b4426becc44de00e891098b9883eca2b2028f981",
|
"rev": "bdd6ec3efa05c1130002808d4c2c4552bb20587a",
|
||||||
"revCount": 53,
|
"revCount": 37,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://git.voidarc.co.uk/voidarc/hypr"
|
"url": "https://git.voidarc.co.uk/voidarc/hypr"
|
||||||
},
|
},
|
||||||
@@ -419,11 +375,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1784196523,
|
"lastModified": 1782563850,
|
||||||
"narHash": "sha256-ahtKMGXFJdlQNhatQm1+BBU/pGfGYnAqQt3vWvq4p8s=",
|
"narHash": "sha256-rs/EzgrgPHbCtJjFZN4aR1HYldH/0NtGAempWVpWQTs=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-guiutils",
|
"repo": "hyprland-guiutils",
|
||||||
"rev": "a6ccb6cb112ed5a244c0191fb972347ecfa893e0",
|
"rev": "5ba080ee036c30cb2485f2647ff8a61f7aa08178",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -476,11 +432,11 @@
|
|||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785237127,
|
"lastModified": 1783110106,
|
||||||
"narHash": "sha256-sMSWRj9zZ3O4Q1Bk8mKkdXsTb3zpXRESlrzWmQXmW54=",
|
"narHash": "sha256-PRnnFkTfQ+sQHSrcWw0512zEMNp5/1WHJeVuDf6FmxI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "ff24e1755fd308ee70367d63168a12feb05d1fc2",
|
"rev": "14fa1fd0273973b7a40966b4fa9e081d6bf67dae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -594,11 +550,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1784323413,
|
"lastModified": 1783002634,
|
||||||
"narHash": "sha256-XnAVV+H4f8Xdv0yZcSwJ5kCjLyE8fHxPeLX6a3HSrAU=",
|
"narHash": "sha256-xGqHIUK0wIZoW7SiMalwvO6uGOO/VrlQwoRobpE7dDI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprutils",
|
"repo": "hyprutils",
|
||||||
"rev": "5f03477ab3a005ff27c527486f551883535aea2f",
|
"rev": "41fb809557abd29a57151b6e1aaeabd05f9437e1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -668,11 +624,11 @@
|
|||||||
},
|
},
|
||||||
"import-tree": {
|
"import-tree": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1784254960,
|
"lastModified": 1778781969,
|
||||||
"narHash": "sha256-iI88R3wHz8wTKQb5orvpc51L/Xr64AJyxid/0MKa/b8=",
|
"narHash": "sha256-Jjuz5CmSkur8KvLDoGa+vylEp+RkQtv4mt/qcMznpH0=",
|
||||||
"owner": "vic",
|
"owner": "vic",
|
||||||
"repo": "import-tree",
|
"repo": "import-tree",
|
||||||
"rev": "4ebb10ae17d5f1ad366e7aef5b92cb8eecf24f69",
|
"rev": "d321337efd0f23a9eb14a42adb7b2c29313ab274",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -758,135 +714,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_10": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1744536153,
|
|
||||||
"narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixpkgs-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_11": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1780336545,
|
|
||||||
"narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "4df1b885d76a54e1aa1a318f8d16fd6005b6401f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixpkgs-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_12": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1781577229,
|
|
||||||
"narHash": "sha256-lrp67w8AulE9Ks53n27I45ADSzbOCn4H+CNW1Ck8B+8=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "567a49d1913ce81ac6e9582e3553dd90a955875f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1784356753,
|
|
||||||
"narHash": "sha256-12KrbMiWLcf8m7pCvAtZh1ZrgF85ZXDXvfR/fWTKy84=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "61b7c44c4073f0b827768aff0049561b5110ea5a",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1785090369,
|
|
||||||
"narHash": "sha256-m0pDuRJG7EDo9ri+4Ksu83VsI+PlxNC9lNBfydejce4=",
|
|
||||||
"owner": "nixos",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "624af665418d3c65d544145b4d34ad696439570e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nixos",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_4": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1782175435,
|
|
||||||
"narHash": "sha256-EMzXKmnOtBQ2MnvpiNOm7E+kOMvdPrIKaeg52Tip2Uk=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "89570f24e97e614aa34aa9ab1c927b6578a43775",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixpkgs-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_5": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1773734432,
|
|
||||||
"narHash": "sha256-IF5ppUWh6gHGHYDbtVUyhwy/i7D261P7fWD1bPefOsw=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "cda48547b432e8d3b18b4180ba07473762ec8558",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_6": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1785386831,
|
|
||||||
"narHash": "sha256-sPS3CaXH8RAT3FZRuy4VcV47iuYIWMMfa0GbyJKC3o4=",
|
|
||||||
"owner": "nixos",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "21ea275a7c46aef9d4d6ddc962e6d562e9d94183",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nixos",
|
|
||||||
"ref": "nixos-26.05",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_7": {
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1782467914,
|
"lastModified": 1782467914,
|
||||||
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=",
|
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=",
|
||||||
@@ -902,7 +730,71 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_8": {
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1782175435,
|
||||||
|
"narHash": "sha256-EMzXKmnOtBQ2MnvpiNOm7E+kOMvdPrIKaeg52Tip2Uk=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "89570f24e97e614aa34aa9ab1c927b6578a43775",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1773734432,
|
||||||
|
"narHash": "sha256-IF5ppUWh6gHGHYDbtVUyhwy/i7D261P7fWD1bPefOsw=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "cda48547b432e8d3b18b4180ba07473762ec8558",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1783148766,
|
||||||
|
"narHash": "sha256-uslt2pqShTIXDdAHRHv2QkYLsVdY8Oqwz0EA48/RSM8=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "a50de1b7d8a586adc18d2395c19de7d6058e6030",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-26.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_6": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1782467914,
|
||||||
|
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "e73de5be04e0eff4190a1432b946d469c794e7b4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_7": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1780336545,
|
"lastModified": 1780336545,
|
||||||
"narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=",
|
"narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=",
|
||||||
@@ -918,7 +810,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_9": {
|
"nixpkgs_8": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783224372,
|
"lastModified": 1783224372,
|
||||||
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=",
|
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=",
|
||||||
@@ -934,17 +826,33 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs_9": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1780336545,
|
||||||
|
"narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "4df1b885d76a54e1aa1a318f8d16fd6005b6401f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nvim": {
|
"nvim": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs_7",
|
"nixpkgs": "nixpkgs_6",
|
||||||
"wrappers": "wrappers_2"
|
"wrappers": "wrappers_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1786377545,
|
"lastModified": 1783352922,
|
||||||
"narHash": "sha256-I5/PcFU0jlDw6+32MXpMGJxxHqWBUdYCt6DzFDctybw=",
|
"narHash": "sha256-59Kea6PaeTM6ZBEAWzdPnuLlij2emLd21JsPnobR3B0=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "dc386a5f5cf31925c513a3a39f546d5364289095",
|
"rev": "970da906087f0691932418db8757803d64f60c28",
|
||||||
"revCount": 100,
|
"revCount": 94,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://git.voidarc.co.uk/voidarc/nvim"
|
"url": "https://git.voidarc.co.uk/voidarc/nvim"
|
||||||
},
|
},
|
||||||
@@ -953,27 +861,6 @@
|
|||||||
"url": "https://git.voidarc.co.uk/voidarc/nvim"
|
"url": "https://git.voidarc.co.uk/voidarc/nvim"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"omnisearch": {
|
|
||||||
"inputs": {
|
|
||||||
"beaker-src": "beaker-src",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1780508528,
|
|
||||||
"narHash": "sha256-0OkItQH4D8KcS+mIxgrzGHTHMl7Eb6ZHzTN3UmZbtWI=",
|
|
||||||
"ref": "refs/heads/master",
|
|
||||||
"rev": "e48c6366d07e0357afa379dff7b73328589164e5",
|
|
||||||
"revCount": 131,
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.voidarc.co.uk/voidarc/omnisearch"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.voidarc.co.uk/voidarc/omnisearch"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"otter-launcher": {
|
"otter-launcher": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_2",
|
||||||
@@ -985,11 +872,11 @@
|
|||||||
"systems": "systems_3"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783875707,
|
"lastModified": 1783145565,
|
||||||
"narHash": "sha256-Ryg3PqFcGydelQpgPF0j8GMaXaGDrNTSesEy6fDw/eg=",
|
"narHash": "sha256-czL1P2nQV3JrbV6J2b3jXnWcz+Kbz+xhaXKk3+wdnF0=",
|
||||||
"owner": "kuokuo123",
|
"owner": "kuokuo123",
|
||||||
"repo": "otter-launcher",
|
"repo": "otter-launcher",
|
||||||
"rev": "242e5da4f0acc0b4301be7b4546f5afb3e4b23d6",
|
"rev": "2e35ce8c7ba6f5e4d98bf4c9073f5fa91143744d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1008,11 +895,11 @@
|
|||||||
"systems": "systems_6"
|
"systems": "systems_6"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783875707,
|
"lastModified": 1783339207,
|
||||||
"narHash": "sha256-Ryg3PqFcGydelQpgPF0j8GMaXaGDrNTSesEy6fDw/eg=",
|
"narHash": "sha256-ZO2WzXNEM9XKuReixgQuP1G+5nrihYWajugBCIjjPkE=",
|
||||||
"owner": "kuokuo123",
|
"owner": "kuokuo123",
|
||||||
"repo": "otter-launcher",
|
"repo": "otter-launcher",
|
||||||
"rev": "242e5da4f0acc0b4301be7b4546f5afb3e4b23d6",
|
"rev": "d101421377473a190701d53cbe28b8244edad728",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1024,6 +911,7 @@
|
|||||||
"pre-commit-hooks": {
|
"pre-commit-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
|
"gitignore": "gitignore",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"hyprland",
|
"hyprland",
|
||||||
"hyprland",
|
"hyprland",
|
||||||
@@ -1031,11 +919,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1784288435,
|
"lastModified": 1781733627,
|
||||||
"narHash": "sha256-ReRHaLgr/uVqdD8afFSn+myXIfpHeOhP0yYe0TJqAA8=",
|
"narHash": "sha256-U3yTuGBnmXvXoQI3qkpfEDsn9RovQPAjN7ndRco+3u0=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "43b3c1ab9d40fb1dbb008f451988a91e375825e9",
|
"rev": "3bbec39bc90eadfa031e6f3b77272f3f60803e39",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1044,22 +932,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"quickshell": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1786547899,
|
|
||||||
"narHash": "sha256-QxLEKq1R455FlEmaarx3cq9mk4jSBxHg3CyseLiOick=",
|
|
||||||
"ref": "refs/heads/main",
|
|
||||||
"rev": "e33041b66c66a1b68930bfd3bb58746ffbd5f4b2",
|
|
||||||
"revCount": 72,
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.voidarc.co.uk/voidarc/quickshell"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git.voidarc.co.uk/voidarc/quickshell"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"davinci": "davinci",
|
"davinci": "davinci",
|
||||||
@@ -1067,46 +939,23 @@
|
|||||||
"gotify-desktop": "gotify-desktop",
|
"gotify-desktop": "gotify-desktop",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"import-tree": "import-tree",
|
"import-tree": "import-tree",
|
||||||
"nixpkgs": "nixpkgs_6",
|
"nixpkgs": "nixpkgs_5",
|
||||||
"nvim": "nvim",
|
"nvim": "nvim",
|
||||||
"omnisearch": "omnisearch",
|
|
||||||
"otter-launcher": "otter-launcher_2",
|
"otter-launcher": "otter-launcher_2",
|
||||||
"quickshell": "quickshell",
|
|
||||||
"sls-steam": "sls-steam",
|
"sls-steam": "sls-steam",
|
||||||
"weylus": "weylus",
|
"wrappers": "wrappers_3"
|
||||||
"woomer": "woomer_2",
|
|
||||||
"wrappers": "wrappers_3",
|
|
||||||
"wshowkeys": "wshowkeys_2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rust-overlay": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs_10"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1784438913,
|
|
||||||
"narHash": "sha256-NYF7ZM5ip0u+w1pBFDpIGEbrbgN/wpnLFAmBkWkYMXw=",
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"rev": "afacd6819d3765a05814ee8e3de74c77d42ac799",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"sls-steam": {
|
"sls-steam": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs_9"
|
"nixpkgs": "nixpkgs_8"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785411317,
|
"lastModified": 1783322884,
|
||||||
"narHash": "sha256-r/YV6psmPZj9aSMydTmOooTBLFiwMJoCWnaKkUlXiss=",
|
"narHash": "sha256-BmYEQewp9fCTP6KFGnYh2dh6EjMj62FfJQTrksSSN3c=",
|
||||||
"owner": "AceSLS",
|
"owner": "AceSLS",
|
||||||
"repo": "SLSsteam",
|
"repo": "SLSsteam",
|
||||||
"rev": "b3da36b024f565f79ee19b44bea493af3f48ea95",
|
"rev": "8ef40a2bdc662331f215775e525e1b010a2ffba3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1205,51 +1054,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_7": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_8": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_9": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"utils": {
|
"utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
@@ -1268,32 +1072,10 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weylus": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": "flake-utils_2",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"rust-overlay": "rust-overlay"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1784471251,
|
|
||||||
"narHash": "sha256-07//RRO1xhgR4lKyq460+iOEDHUw21rJRi59fMUhLfM=",
|
|
||||||
"owner": "voidarclabs",
|
|
||||||
"repo": "WeylusCommunityEdition",
|
|
||||||
"rev": "bcf34c2a2c9d3cbac00ca0d3e6ede5b3bbc6a18c",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "voidarclabs",
|
|
||||||
"repo": "WeylusCommunityEdition",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"woomer": {
|
"woomer": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
"nixpkgs": "nixpkgs_4",
|
"nixpkgs": "nixpkgs_3",
|
||||||
"systems": "systems_4"
|
"systems": "systems_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -1310,38 +1092,16 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"woomer_2": {
|
|
||||||
"inputs": {
|
|
||||||
"crane": "crane_2",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"systems": "systems_8"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1782685056,
|
|
||||||
"narHash": "sha256-WJasTKjf1hcxdCc+jKL3dU5RIL2zdYJ/OBFTmIUbuXc=",
|
|
||||||
"owner": "coffeeispower",
|
|
||||||
"repo": "woomer",
|
|
||||||
"rev": "a7a0b288f70b98d168eaa0e8714816d3583c33b1",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "coffeeispower",
|
|
||||||
"repo": "woomer",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"wrappers": {
|
"wrappers": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs_5"
|
"nixpkgs": "nixpkgs_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785177581,
|
"lastModified": 1782375095,
|
||||||
"narHash": "sha256-9Z4l080DSrHMxoQTZTpVsML2h6JDuB9lDwHPsLd9BrQ=",
|
"narHash": "sha256-bRepNpAluz2i0IIk7Tmzw/4BkyOrwABvc66NEgXPEhA=",
|
||||||
"owner": "lassulus",
|
"owner": "lassulus",
|
||||||
"repo": "wrappers",
|
"repo": "wrappers",
|
||||||
"rev": "f57bc81aa9669871343341b13aa175c8927b6a74",
|
"rev": "cd780e92c0fa66c2e721e1d91894f3db13b9f2b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1352,7 +1112,7 @@
|
|||||||
},
|
},
|
||||||
"wrappers_2": {
|
"wrappers_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs_8"
|
"nixpkgs": "nixpkgs_7"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1782135443,
|
"lastModified": 1782135443,
|
||||||
@@ -1370,7 +1130,7 @@
|
|||||||
},
|
},
|
||||||
"wrappers_3": {
|
"wrappers_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs_11"
|
"nixpkgs": "nixpkgs_9"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1782135443,
|
"lastModified": 1782135443,
|
||||||
@@ -1408,25 +1168,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"wshowkeys_2": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": "flake-utils_3",
|
|
||||||
"nixpkgs": "nixpkgs_12"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1781708685,
|
|
||||||
"narHash": "sha256-NH5b736WoI9LodJKPlonO1X+Lxg8URMLLRkT5to61Zg=",
|
|
||||||
"owner": "voidarclabs",
|
|
||||||
"repo": "wshowkeys",
|
|
||||||
"rev": "47dfb7a0237acbf847ca28cbb88000b33929f50a",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "voidarclabs",
|
|
||||||
"repo": "wshowkeys",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xdph": {
|
"xdph": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprland-protocols": [
|
"hyprland-protocols": [
|
||||||
@@ -1461,11 +1202,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1784371182,
|
"lastModified": 1782311043,
|
||||||
"narHash": "sha256-S8A1lezEalltWcCp3gAic5lssS0xTSISK6fKODefhOk=",
|
"narHash": "sha256-07zLc2M3/ax+JsjxGTft17/Joua41LHE9/9AC/F9zeU=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "xdg-desktop-portal-hyprland",
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
"rev": "08d99f727944dd15e4740090305e31c5fb92a50a",
|
"rev": "882ad01e195ce201b07c618bbee44a0cad8b9e5a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
18
flake.nix
@@ -9,6 +9,7 @@
|
|||||||
nvim.url = "git+https://git.voidarc.co.uk/voidarc/nvim";
|
nvim.url = "git+https://git.voidarc.co.uk/voidarc/nvim";
|
||||||
hyprland = {
|
hyprland = {
|
||||||
url = "git+https://git.voidarc.co.uk/voidarc/hypr";
|
url = "git+https://git.voidarc.co.uk/voidarc/hypr";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
otter-launcher = {
|
otter-launcher = {
|
||||||
url = "github:kuokuo123/otter-launcher";
|
url = "github:kuokuo123/otter-launcher";
|
||||||
@@ -20,23 +21,6 @@
|
|||||||
};
|
};
|
||||||
sls-steam.url = "github:AceSLS/SLSsteam";
|
sls-steam.url = "github:AceSLS/SLSsteam";
|
||||||
davinci.url = "git+https://git.voidarc.co.uk/voidarc/nixos.davinci";
|
davinci.url = "git+https://git.voidarc.co.uk/voidarc/nixos.davinci";
|
||||||
quickshell = {
|
|
||||||
url = "git+https://git.voidarc.co.uk/voidarc/quickshell";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
omnisearch = {
|
|
||||||
url = "git+https://git.voidarc.co.uk/voidarc/omnisearch";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
woomer = {
|
|
||||||
url = "github:coffeeispower/woomer";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
wshowkeys.url = "github:voidarclabs/wshowkeys";
|
|
||||||
weylus = {
|
|
||||||
url = "github:voidarclabs/WeylusCommunityEdition";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Flake parts
|
# Flake parts
|
||||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
{
|
|
||||||
self,
|
|
||||||
moduleWithSystem,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.bottles = moduleWithSystem ({pkgs, ...}: {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
(bottles.override {
|
|
||||||
removeWarningPopup = true;
|
|
||||||
})
|
|
||||||
wineWow64Packages.stable
|
|
||||||
winetricks
|
|
||||||
wine
|
|
||||||
wine64
|
|
||||||
freetype
|
|
||||||
];
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -1,9 +1,13 @@
|
|||||||
{
|
{
|
||||||
self,
|
self,
|
||||||
moduleWithSystem,
|
inputs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
flake.nixosModules.development = moduleWithSystem ({pkgs, ...}: let
|
flake.nixosModules.development = {
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
modules = with self.nixosModules; [
|
modules = with self.nixosModules; [
|
||||||
git
|
git
|
||||||
nvim
|
nvim
|
||||||
@@ -13,7 +17,6 @@
|
|||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
opencode
|
opencode
|
||||||
devenv
|
devenv
|
||||||
jellyfin-tui
|
|
||||||
];
|
];
|
||||||
});
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,13 +1,17 @@
|
|||||||
{
|
{
|
||||||
self,
|
self,
|
||||||
moduleWithSystem,
|
inputs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
flake.nixosModules.gaming = moduleWithSystem ({...}: let
|
flake.nixosModules.gaming = {
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
modules = with self.nixosModules; [
|
modules = with self.nixosModules; [
|
||||||
steam
|
steam
|
||||||
];
|
];
|
||||||
in {
|
in {
|
||||||
imports = modules;
|
imports = modules;
|
||||||
});
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
self,
|
|
||||||
moduleWithSystem,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.youtube = moduleWithSystem ({...}: let
|
|
||||||
modules = with self.nixosModules; [
|
|
||||||
obs-studio
|
|
||||||
wshowkeys
|
|
||||||
woomer
|
|
||||||
mumble
|
|
||||||
];
|
|
||||||
in {
|
|
||||||
imports = modules;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
{
|
{
|
||||||
|
wrappers,
|
||||||
self,
|
self,
|
||||||
moduleWithSystem,
|
moduleWithSystem,
|
||||||
...
|
...
|
||||||
|
|||||||
71
modules/features/hypr/default.nix
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
{
|
||||||
|
moduleWithSystem,
|
||||||
|
self,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
flake.nixosModules.hyprland = moduleWithSystem ({
|
||||||
|
self',
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
modules = with self.nixosModules; [
|
||||||
|
audio
|
||||||
|
systemTheme
|
||||||
|
];
|
||||||
|
in {
|
||||||
|
imports = modules;
|
||||||
|
programs.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
package = self'.packages.hyprland;
|
||||||
|
};
|
||||||
|
services.xserver.enable = true;
|
||||||
|
security.polkit.enable = true;
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
hyprlock
|
||||||
|
gsettings-desktop-schemas
|
||||||
|
];
|
||||||
|
});
|
||||||
|
perSystem = {
|
||||||
|
pkgs,
|
||||||
|
self',
|
||||||
|
system,
|
||||||
|
inputs',
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
packages = {
|
||||||
|
hyprland = inputs'.hyprland.packages.default.override {
|
||||||
|
runtimePackages =
|
||||||
|
inputs.hyprland.lib.defaultRuntimePkgs.${system}
|
||||||
|
// {
|
||||||
|
wpaperd = self'.packages.wpaperd;
|
||||||
|
kitty = self'.packages.kitty;
|
||||||
|
gotify-desktop = self'.packages.gotify-desktop;
|
||||||
|
otter-launcher = self'.packages.otter-launcher;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
wpaperd = let
|
||||||
|
config-file = builtins.toFile "config.toml" ''
|
||||||
|
[any]
|
||||||
|
path = "${./wallpapers}"
|
||||||
|
|
||||||
|
[HDMI-A-1]
|
||||||
|
path = "${./wallpapers/topo1.png}"
|
||||||
|
|
||||||
|
[DP-1]
|
||||||
|
path = "${./wallpapers/topo2.png}"
|
||||||
|
|
||||||
|
[DP-2]
|
||||||
|
path = "${./wallpapers/topo3.png}"
|
||||||
|
'';
|
||||||
|
in
|
||||||
|
inputs.wrappers.lib.wrapPackage ({...}: {
|
||||||
|
inherit pkgs;
|
||||||
|
package = pkgs.wpaperd;
|
||||||
|
flags = {
|
||||||
|
"--config" = config-file;
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
Before Width: | Height: | Size: 227 KiB After Width: | Height: | Size: 227 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 1.9 MiB After Width: | Height: | Size: 1.9 MiB |
|
Before Width: | Height: | Size: 250 KiB After Width: | Height: | Size: 250 KiB |
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 653 KiB After Width: | Height: | Size: 653 KiB |
|
Before Width: | Height: | Size: 6.9 MiB After Width: | Height: | Size: 6.9 MiB |
|
Before Width: | Height: | Size: 406 KiB After Width: | Height: | Size: 406 KiB |
|
Before Width: | Height: | Size: 551 KiB After Width: | Height: | Size: 551 KiB |
|
Before Width: | Height: | Size: 8.7 MiB After Width: | Height: | Size: 8.7 MiB |
|
Before Width: | Height: | Size: 310 KiB After Width: | Height: | Size: 310 KiB |
|
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 1.7 MiB After Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 2.9 MiB After Width: | Height: | Size: 2.9 MiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 286 KiB After Width: | Height: | Size: 286 KiB |
|
Before Width: | Height: | Size: 592 KiB After Width: | Height: | Size: 592 KiB |
|
Before Width: | Height: | Size: 194 KiB After Width: | Height: | Size: 194 KiB |
@@ -1,80 +0,0 @@
|
|||||||
{
|
|
||||||
moduleWithSystem,
|
|
||||||
self,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.hyprland = moduleWithSystem ({
|
|
||||||
self',
|
|
||||||
pkgs,
|
|
||||||
inputs',
|
|
||||||
...
|
|
||||||
}: {config, ...}: let
|
|
||||||
modules = with self.nixosModules; [
|
|
||||||
audio
|
|
||||||
systemTheme
|
|
||||||
];
|
|
||||||
|
|
||||||
runtimePkgs = self'.packages.hyprland.passthru.runtimePackages;
|
|
||||||
lib = pkgs.lib;
|
|
||||||
|
|
||||||
runtimeTarget = name: pkg:
|
|
||||||
if config.security.wrappers ? ${name}
|
|
||||||
then "/run/wrappers/bin/${name}"
|
|
||||||
else lib.getExe pkg;
|
|
||||||
in {
|
|
||||||
imports = modules;
|
|
||||||
programs.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
package = self'.packages.hyprland;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.displayManager.defaultSession = "hyprland";
|
|
||||||
services.xserver.enable = true;
|
|
||||||
security.polkit.enable = true;
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
hyprlock
|
|
||||||
gsettings-desktop-schemas
|
|
||||||
];
|
|
||||||
|
|
||||||
system.activationScripts.hyprRuntimeEnv = lib.stringAfter ["specialfs"] ''
|
|
||||||
mkdir -p /run/hypr-runtime-env/bin
|
|
||||||
${lib.concatStringsSep "\n" (lib.mapAttrsToList (name: pkg: ''
|
|
||||||
ln -sfn ${runtimeTarget name pkg} /run/hypr-runtime-env/bin/${name}
|
|
||||||
'')
|
|
||||||
runtimePkgs)}
|
|
||||||
'';
|
|
||||||
|
|
||||||
system.activationScripts.hyprConfig = lib.stringAfter ["specialfs"] ''
|
|
||||||
mkdir -p /run/hypr/config
|
|
||||||
ln -sfn ${inputs'.hyprland.packages.repo-files}/* /run/hypr/config
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
perSystem = {
|
|
||||||
self',
|
|
||||||
system,
|
|
||||||
inputs',
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
packages = {
|
|
||||||
hyprland = inputs'.hyprland.packages.default.override {
|
|
||||||
flags."--config" = "/run/hypr/config/hyprland.lua";
|
|
||||||
env."MODULES_ROOT" = "/run/hypr/config/modules";
|
|
||||||
runtimePackages =
|
|
||||||
inputs.hyprland.lib.defaultRuntimePkgs.${system}
|
|
||||||
// {
|
|
||||||
wpaperd = self'.packages.wpaperd;
|
|
||||||
kitty = self'.packages.kitty;
|
|
||||||
gotify-desktop = self'.packages.gotify-desktop;
|
|
||||||
otter-launcher = self'.packages.otter-launcher;
|
|
||||||
quickshell = self'.packages.quickshell;
|
|
||||||
wshowkeys = self'.packages.wshowkeys;
|
|
||||||
waybar = self'.packages.waybar;
|
|
||||||
wlogout = self'.packages.wlogout;
|
|
||||||
way-edges = self'.packages.way-edges;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
set $mod Mod4
|
|
||||||
set $term kitty
|
|
||||||
set $menu dmenu_run
|
|
||||||
|
|
||||||
exec --no-startup-id xrandr --output HDMI-1 --mode 1920x1080 --rate 60 --pos -1920x0 --output DP-1 --mode 1920x1080 --rate 60 --pos 0x0 --output DP-2 --mode 1920x1080 --rate 60 --pos 1920x0
|
|
||||||
|
|
||||||
font pango:FiraMono Nerd Font 10
|
|
||||||
|
|
||||||
workspace 1 output DP-1
|
|
||||||
workspace 2 output HDMI-A-1
|
|
||||||
workspace 3 output DP-2
|
|
||||||
|
|
||||||
# Window functions
|
|
||||||
bindsym $mod+BackSpace kill
|
|
||||||
bindsym $mod+b fullscreen toggle
|
|
||||||
|
|
||||||
# Apps
|
|
||||||
bindsym $mod+Return exec --no-startup-id $term
|
|
||||||
bindsym $mod+d exec --no-startup-id $menu
|
|
||||||
bindsym $mod+f exec --no-startup-id firefox
|
|
||||||
bindsym $mod+s exec --no-startup-id nemo
|
|
||||||
|
|
||||||
# Focus windows
|
|
||||||
bindsym $mod+k focus up
|
|
||||||
bindsym $mod+j focus down
|
|
||||||
bindsym $mod+h focus left
|
|
||||||
bindsym $mod+l focus right
|
|
||||||
|
|
||||||
# Move windows
|
|
||||||
bindsym $mod+Shift+h move left
|
|
||||||
bindsym $mod+Shift+l move right
|
|
||||||
bindsym $mod+Shift+k move up
|
|
||||||
bindsym $mod+Shift+j move down
|
|
||||||
|
|
||||||
# Workspaces
|
|
||||||
bindsym $mod+q workspace number 1
|
|
||||||
bindsym $mod+w workspace number 2
|
|
||||||
bindsym $mod+e workspace number 3
|
|
||||||
bindsym $mod+r workspace number 4
|
|
||||||
bindsym $mod+t workspace number 5
|
|
||||||
bindsym $mod+y workspace number 6
|
|
||||||
bindsym $mod+u workspace number 7
|
|
||||||
bindsym $mod+i workspace number 8
|
|
||||||
bindsym $mod+o workspace number 9
|
|
||||||
bindsym $mod+p workspace number 10
|
|
||||||
|
|
||||||
# Move container to workspace
|
|
||||||
bindsym $mod+Shift+q move container to workspace number 1
|
|
||||||
bindsym $mod+Shift+w move container to workspace number 2
|
|
||||||
bindsym $mod+Shift+e move container to workspace number 3
|
|
||||||
bindsym $mod+Shift+r move container to workspace number 4
|
|
||||||
bindsym $mod+Shift+t move container to workspace number 5
|
|
||||||
bindsym $mod+Shift+y move container to workspace number 6
|
|
||||||
bindsym $mod+Shift+u move container to workspace number 7
|
|
||||||
bindsym $mod+Shift+i move container to workspace number 8
|
|
||||||
bindsym $mod+Shift+o move container to workspace number 9
|
|
||||||
bindsym $mod+Shift+p move container to workspace number 10
|
|
||||||
|
|
||||||
# Logout menu
|
|
||||||
bindsym $mod+Shift+a exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
|
|
||||||
|
|
||||||
# Reload
|
|
||||||
bindsym $mod+Shift+m reload
|
|
||||||
|
|
||||||
# Drag windows with titlebar
|
|
||||||
tiling_drag modifier titlebar
|
|
||||||
|
|
||||||
# Bar
|
|
||||||
bar {
|
|
||||||
status_command i3status
|
|
||||||
}
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
{
|
|
||||||
inputs,
|
|
||||||
moduleWithSystem,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.i3 = moduleWithSystem ({
|
|
||||||
pkgs,
|
|
||||||
self',
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
services.xserver = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
desktopManager = {
|
|
||||||
xterm.enable = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
windowManager.i3 = {
|
|
||||||
enable = true;
|
|
||||||
package = self'.packages.i3;
|
|
||||||
extraPackages = with pkgs;
|
|
||||||
[
|
|
||||||
dmenu
|
|
||||||
i3status
|
|
||||||
xinit
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
});
|
|
||||||
perSystem = {pkgs, self', ...}: {
|
|
||||||
packages.i3 = inputs.wrappers.lib.wrapPackage ({...}: {
|
|
||||||
inherit pkgs;
|
|
||||||
package = pkgs.i3;
|
|
||||||
runtimePkgs = with pkgs;
|
|
||||||
[
|
|
||||||
xrandr
|
|
||||||
firefox
|
|
||||||
]
|
|
||||||
++ (with self'.packages; [
|
|
||||||
kitty
|
|
||||||
nemo
|
|
||||||
]);
|
|
||||||
flags = {
|
|
||||||
"-c" = ./config;
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -4,7 +4,10 @@
|
|||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
flake.nixosModules.kitty = moduleWithSystem (
|
flake.nixosModules.kitty = moduleWithSystem (
|
||||||
{self'}: {
|
{
|
||||||
|
pkgs,
|
||||||
|
self',
|
||||||
|
}: {
|
||||||
environment.systemPackages = with self'.packages; [
|
environment.systemPackages = with self'.packages; [
|
||||||
kitty
|
kitty
|
||||||
];
|
];
|
||||||
@@ -23,14 +26,12 @@
|
|||||||
"FONTCONFIG_FILE" = "${fontsConf}";
|
"FONTCONFIG_FILE" = "${fontsConf}";
|
||||||
};
|
};
|
||||||
font = {
|
font = {
|
||||||
name = "FiraMono Nerd Font Mono";
|
name = "FiraMono Nerd Font";
|
||||||
size = 11;
|
size = 11;
|
||||||
};
|
};
|
||||||
settings = {
|
settings = {
|
||||||
font_size = 11;
|
font_size = 11;
|
||||||
scrollbar = "never";
|
window_padding_width = 10;
|
||||||
pixel_scroll = false;
|
|
||||||
window_padding_width = 9;
|
|
||||||
background_opacity = 0.50;
|
background_opacity = 0.50;
|
||||||
confirm_os_window_close = 0;
|
confirm_os_window_close = 0;
|
||||||
enable_audio_bell = false;
|
enable_audio_bell = false;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{moduleWithSystem, ...}: {
|
{moduleWithSystem, ...}: {
|
||||||
flake.nixosModules.nvim = moduleWithSystem ({self', ...}: {
|
flake.nixosModules.nvim = moduleWithSystem ({self', ...}: {
|
||||||
programs.neovim = {
|
programs.nvim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = self'.packages.nvim;
|
package = self'.packages.nvim;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,8 +0,0 @@
|
|||||||
{moduleWithSystem, ...}: {
|
|
||||||
flake.nixosModules.obs-studio = moduleWithSystem ({...}: {
|
|
||||||
programs.obs-studio = {
|
|
||||||
enable = true;
|
|
||||||
enableVirtualCamera = true;
|
|
||||||
};
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
moduleWithSystem,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.omnisearch = moduleWithSystem ({...}: let
|
|
||||||
modules = [
|
|
||||||
inputs.omnisearch.nixosModules.default
|
|
||||||
];
|
|
||||||
in {
|
|
||||||
imports = modules;
|
|
||||||
services.omnisearch.enable = true;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -14,20 +14,14 @@ delay_startup = 0 # sometimes the otter runs too fast even before the terminal w
|
|||||||
[interface]
|
[interface]
|
||||||
# use three quotes to write longer codes
|
# use three quotes to write longer codes
|
||||||
header = """
|
header = """
|
||||||
\x1b[1;38;2;203;166;247m$USER@nixos\x1b[0m
|
\u001B[1;36m$USER@nixos\u001B[0m
|
||||||
"""
|
"""
|
||||||
header_cmd = '' # run a command and print stdout above the header
|
header_cmd = "" # run a command and print stdout above the header
|
||||||
header_cmd_trimmed_lines = 0 # remove trailing lines from header_cmd output, in case of some programs appending excessive empty lines
|
header_cmd_trimmed_lines = 0 # remove trailing lines from header_cmd output, in case of some programs appending excessive empty lines
|
||||||
place_holder = "execute" # at the input field
|
place_holder = "execute" # at the input field
|
||||||
suggestion_mode = "list" # available options: list, hint
|
suggestion_mode = "list" # available options: list, hint
|
||||||
separator = """
|
|
||||||
$( \
|
|
||||||
text=" "; \
|
|
||||||
printf "\u001B[0;90m$text \
|
|
||||||
$(printf -v line '%*s' \"$(( COLUMNS - $(printf "$text" | wc -m) - 3 ))\" ''; printf '%s' \"${line// /─}\")" \
|
|
||||||
)"""
|
|
||||||
footer = "" # add a line after suggestion list
|
footer = "" # add a line after suggestion list
|
||||||
suggestion_lines = 7 # 0 to disable suggestions and tab completion
|
suggestion_lines = 8 # 0 to disable suggestions and tab completion
|
||||||
list_prefix = " "
|
list_prefix = " "
|
||||||
selection_prefix = "\u001B[31;1m "
|
selection_prefix = "\u001B[31;1m "
|
||||||
prefix_padding = 3 # format prefixes to have a uniformed width
|
prefix_padding = 3 # format prefixes to have a uniformed width
|
||||||
|
|||||||
@@ -19,13 +19,14 @@
|
|||||||
otter-launcher = let
|
otter-launcher = let
|
||||||
extra-config = ''
|
extra-config = ''
|
||||||
[overlay]
|
[overlay]
|
||||||
overlay_cmd = "${lib.getExe pkgs.kitty} +kitten icat --fit height --align left --no-trailing-newline ${./cat.png}"
|
overlay_cmd = """
|
||||||
overlay_trimmed_lines = 0
|
${lib.getExe pkgs.chafa} -s 20x20 ${./cat.png}
|
||||||
|
"""
|
||||||
|
# overlay_trimmed_lines = 1
|
||||||
'';
|
'';
|
||||||
final-config = pkgs.writeText "config.toml" ''
|
final-config = pkgs.writeText "config.toml" ''
|
||||||
${extra-config}
|
|
||||||
|
|
||||||
${builtins.readFile ./config.toml}
|
${builtins.readFile ./config.toml}
|
||||||
|
${extra-config}
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
inputs.wrappers.lib.wrapPackage ({...}: {
|
inputs.wrappers.lib.wrapPackage ({...}: {
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
moduleWithSystem,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.quickshell = moduleWithSystem ({
|
|
||||||
self',
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
environment.systemPackages = with self'.packages; [
|
|
||||||
quickshell
|
|
||||||
];
|
|
||||||
});
|
|
||||||
perSystem = {pkgs, ...}: {
|
|
||||||
packages.quickshell = inputs.wrappers.wrappers.quickshell.wrap {
|
|
||||||
inherit pkgs;
|
|
||||||
configDir = inputs.quickshell;
|
|
||||||
configFile = "${inputs.quickshell}/shell.qml";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -7,7 +7,12 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: {
|
}: let
|
||||||
|
modules = with self.nixosModules; [
|
||||||
|
sddm
|
||||||
|
];
|
||||||
|
in {
|
||||||
|
imports = modules;
|
||||||
services.displayManager = {
|
services.displayManager = {
|
||||||
autoLogin.enable = true;
|
autoLogin.enable = true;
|
||||||
autoLogin.user = "user01";
|
autoLogin.user = "user01";
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
{moduleWithSystem, ...}: {
|
{
|
||||||
|
moduleWithSystem,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
flake.nixosModules.steam = moduleWithSystem ({
|
flake.nixosModules.steam = moduleWithSystem ({
|
||||||
pkgs,
|
pkgs,
|
||||||
unfreePkgs,
|
|
||||||
inputs',
|
inputs',
|
||||||
lib,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
# If buying isn't owning than piracy isn't stealing
|
# If buying isn't owning than piracy isn't stealing
|
||||||
@@ -16,7 +17,7 @@
|
|||||||
extraCompatPackages = with pkgs; [
|
extraCompatPackages = with pkgs; [
|
||||||
proton-ge-bin
|
proton-ge-bin
|
||||||
];
|
];
|
||||||
package = unfreePkgs.steam.override {
|
package = pkgs.steam.override {
|
||||||
extraEnv = {
|
extraEnv = {
|
||||||
LD_AUDIT = "${
|
LD_AUDIT = "${
|
||||||
inputs'.sls-steam.packages.sls-steam
|
inputs'.sls-steam.packages.sls-steam
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
{
|
|
||||||
self,
|
|
||||||
moduleWithSystem,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.tailscale = moduleWithSystem ({...}: {
|
|
||||||
services.tailscale = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
});
|
|
||||||
}
|
|
||||||
15
modules/features/unbound/default.nix
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
self,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
flake.nixosModules.unbound = {
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
services.unbound = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
{
|
|
||||||
"allow-trailing-commas": true,
|
|
||||||
"widgets": [
|
|
||||||
{
|
|
||||||
"type": "slider",
|
|
||||||
"edge": "right",
|
|
||||||
"position": "top",
|
|
||||||
"thickness": 30,
|
|
||||||
"length": "25%",
|
|
||||||
"margins": {
|
|
||||||
"top": "50%"
|
|
||||||
},
|
|
||||||
"border-width": 4,
|
|
||||||
"border-color": "#cba6f7ff",
|
|
||||||
"fg-color": "#cba6f7bb",
|
|
||||||
"bg-color": "#31324466",
|
|
||||||
"fg-text-color": "#11111bff",
|
|
||||||
"bg-text-color": "#bac2dedd",
|
|
||||||
"transition-duration": 100,
|
|
||||||
"redraw-only-on-internal-update": true,
|
|
||||||
"radius": 10, // corner radius
|
|
||||||
"obtuse-angle": 90, // in degrees(90~180). controls how much curve the widget has
|
|
||||||
"scroll-unit": 0.005,
|
|
||||||
"pinnable": false,
|
|
||||||
"preset": {
|
|
||||||
"type": "speaker",
|
|
||||||
"animation-curve": "Linear", // mute animation
|
|
||||||
"mute-text-color": "#f38ba8ff",
|
|
||||||
"mute-color": "#f38ba8bb",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "slider",
|
|
||||||
"edge": "right",
|
|
||||||
"position": "top",
|
|
||||||
"thickness": 30,
|
|
||||||
"length": "25%",
|
|
||||||
"margins": {
|
|
||||||
"top": "25%"
|
|
||||||
},
|
|
||||||
"border-width": 4,
|
|
||||||
"border-color": "#f9e2afff",
|
|
||||||
"fg-color": "#f9e2afbb",
|
|
||||||
"bg-color": "#31324466",
|
|
||||||
"fg-text-color": "#11111bff",
|
|
||||||
"bg-text-color": "#bac2dedd",
|
|
||||||
"transition-duration": 100,
|
|
||||||
"redraw-only-on-internal-update": true,
|
|
||||||
"radius": 10, // corner radius
|
|
||||||
"obtuse-angle": 90, // in degrees(90~180). controls how much curve the widget has
|
|
||||||
"scroll-unit": 0.005,
|
|
||||||
"pinnable": false,
|
|
||||||
"preset": {
|
|
||||||
"type": "backlight",
|
|
||||||
"device": "intel_backlight", // this is the name of the device. Find it under `/sys/class/backlight/` It should be something like `nvidia_0`, `intel_0`, etc.
|
|
||||||
},
|
|
||||||
},
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
{
|
|
||||||
inputs,
|
|
||||||
moduleWithSystem,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.way-edges = moduleWithSystem ({self', ...}: {
|
|
||||||
environment.systemPackages = with self'.packages; [
|
|
||||||
way-edges
|
|
||||||
];
|
|
||||||
});
|
|
||||||
perSystem = {pkgs, ...}: {
|
|
||||||
packages.way-edges = inputs.wrappers.lib.wrapPackage ({...}: {
|
|
||||||
inherit pkgs;
|
|
||||||
package = pkgs.way-edges;
|
|
||||||
flags = {
|
|
||||||
"--config-path" = ./config.jsonc;
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
{
|
|
||||||
moduleWithSystem,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.waybar = moduleWithSystem ({self', ...}: {
|
|
||||||
environment.systemPackages = with self'.packages; [
|
|
||||||
waybar
|
|
||||||
];
|
|
||||||
});
|
|
||||||
perSystem = {pkgs, ...}: {
|
|
||||||
packages.waybar = inputs.wrappers.wrappers.waybar.wrap {
|
|
||||||
inherit pkgs;
|
|
||||||
"style.css".path = ./style.css;
|
|
||||||
configFile.content = ''
|
|
||||||
{
|
|
||||||
"include": [
|
|
||||||
"${./modules.jsonc}"
|
|
||||||
],
|
|
||||||
"height": 20,
|
|
||||||
"margin": "3 6",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"position": "top",
|
|
||||||
"modules-left": [
|
|
||||||
"custom/logo",
|
|
||||||
"hyprland/workspaces"
|
|
||||||
],
|
|
||||||
"modules-center": [
|
|
||||||
"mpris"
|
|
||||||
],
|
|
||||||
"modules-right": [
|
|
||||||
"network",
|
|
||||||
"bluetooth",
|
|
||||||
"custom/notifs",
|
|
||||||
"battery",
|
|
||||||
"clock"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,78 +0,0 @@
|
|||||||
{
|
|
||||||
"custom/logo": {
|
|
||||||
"format": ""
|
|
||||||
},
|
|
||||||
"mpris": {
|
|
||||||
"format": "{status_icon} {title} - {artist}",
|
|
||||||
"title-len": 50,
|
|
||||||
"artist-len": 20,
|
|
||||||
"status-icons": {
|
|
||||||
"playing": "",
|
|
||||||
"paused": ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"network": {
|
|
||||||
"format": "",
|
|
||||||
"format-ethernet": "",
|
|
||||||
"format-wifi": "{icon}",
|
|
||||||
"format-icons": [
|
|
||||||
"",
|
|
||||||
"",
|
|
||||||
"",
|
|
||||||
""
|
|
||||||
],
|
|
||||||
"format-alt": "{ipaddr} / {gwaddr}",
|
|
||||||
"tooltip-format": "{ifname} - {essid}"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"tooltip-format": "{status} - {device_alias}",
|
|
||||||
"on-click": "kitty --class otter --title otter-launcher -e sh -c 'sleep 0.05 && otter-launcher bl'"
|
|
||||||
},
|
|
||||||
"battery": {
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-plugged": " {capacity}%",
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
"states": {
|
|
||||||
"warning": 30,
|
|
||||||
"critical": 15
|
|
||||||
},
|
|
||||||
"format-icons": [
|
|
||||||
"",
|
|
||||||
"",
|
|
||||||
"",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"custom/notifs": {
|
|
||||||
"format": "",
|
|
||||||
"on-click": "kitty --class otter --title otter-launcher -e sh -c 'sleep 0.05 && otter-launcher dunst'"
|
|
||||||
},
|
|
||||||
"memory": {
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"tooltip-format": "{used:0.1f}GiB, {swapUsed:0.1f}GiB Swap"
|
|
||||||
},
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%"
|
|
||||||
},
|
|
||||||
"clock": {
|
|
||||||
"interval": 1,
|
|
||||||
"format": "{:%T}",
|
|
||||||
"tooltip-format": "<tt><small>{calendar}</small></tt>",
|
|
||||||
"calendar": {
|
|
||||||
"mode" : "year",
|
|
||||||
"mode-mon-col" : 3,
|
|
||||||
"weeks-pos" : "right",
|
|
||||||
"on-scroll" : 1,
|
|
||||||
"format": {
|
|
||||||
"months": "<span color='#89b4fa'><b>{}</b></span>",
|
|
||||||
"days": "<span color='#eba0ac'><b>{}</b></span>",
|
|
||||||
"weeks": "<span color='#a6e3a1'><b>W{}</b></span>",
|
|
||||||
"weekdays": "<span color='#fab387'><b>{}</b></span>",
|
|
||||||
"today": "<span color='#cba6f7'><b><u>{}</u></b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1,158 +0,0 @@
|
|||||||
* {
|
|
||||||
font-family: "Fira Mono Nerd Font Propo";
|
|
||||||
font-size: 16px;
|
|
||||||
font-weight: bold;
|
|
||||||
min-height: 16px;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
window#waybar {
|
|
||||||
background: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
.module {
|
|
||||||
background-color: rgba(30, 30, 46, 0.8);
|
|
||||||
margin: 0 3px;
|
|
||||||
padding: 0 9px;
|
|
||||||
border-radius: 7px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-logo {
|
|
||||||
background-color: #cba6f7;
|
|
||||||
color: #1e1e2e;
|
|
||||||
font-size: 21px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces {
|
|
||||||
padding: 3px 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button {
|
|
||||||
background-color: #585b70;
|
|
||||||
margin: 0 2px;
|
|
||||||
padding: 0 2px;
|
|
||||||
border-radius: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button:first-child {
|
|
||||||
border-radius: 5px 2px 2px 5px;
|
|
||||||
margin: 0;
|
|
||||||
margin-right: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button:last-child {
|
|
||||||
border-radius: 2px 5px 5px 4px;
|
|
||||||
margin: 0;
|
|
||||||
margin-left: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button:only-child {
|
|
||||||
border-radius: 5px;
|
|
||||||
padding: 0 12px;
|
|
||||||
margin: 0 1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.active {
|
|
||||||
background-color: #b4befe;
|
|
||||||
color: #313244;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpris {
|
|
||||||
font-size: 14px;
|
|
||||||
transition:
|
|
||||||
color 0.5s,
|
|
||||||
background-color 0.5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpris.paused {
|
|
||||||
color: #f2cdcd;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpris.playing {
|
|
||||||
color: rgba(30, 30, 46, 0.8);
|
|
||||||
background-color: #ca9ee6;
|
|
||||||
}
|
|
||||||
|
|
||||||
#network {
|
|
||||||
background-color: #f38ba8;
|
|
||||||
color: #1e1e2e;
|
|
||||||
}
|
|
||||||
|
|
||||||
#bluetooth {
|
|
||||||
background-color: #fab387;
|
|
||||||
color: #1e1e2e;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-notifs {
|
|
||||||
background-color: #f9e2af;
|
|
||||||
color: #1e1e2e;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery {
|
|
||||||
background-color: #a6e3a1;
|
|
||||||
color: #1e1e2e;
|
|
||||||
transition:
|
|
||||||
color 0.5s,
|
|
||||||
background-color 0.5s,
|
|
||||||
linear-gradient 0.4s;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.warning {
|
|
||||||
color: #1e1e2e;
|
|
||||||
background: #f38ba8;
|
|
||||||
background: linear-gradient(
|
|
||||||
135deg,
|
|
||||||
rgba(243, 139, 168, 1) 0%,
|
|
||||||
rgba(166, 218, 149, 1) 65%,
|
|
||||||
rgba(166, 218, 149, 1) 100%
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.charging {
|
|
||||||
background-color: #40a02b;
|
|
||||||
background: #cba6f7;
|
|
||||||
background: linear-gradient(
|
|
||||||
135deg,
|
|
||||||
rgba(203, 166, 247, 1) 0%,
|
|
||||||
rgba(166, 218, 149, 1) 65%,
|
|
||||||
rgba(166, 218, 149, 1) 100%
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.plugged {
|
|
||||||
background-color: #40a02b;
|
|
||||||
background: #cba6f7;
|
|
||||||
background: linear-gradient(
|
|
||||||
135deg,
|
|
||||||
rgba(203, 166, 247, 1) 0%,
|
|
||||||
rgba(166, 218, 149, 1) 65%,
|
|
||||||
rgba(166, 218, 149, 1) 100%
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.critical {
|
|
||||||
color: #f38ba8;
|
|
||||||
}
|
|
||||||
|
|
||||||
#memory {
|
|
||||||
padding-right: 3px;
|
|
||||||
border-radius: 7px 0 0 7px;
|
|
||||||
margin-right: 0;
|
|
||||||
background-color: #89dceb;
|
|
||||||
color: #1e1e2e;
|
|
||||||
}
|
|
||||||
|
|
||||||
#cpu {
|
|
||||||
padding-left: 3px;
|
|
||||||
border-radius: 0 7px 7px 0;
|
|
||||||
margin-left: 0;
|
|
||||||
background-color: #89dceb;
|
|
||||||
color: #1e1e2e;
|
|
||||||
}
|
|
||||||
|
|
||||||
#clock {
|
|
||||||
background-color: #89b4fa;
|
|
||||||
color: #1e1e2e;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
{moduleWithSystem, ...}: {
|
|
||||||
flake.nixosModules.weylus = moduleWithSystem ({inputs', ...}: {
|
|
||||||
programs.weylus = {
|
|
||||||
enable = true;
|
|
||||||
package = inputs'.weylus.packages.default;
|
|
||||||
users = ["user01"];
|
|
||||||
};
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
inputs,
|
|
||||||
moduleWithSystem,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.wlogout = moduleWithSystem ({self', ...}: {
|
|
||||||
environment.systemPackages = with self'.packages; [
|
|
||||||
wlogout
|
|
||||||
];
|
|
||||||
});
|
|
||||||
perSystem = {pkgs, ...}: {
|
|
||||||
packages.wlogout = inputs.wrappers.lib.wrapPackage ({...}: {
|
|
||||||
inherit pkgs;
|
|
||||||
package = pkgs.wlogout;
|
|
||||||
flags = {
|
|
||||||
"--css" = ./style.css;
|
|
||||||
"--layout" = ./layout;
|
|
||||||
"--buttons-per-row" = "5";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
Before Width: | Height: | Size: 5.1 KiB |
|
Before Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 4.5 KiB |
@@ -1,30 +0,0 @@
|
|||||||
{
|
|
||||||
"label" : "lock",
|
|
||||||
"action" : "hyprlock",
|
|
||||||
"text" : "Lock",
|
|
||||||
"keybind" : "l"
|
|
||||||
}
|
|
||||||
{
|
|
||||||
"label" : "logout",
|
|
||||||
"action" : "hyprctl dispatch 'hl.dsp.exit()'" ,
|
|
||||||
"text" : "Logout",
|
|
||||||
"keybind" : "e"
|
|
||||||
}
|
|
||||||
{
|
|
||||||
"label" : "shutdown",
|
|
||||||
"action" : "systemctl poweroff",
|
|
||||||
"text" : "Shutdown",
|
|
||||||
"keybind" : "s"
|
|
||||||
}
|
|
||||||
{
|
|
||||||
"label" : "suspend",
|
|
||||||
"action" : "systemctl suspend",
|
|
||||||
"text" : "Sleep",
|
|
||||||
"keybind" : "u"
|
|
||||||
}
|
|
||||||
{
|
|
||||||
"label" : "reboot",
|
|
||||||
"action" : "systemctl reboot",
|
|
||||||
"text" : "Reboot",
|
|
||||||
"keybind" : "r"
|
|
||||||
}
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
* {
|
|
||||||
background-image: none;
|
|
||||||
box-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
window {
|
|
||||||
background-color: rgba(12, 12, 12, 0.05);
|
|
||||||
}
|
|
||||||
|
|
||||||
button {
|
|
||||||
border-radius: 0;
|
|
||||||
border-color: #cba6f7;
|
|
||||||
text-decoration-color: #ffffff;
|
|
||||||
color: #FFFFFF;
|
|
||||||
background-color: #313244;
|
|
||||||
border-style: solid none;
|
|
||||||
border-width: 4px;
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-position: 50% 30%;
|
|
||||||
background-size: 75%;
|
|
||||||
}
|
|
||||||
|
|
||||||
button:first-child {
|
|
||||||
border-top-left-radius: 10px;
|
|
||||||
border-bottom-left-radius: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
button:last-child {
|
|
||||||
border-top-right-radius: 10px;
|
|
||||||
border-bottom-right-radius: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#lock {
|
|
||||||
border-left-style: solid;
|
|
||||||
background-image: image(url("./icons/lock.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#logout {
|
|
||||||
background-image: image(url("./icons/exit.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#suspend {
|
|
||||||
background-image: image(url("./icons/slwwp.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#shutdown {
|
|
||||||
background-image: image(url("./icons/power.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#reboot {
|
|
||||||
border-right-style: solid;
|
|
||||||
background-image: image(url("./icons/reload.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#lock:focus {
|
|
||||||
background-color: #f38ba8;
|
|
||||||
}
|
|
||||||
|
|
||||||
#logout:focus {
|
|
||||||
background-color: #fab387;
|
|
||||||
}
|
|
||||||
|
|
||||||
#shutdown:focus {
|
|
||||||
background-color: #a6e3a1;
|
|
||||||
}
|
|
||||||
|
|
||||||
#suspend:focus {
|
|
||||||
background-color: #f9e2af;
|
|
||||||
}
|
|
||||||
|
|
||||||
#reboot:focus {
|
|
||||||
background-color: #cba6f7;
|
|
||||||
}
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
{
|
|
||||||
inputs,
|
|
||||||
moduleWithSystem,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.woomer = moduleWithSystem ({self', ...}: {
|
|
||||||
environment.systemPackages = with self'.packages; [
|
|
||||||
woomer
|
|
||||||
];
|
|
||||||
});
|
|
||||||
perSystem = {
|
|
||||||
pkgs,
|
|
||||||
inputs',
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
packages.woomer = inputs.wrappers.lib.wrapPackage ({...}: {
|
|
||||||
inherit pkgs;
|
|
||||||
package = inputs'.woomer.packages.default;
|
|
||||||
flags = {
|
|
||||||
"--monitor" = "DP-1";
|
|
||||||
"--output" = "DP-1";
|
|
||||||
"--radius" = "2";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
{
|
|
||||||
moduleWithSystem,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.wpaperd = moduleWithSystem ({self', ...}: {
|
|
||||||
environment.systemPackages = with self'.packages; [
|
|
||||||
wpaperd
|
|
||||||
];
|
|
||||||
});
|
|
||||||
perSystem = {pkgs, ...}: {
|
|
||||||
packages.wpaperd = let
|
|
||||||
config-file = builtins.toFile "config.toml" ''
|
|
||||||
[any]
|
|
||||||
path = "${./wallpapers}"
|
|
||||||
|
|
||||||
[HDMI-A-1]
|
|
||||||
path = "${./wallpapers/topo1.png}"
|
|
||||||
|
|
||||||
[DP-1]
|
|
||||||
path = "${./wallpapers/topo2.png}"
|
|
||||||
|
|
||||||
[DP-2]
|
|
||||||
path = "${./wallpapers/topo3.png}"
|
|
||||||
'';
|
|
||||||
in
|
|
||||||
inputs.wrappers.lib.wrapPackage ({...}: {
|
|
||||||
inherit pkgs;
|
|
||||||
package = pkgs.wpaperd;
|
|
||||||
flags = {
|
|
||||||
"--config" = config-file;
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{moduleWithSystem, ...}: {
|
|
||||||
flake.nixosModules.wshowkeys = moduleWithSystem ({
|
|
||||||
self',
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
lib = pkgs.lib;
|
|
||||||
in {
|
|
||||||
programs.wshowkeys = {
|
|
||||||
enable = true;
|
|
||||||
package = self'.packages.wshowkeys;
|
|
||||||
};
|
|
||||||
});
|
|
||||||
perSystem = {inputs', ...}: {
|
|
||||||
packages.wshowkeys = inputs'.wshowkeys.packages.default;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -34,11 +34,6 @@ template = '''
|
|||||||
{{- end -}}
|
{{- end -}}
|
||||||
'''
|
'''
|
||||||
|
|
||||||
[[blocks.segments]] # Hostname
|
|
||||||
type = 'text'
|
|
||||||
style = 'plain'
|
|
||||||
template = '{{ if eq .HostName "server02" }}<green> {{.HostName}}</> <#7f849c>|</> {{ end }}'
|
|
||||||
|
|
||||||
[[blocks.segments]] # Python venv
|
[[blocks.segments]] # Python venv
|
||||||
type = 'text'
|
type = 'text'
|
||||||
style = 'plain'
|
style = 'plain'
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
{
|
{
|
||||||
|
self,
|
||||||
inputs,
|
inputs,
|
||||||
moduleWithSystem,
|
moduleWithSystem,
|
||||||
...
|
...
|
||||||
@@ -30,78 +31,33 @@
|
|||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
packages = {
|
packages = {
|
||||||
zsh = let
|
zsh = inputs.wrappers.wrappers.zsh.wrap {
|
||||||
flakeLocation = builtins.getEnv "PWD";
|
|
||||||
in
|
|
||||||
lib.warnIf (flakeLocation == "") "Flake Location is undefined. Are you building in the right directory?"
|
|
||||||
inputs.wrappers.wrappers.zsh.wrap {
|
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
runtimePkgs = [pkgs.carapace pkgs.devenv pkgs.fzf];
|
runtimePkgs = [pkgs.carapace];
|
||||||
zshAliases = {
|
zshAliases = {
|
||||||
ls = "${lib.getExe pkgs.lsd} -l";
|
ls = "${lib.getExe pkgs.lsd} -l";
|
||||||
v = lib.getExe self'.packages.nvim;
|
|
||||||
cat = lib.getExe pkgs.bat;
|
cat = lib.getExe pkgs.bat;
|
||||||
lg = lib.getExe pkgs.lazygit;
|
lg = lib.getExe pkgs.lazygit;
|
||||||
|
devenv = lib.getExe pkgs.devenv;
|
||||||
|
carapace = lib.getExe pkgs.carapace;
|
||||||
man = "man -P \"${lib.getExe pkgs.bat} -p\"";
|
man = "man -P \"${lib.getExe pkgs.bat} -p\"";
|
||||||
nsh = "nix-shell -p";
|
nsh = "nix-shell -p";
|
||||||
nrs =
|
|
||||||
if flakeLocation != ""
|
|
||||||
then "( cd ${flakeLocation} && sudo nixos-rebuild switch --impure --flake . )"
|
|
||||||
else "echo 'Flake location not specified. Did you build with --impure?'";
|
|
||||||
vinix =
|
|
||||||
if flakeLocation != ""
|
|
||||||
then "nvim --cmd 'cd ${flakeLocation}'"
|
|
||||||
else "echo 'Flake location not specified. Did you build with --impure?'";
|
|
||||||
};
|
};
|
||||||
zshrc.content = ''
|
zshrc.content = ''
|
||||||
source ${./devenv.zsh}
|
|
||||||
|
|
||||||
if (( ''${+terminfo[smkx]} )) && (( ''${+terminfo[rmkx]} )); then
|
|
||||||
function zle-line-init() { echoti smkx }
|
|
||||||
function zle-line-finish() { echoti rmkx }
|
|
||||||
zle -N zle-line-init
|
|
||||||
zle -N zle-line-finish
|
|
||||||
fi
|
|
||||||
|
|
||||||
autoload -U compinit && compinit
|
autoload -U compinit && compinit
|
||||||
export CARAPACE_BRIDGES='zsh,fish,bash,inshellisense' # optional
|
export CARAPACE_BRIDGES='zsh,fish,bash,inshellisense' # optional
|
||||||
zstyle ':completion:*' format $'\e[2;37mCompleting %d\e[m'
|
zstyle ':completion:*' format $'\e[2;37mCompleting %d\e[m'
|
||||||
source <(${lib.getExe pkgs.carapace} _carapace)
|
source <(${lib.getExe pkgs.carapace} _carapace)
|
||||||
zstyle ':completion:*' matcher-list 'm:{[:lower:]}={[:upper:]}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
|
zstyle ':completion:*' matcher-list 'm:{[:lower:]}={[:upper:]}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
|
||||||
|
|
||||||
autoload -U select-word-style
|
|
||||||
select-word-style bash
|
|
||||||
|
|
||||||
autoload -U up-line-or-beginning-search down-line-or-beginning-search
|
|
||||||
zle -N up-line-or-beginning-search
|
|
||||||
zle -N down-line-or-beginning-search
|
|
||||||
bindkey "^[OA" up-line-or-beginning-search
|
|
||||||
bindkey "^[OB" down-line-or-beginning-search
|
|
||||||
|
|
||||||
bindkey "^[[1;5C" forward-word
|
|
||||||
bindkey "^[[1;5D" backward-word
|
|
||||||
bindkey "^[[3;5~" kill-word
|
|
||||||
bindkey "^H" backward-kill-word
|
|
||||||
|
|
||||||
source <(${lib.getExe pkgs.fzf} --zsh)
|
|
||||||
|
|
||||||
setopt NO_CASE_GLOB
|
setopt NO_CASE_GLOB
|
||||||
|
|
||||||
${lib.getExe pkgs.any-nix-shell} zsh --info-right | source /dev/stdin
|
|
||||||
|
|
||||||
export EDITOR=nvim
|
export EDITOR=nvim
|
||||||
|
|
||||||
|
eval "$(${lib.getExe pkgs.devenv} hook zsh)"
|
||||||
eval "$(${lib.getExe self'.packages.ohMyPosh} init zsh)"
|
eval "$(${lib.getExe self'.packages.ohMyPosh} init zsh)"
|
||||||
|
|
||||||
eval "$(${lib.getExe pkgs.devenv} hook zsh)"
|
${lib.getExe pkgs.any-nix-shell} zsh --info-right | source /dev/stdin
|
||||||
|
|
||||||
typeset -ag precmd_functions
|
|
||||||
if (( ! ''${precmd_functions[(I)__devenv_reload_apply]} )); then
|
|
||||||
precmd_functions+=(__devenv_reload_apply)
|
|
||||||
fi
|
|
||||||
if (( ! ''${precmd_functions[(I)__devenv_restore_path]} )); then
|
|
||||||
precmd_functions+=(__devenv_restore_path)
|
|
||||||
fi
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
ohMyPosh = inputs.wrappers.wrappers.oh-my-posh.wrap {
|
ohMyPosh = inputs.wrappers.wrappers.oh-my-posh.wrap {
|
||||||
|
|||||||
@@ -1,82 +0,0 @@
|
|||||||
__devenv_reload_apply() {
|
|
||||||
if [ -n "$DEVENV_RELOAD_FILE" ] && [ -f "$DEVENV_RELOAD_FILE" ]; then
|
|
||||||
local output
|
|
||||||
output=$(DEVENV_RELOAD_FILE="$DEVENV_RELOAD_FILE" bash <<'RELOAD_BASH' 2>/dev/null
|
|
||||||
__devenv_ignored_var() {
|
|
||||||
case "$1" in
|
|
||||||
_*|PWD|OLDPWD|SHLVL|SHELL|SHELLOPTS|BASHOPTS|BASH_*|HISTCMD|HISTFILE)
|
|
||||||
return 0 ;;
|
|
||||||
PS1|PS2|PS3|PS4|PROMPT|PROMPT_COMMAND|PROMPT_DIRTRIM)
|
|
||||||
return 0 ;;
|
|
||||||
COMP_*|READLINE_*|MAILCHECK|COLUMNS|LINES|RANDOM|SECONDS|LINENO|EPOCHSECONDS|EPOCHREALTIME|SRANDOM)
|
|
||||||
return 0 ;;
|
|
||||||
STARSHIP_*|__fish*|DIRENV_*|nix_saved_*)
|
|
||||||
return 0 ;;
|
|
||||||
*) return 1 ;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
__devenv_capture_env() { declare -p -x 2>/dev/null | LC_ALL=C sort; }
|
|
||||||
__devenv_serialize_diff() { gzip -c | base64 -w0; }
|
|
||||||
__devenv_deserialize_diff() { echo "$1" | base64 -d | gzip -d 2>/dev/null; }
|
|
||||||
__devenv_compute_diff() {
|
|
||||||
local before_file="$1" after_file diff_content
|
|
||||||
after_file=$(mktemp); diff_content=$(mktemp)
|
|
||||||
__devenv_capture_env > "$after_file"
|
|
||||||
local -A before_vars after_vars
|
|
||||||
while IFS= read -r line; do
|
|
||||||
[[ "$line" != declare\ -x\ * ]] && continue
|
|
||||||
local vardef="${line#declare -x }" var="${vardef%%=*}"
|
|
||||||
[[ -z "$var" ]] && continue
|
|
||||||
__devenv_ignored_var "$var" && continue
|
|
||||||
before_vars["$var"]="$line"
|
|
||||||
done < "$before_file"
|
|
||||||
while IFS= read -r line; do
|
|
||||||
[[ "$line" != declare\ -x\ * ]] && continue
|
|
||||||
local vardef="${line#declare -x }" var="${vardef%%=*}"
|
|
||||||
[[ -z "$var" ]] && continue
|
|
||||||
__devenv_ignored_var "$var" && continue
|
|
||||||
after_vars["$var"]="$line"
|
|
||||||
done < "$after_file"
|
|
||||||
for var in "${!before_vars[@]}"; do
|
|
||||||
[[ "${after_vars[$var]}" != "${before_vars[$var]}" ]] && echo "P:${before_vars[$var]}" >> "$diff_content"
|
|
||||||
done
|
|
||||||
for var in "${!after_vars[@]}"; do
|
|
||||||
if [[ -z "${before_vars[$var]+x}" ]]; then echo "N:$var" >> "$diff_content"
|
|
||||||
elif [[ "${after_vars[$var]}" != "${before_vars[$var]}" ]]; then echo "N:$var" >> "$diff_content"; fi
|
|
||||||
done
|
|
||||||
_DEVENV_DIFF=$(__devenv_serialize_diff < "$diff_content"); export _DEVENV_DIFF
|
|
||||||
rm -f "$after_file" "$diff_content"
|
|
||||||
}
|
|
||||||
__devenv_apply_reverse_diff() {
|
|
||||||
[[ -z "$_DEVENV_DIFF" ]] && return
|
|
||||||
local -A prev_vars
|
|
||||||
local diff_content; diff_content=$(__devenv_deserialize_diff "$_DEVENV_DIFF")
|
|
||||||
while IFS= read -r line; do
|
|
||||||
if [[ "$line" == P:declare\ * ]]; then
|
|
||||||
local decl="${line#P:}" var="${decl#declare -x }"; var="${var%%=*}"
|
|
||||||
prev_vars["$var"]=1; eval "export ${decl#declare -x }" 2>/dev/null
|
|
||||||
fi
|
|
||||||
done <<< "$diff_content"
|
|
||||||
while IFS= read -r line; do
|
|
||||||
if [[ "$line" == N:* ]]; then
|
|
||||||
local var="${line#N:}"
|
|
||||||
[[ -z "${prev_vars[$var]+x}" ]] && unset "$var"
|
|
||||||
fi
|
|
||||||
done <<< "$diff_content"
|
|
||||||
}
|
|
||||||
__devenv_apply_reverse_diff
|
|
||||||
_before=$(mktemp); __devenv_capture_env > "$_before"
|
|
||||||
if { : >/dev/tty; } 2>/dev/null; then _devenv_reload_out=/dev/tty; else _devenv_reload_out=/dev/null; fi
|
|
||||||
source "$DEVENV_RELOAD_FILE" >"$_devenv_reload_out" 2>"$_devenv_reload_out"
|
|
||||||
rm -f "$DEVENV_RELOAD_FILE"; unset _devenv_reload_out
|
|
||||||
__devenv_compute_diff "$_before"; rm -f "$_before"
|
|
||||||
export -p
|
|
||||||
RELOAD_BASH
|
|
||||||
)
|
|
||||||
if [ -n "$output" ]; then eval "$output"; fi
|
|
||||||
_DEVENV_PATH="$PATH"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
__devenv_restore_path() {
|
|
||||||
[ -n "$_DEVENV_PATH" ] && export PATH="$_DEVENV_PATH"
|
|
||||||
}
|
|
||||||
@@ -7,16 +7,6 @@
|
|||||||
modules = with self.nixosModules; [
|
modules = with self.nixosModules; [
|
||||||
desktop
|
desktop
|
||||||
hackstationConfiguration
|
hackstationConfiguration
|
||||||
amdDrivers
|
|
||||||
youtube
|
|
||||||
development
|
|
||||||
bottles
|
|
||||||
gaming
|
|
||||||
davinci
|
|
||||||
sddm-autologin
|
|
||||||
nix-ld
|
|
||||||
|
|
||||||
i3
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,15 +1,9 @@
|
|||||||
{...}: {
|
{
|
||||||
|
self,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
flake.nixosModules.hackstationConfiguration = {pkgs, ...}: {
|
flake.nixosModules.hackstationConfiguration = {pkgs, ...}: {
|
||||||
virtualisation.docker = {
|
networking.hostName = "HACKSTATION";
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
networking = {
|
|
||||||
interfaces.enp5s0.wakeOnLan.enable = true;
|
|
||||||
hostName = "HACKSTATION";
|
|
||||||
};
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
tor-browser
|
|
||||||
tor
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
self,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosConfigurations.mobile02 = inputs.nixpkgs.lib.nixosSystem {
|
|
||||||
modules = with self.nixosModules; [
|
|
||||||
desktop
|
|
||||||
mobile02Configuration
|
|
||||||
intelDrivers
|
|
||||||
development
|
|
||||||
upower
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
{
|
|
||||||
self,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
flake.nixosModules.mobile02Configuration = {...}: {
|
|
||||||
networking = {
|
|
||||||
hostName = "mobile02";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -11,13 +11,9 @@
|
|||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
playerctl
|
playerctl
|
||||||
pavucontrol
|
pavucontrol
|
||||||
pulseaudioFull
|
|
||||||
];
|
];
|
||||||
services.pulseaudio.enable = false;
|
services.pulseaudio.enable = false;
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
nixpkgs.config.pulseaudio = true;
|
|
||||||
|
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
alsa.enable = true;
|
alsa.enable = true;
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
{inputs, ...}: {
|
{
|
||||||
perSystem = {system, ...}: {
|
self,
|
||||||
_module.args.unfreePkgs = import inputs.nixpkgs {
|
inputs,
|
||||||
inherit system;
|
...
|
||||||
config.allowUnfree = true;
|
}: {
|
||||||
};
|
flake.nixosModules.nix = {
|
||||||
};
|
pkgs,
|
||||||
flake.nixosModules.nix = {...}: {
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
nix = {
|
nix = {
|
||||||
registry = {
|
registry = {
|
||||||
voidarc = {
|
voidarc = {
|
||||||
@@ -21,7 +23,6 @@
|
|||||||
};
|
};
|
||||||
settings = {
|
settings = {
|
||||||
cores = 6;
|
cores = 6;
|
||||||
trusted-users = ["root" "user01"];
|
|
||||||
download-buffer-size = 524288000;
|
download-buffer-size = 524288000;
|
||||||
experimental-features = [
|
experimental-features = [
|
||||||
"nix-command"
|
"nix-command"
|
||||||
|
|||||||
@@ -1,21 +1,20 @@
|
|||||||
{
|
{
|
||||||
self,
|
self,
|
||||||
moduleWithSystem,
|
inputs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
flake.nixosModules.desktop = moduleWithSystem ({pkgs, ...}: let
|
flake.nixosModules.desktop = {
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
modules = with self.nixosModules; [
|
modules = with self.nixosModules; [
|
||||||
core
|
core
|
||||||
hyprland
|
hyprland
|
||||||
sddm
|
sddm
|
||||||
network
|
network
|
||||||
omnisearch
|
|
||||||
tailscale
|
|
||||||
];
|
];
|
||||||
in {
|
in {
|
||||||
imports = modules;
|
imports = modules;
|
||||||
environment.systemPackages = with pkgs; [
|
};
|
||||||
mpv
|
|
||||||
];
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,13 @@
|
|||||||
{...}: {
|
{
|
||||||
flake.nixosModules.amdDrivers = {pkgs, ...}: {
|
self,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
flake.nixosModules.amdDrivers = {
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
mesa
|
mesa
|
||||||
rocmPackages.rocm-smi
|
rocmPackages.rocm-smi
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
flake.nixosModules.upower = {pkgs, ...}: {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
upower
|
|
||||||
];
|
|
||||||
services = {
|
|
||||||
upower.enable = true;
|
|
||||||
power-profiles-daemon.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
21
modules/system/network/wake-on-lan.nix
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
self,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
flake.nixosModules.networking = {
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
modules = with self.nixosModules; [
|
||||||
|
networking
|
||||||
|
];
|
||||||
|
in {
|
||||||
|
imports = modules;
|
||||||
|
networking = {
|
||||||
|
# Just for hackstation, replace enp5s0 with primary interface
|
||||||
|
interfaces.enp5s0.wakeOnLan.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{moduleWithSystem, ...}: {
|
|
||||||
flake.nixosModules.nix-ld = moduleWithSystem ({pkgs, ...}: {
|
|
||||||
programs = {
|
|
||||||
nix-ld = {
|
|
||||||
enable = true;
|
|
||||||
libraries = with pkgs; [
|
|
||||||
util-linux
|
|
||||||
stdenv.cc.cc
|
|
||||||
zlib
|
|
||||||
libusb1
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
});
|
|
||||||
}
|
|
||||||