Compare commits

...

13 Commits

23 changed files with 331 additions and 181 deletions

176
flake.lock generated
View File

@@ -52,6 +52,25 @@
"type": "github"
}
},
"davinci": {
"inputs": {
"nixpkgs": "nixpkgs",
"nixpkgs-pinned": "nixpkgs-pinned"
},
"locked": {
"lastModified": 1782405315,
"narHash": "sha256-pZKG7KOr1NPtWwzfEnRZvAi7Uvndd4LiC0OVHjf5IPE=",
"ref": "refs/heads/main",
"rev": "c9859df9bd3781c63d838a1a90d22129885a910b",
"revCount": 5,
"type": "git",
"url": "https://git.voidarc.co.uk/voidarc/nixos.davinci"
},
"original": {
"type": "git",
"url": "https://git.voidarc.co.uk/voidarc/nixos.davinci"
}
},
"flake-compat": {
"flake": false,
"locked": {
@@ -407,7 +426,7 @@
"hyprutils": "hyprutils",
"hyprwayland-scanner": "hyprwayland-scanner",
"hyprwire": "hyprwire",
"nixpkgs": "nixpkgs",
"nixpkgs": "nixpkgs_2",
"pre-commit-hooks": "pre-commit-hooks",
"systems": "systems_2",
"xdph": "xdph"
@@ -620,16 +639,16 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1782467914,
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=",
"lastModified": 1782233679,
"narHash": "sha256-QyuGP5+QOtmXpy4i2X4DhBVBaySBdDKQEhqKcphcp34=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e73de5be04e0eff4190a1432b946d469c794e7b4",
"rev": "667d5cf1c59585031d743c78b394b0a647537c35",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"ref": "nixos-26.05",
"repo": "nixpkgs",
"type": "github"
}
@@ -679,55 +698,23 @@
"type": "github"
}
},
"nixpkgs-pinned": {
"locked": {
"lastModified": 1772567409,
"narHash": "sha256-qspxGige37s/66q9sptyG5VA/l2IOmMMZVJ4Xhta2wU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e4ec59bc1152b09a4843702e4a49381194f065a2",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e4ec59bc1152b09a4843702e4a49381194f065a2",
"type": "github"
}
},
"nixpkgs_2": {
"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_3": {
"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_4": {
"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_5": {
"locked": {
"lastModified": 1782467914,
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=",
@@ -743,7 +730,71 @@
"type": "github"
}
},
"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": {
"lastModified": 1780336545,
"narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=",
@@ -759,7 +810,7 @@
"type": "github"
}
},
"nixpkgs_7": {
"nixpkgs_8": {
"locked": {
"lastModified": 1783224372,
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=",
@@ -775,7 +826,7 @@
"type": "github"
}
},
"nixpkgs_8": {
"nixpkgs_9": {
"locked": {
"lastModified": 1780336545,
"narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=",
@@ -793,7 +844,7 @@
},
"nvim": {
"inputs": {
"nixpkgs": "nixpkgs_5",
"nixpkgs": "nixpkgs_6",
"wrappers": "wrappers_2"
},
"locked": {
@@ -883,11 +934,12 @@
},
"root": {
"inputs": {
"davinci": "davinci",
"flake-parts": "flake-parts",
"gotify-desktop": "gotify-desktop",
"hyprland": "hyprland",
"import-tree": "import-tree",
"nixpkgs": "nixpkgs_4",
"nixpkgs": "nixpkgs_5",
"nvim": "nvim",
"otter-launcher": "otter-launcher_2",
"sls-steam": "sls-steam",
@@ -896,7 +948,7 @@
},
"sls-steam": {
"inputs": {
"nixpkgs": "nixpkgs_7"
"nixpkgs": "nixpkgs_8"
},
"locked": {
"lastModified": 1783322884,
@@ -1023,7 +1075,7 @@
"woomer": {
"inputs": {
"crane": "crane",
"nixpkgs": "nixpkgs_2",
"nixpkgs": "nixpkgs_3",
"systems": "systems_4"
},
"locked": {
@@ -1042,7 +1094,7 @@
},
"wrappers": {
"inputs": {
"nixpkgs": "nixpkgs_3"
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1782375095,
@@ -1060,7 +1112,7 @@
},
"wrappers_2": {
"inputs": {
"nixpkgs": "nixpkgs_6"
"nixpkgs": "nixpkgs_7"
},
"locked": {
"lastModified": 1782135443,
@@ -1078,7 +1130,7 @@
},
"wrappers_3": {
"inputs": {
"nixpkgs": "nixpkgs_8"
"nixpkgs": "nixpkgs_9"
},
"locked": {
"lastModified": 1782135443,

View File

@@ -20,6 +20,7 @@
inputs.nixpkgs.follows = "nixpkgs";
};
sls-steam.url = "github:AceSLS/SLSsteam";
davinci.url = "git+https://git.voidarc.co.uk/voidarc/nixos.davinci";
# Flake parts
flake-parts.url = "github:hercules-ci/flake-parts";

View File

@@ -0,0 +1,22 @@
{
self,
inputs,
...
}: {
flake.nixosModules.development = {
pkgs,
lib,
...
}: let
modules = with self.nixosModules; [
git
nvim
];
in {
imports = modules;
environment.systemPackages = with pkgs; [
opencode
devenv
];
};
}

View File

@@ -0,0 +1,17 @@
{
self,
inputs,
...
}: {
flake.nixosModules.gaming = {
pkgs,
lib,
...
}: let
modules = with self.nixosModules; [
steam
];
in {
imports = modules;
};
}

View File

@@ -1,18 +1,23 @@
{
wrappers,
self,
inputs,
moduleWithSystem,
...
}: {
flake.nixosModules.name = {
flake.nixosModules.name = moduleWithSystem ({
pkgs,
lib,
self',
inputs',
...
}: {
}: let
modules = with self.nixosModules; [];
in {
imports = modules;
programs.name = {
enable = true;
package = self.packages.${pkgs.stdenv.hostPlatform.system}.hello;
};
package = self'.packages.hello;
};
});
perSystem = {
pkgs,
lib,

View File

@@ -0,0 +1,14 @@
{
moduleWithSystem,
self,
...
}: {
flake.nixosModules.davinci = moduleWithSystem ({self', ...}: {
environment.systemPackages = with self'.packages; [
davinci-resolve
];
});
perSystem = {inputs', ...}: {
packages.davinci-resolve = inputs'.davinci.packages.default;
};
}

View File

@@ -0,0 +1,40 @@
{
self,
inputs,
...
}: {
flake.nixosModules.git = {
pkgs,
lib,
...
}: {
programs.git = {
enable = true;
package = self.packages.${pkgs.stdenv.hostPlatform.system}.git;
};
programs.gnupg.agent = {
enable = true;
pinentryPackage = pkgs.pinentry-all;
};
};
perSystem = {
pkgs,
lib,
self',
...
}: {
packages.git = inputs.wrappers.wrappers.git.wrap {
inherit pkgs;
runtimePkgs = with pkgs; [
git-secret
];
settings = {
user = {
email = "admin@voidarc.co.uk";
name = "voidarc";
};
credential.helper = "store";
};
};
};
}

View File

@@ -1,21 +1,16 @@
{
self,
inputs,
wrappers,
moduleWithSystem,
...
}: {
flake.nixosModules.gotify-desktop = {
pkgs,
lib,
...
}: {
environment.systemPackages = [
self.packages.${pkgs.stdenv.hostPlatform.system}.gotify-desktop
flake.nixosModules.gotify-desktop = moduleWithSystem ({self', ...}: {
environment.systemPackages = with self'.packages; [
gotify-desktop
];
};
});
perSystem = {
pkgs,
lib,
self',
inputs',
...
}: {
packages = {
@@ -29,14 +24,9 @@
min_priority = 1
'';
in
inputs.wrappers.lib.wrapPackage ({
config,
wlib,
lib,
...
}: {
wrappers.lib.wrapPackage ({...}: {
inherit pkgs;
package = inputs.gotify-desktop.packages.${pkgs.stdenv.hostPlatform.system}.default;
package = inputs'.gotify-desktop.default;
flags = {
"-c" = config-file;
};

View File

@@ -1,11 +1,12 @@
{
wrappers,
moduleWithSystem,
self,
inputs,
...
}: {
flake.nixosModules.hyprland = {
flake.nixosModules.hyprland = moduleWithSystem ({
self',
pkgs,
lib,
...
}: let
modules = with self.nixosModules; [
@@ -16,24 +17,25 @@
imports = modules;
programs.hyprland = {
enable = true;
package = self.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
package = self'.packages.hyprland;
};
services.xserver.enable = true;
security.polkit.enable = true;
environment.systemPackages = with pkgs; [
hyprlock
gsettings-desktop-schemas
];
};
});
perSystem = {
pkgs,
lib,
self',
inputs',
...
}: {
packages = {
hyprland = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.default.override {
hyprland = inputs'.hyprland.packages.default.override {
runtimePackages =
inputs.hyprland.lib.defaultRuntimePkgs.${pkgs.stdenv.hostPlatform.system}
inputs'.hyprland.lib.defaultRuntimePkgs
// {
wpaperd = self'.packages.wpaperd;
kitty = self'.packages.kitty;
@@ -56,12 +58,7 @@
path = "${./wallpapers/topo3.png}"
'';
in
inputs.wrappers.lib.wrapPackage ({
config,
wlib,
lib,
...
}: {
wrappers.lib.wrapPackage ({...}: {
inherit pkgs;
package = pkgs.wpaperd;
flags = {

View File

@@ -1,30 +1,26 @@
{
self,
inputs,
wrappers,
moduleWithSystem,
...
}: {
flake.nixosModules.kitty = {
flake.nixosModules.kitty = moduleWithSystem (
{
pkgs,
lib,
...
}: {
environment.systemPackages = [
self.packages.${pkgs.stdenv.hostPlatform.system}.kitty
];
};
perSystem = {
pkgs,
lib,
self',
...
}: {
environment.systemPackages = with self'.packages; [
kitty
];
}
);
perSystem = {pkgs, ...}: {
packages.kitty = let
fira-mono = pkgs.nerd-fonts.fira-mono;
fontsConf = pkgs.makeFontsConf {
fontDirectories = [fira-mono];
};
in
inputs.wrappers.wrappers.kitty.wrap {
wrappers.wrappers.kitty.wrap {
inherit pkgs;
environment = {
"FONTCONFIG_FILE" = "${fontsConf}";

View File

@@ -1,24 +1,11 @@
{
self,
inputs,
...
}: {
flake.nixosModules.nvim = {
pkgs,
lib,
...
}: {
{moduleWithSystem, ...}: {
flake.nixosModules.nvim = moduleWithSystem ({self', ...}: {
programs.nvim = {
enable = true;
package = self.packages.${pkgs.stdenv.hostPlatform.system}.nvim;
package = self'.packages.nvim;
};
};
perSystem = {
pkgs,
lib,
self',
...
}: {
packages.nvim = inputs.nvim.packages.${pkgs.stdenv.hostPlatform.system}.default;
});
perSystem = {inputs', ...}: {
packages.nvim = inputs'.nvim.packages.default;
};
}

View File

@@ -1,21 +1,18 @@
{
self,
inputs,
wrappers,
moduleWithSystem,
...
}: {
flake.nixosModules.otter-launcher = {
pkgs,
lib,
...
}: {
flake.nixosModules.otter-launcher = moduleWithSystem ({self', ...}: {
environment.systemPackages = [
self.packages.${pkgs.stdenv.hostPlatform.system}.otter-launcher
self'.packages.otter-launcher
];
};
});
perSystem = {
pkgs,
lib,
self',
inputs',
...
}: {
packages = {
@@ -32,14 +29,9 @@
${extra-config}
'';
in
inputs.wrappers.lib.wrapPackage ({
config,
wlib,
lib,
...
}: {
wrappers.lib.wrapPackage ({...}: {
inherit pkgs;
package = inputs.otter-launcher.packages.${pkgs.stdenv.hostPlatform.system}.default;
package = inputs'.otter-launcher.packages.default;
runtimePkgs = with pkgs; [
fsel
bluetui

View File

@@ -1,16 +1,15 @@
{
self,
inputs,
moduleWithSystem,
...
}: {
flake.nixosModules.steam = {
flake.nixosModules.steam = moduleWithSystem ({
pkgs,
lib,
inputs',
...
}: {
# If buying isn't owning than piracy isn't stealing
environment.systemPackages = [
inputs.sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.wrapped
inputs'.sls-steam.packages.default
];
programs.steam = {
enable = true;
@@ -21,12 +20,12 @@
package = pkgs.steam.override {
extraEnv = {
LD_AUDIT = "${
inputs.sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.sls-steam
inputs'.sls-steam.packages.sls-steam
}/library-inject.so:${
inputs.sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.sls-steam
inputs'.sls-steam.packages.sls-steam
}/SLSsteam.so";
};
};
};
};
});
}

View File

@@ -1,16 +1,17 @@
{
self,
inputs,
moduleWithSystem,
...
}: {
flake.nixosModules.zsh = {
flake.nixosModules.zsh = moduleWithSystem ({
pkgs,
lib,
self',
...
}: {
nixpkgs.overlays = [
(final: prev: {
zsh = self.packages.${pkgs.stdenv.hostPlatform.system}.zsh;
zsh = self'.packages.zsh;
})
];
programs.zsh = {
@@ -22,7 +23,7 @@
histSize = 10000;
};
users.defaultUserShell = pkgs.zsh;
};
});
perSystem = {
pkgs,
lib,
@@ -54,7 +55,7 @@
export EDITOR=nvim
eval "$(${lib.getExe pkgs.devenv} hook zsh)"
eval "$(${lib.getExe self.packages.${pkgs.host.stdenv.hostPlatform.system}.ohMyPosh} init zsh)"
eval "$(${lib.getExe self'.packages.ohMyPosh} init zsh)"
${lib.getExe pkgs.any-nix-shell} zsh --info-right | source /dev/stdin
'';

View File

@@ -8,6 +8,10 @@
lib,
...
}: {
environment.systemPackages = with pkgs; [
playerctl
pavucontrol
];
services.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {

View File

@@ -21,5 +21,22 @@
/etc/nixos/hardware-configuration.nix
]
++ modules;
services = {
openssh.enable = true;
avahi.enable = true;
};
environment.systemPackages = with pkgs; [
vim
unzip
p7zip-rar
usbutils
lsof
gvfs
libnotify
python315
curlWithGnuTls
wget
];
system.stateVersion = "25.05";
};
}

View File

@@ -8,6 +8,12 @@
lib,
...
}: {
environment.systemPackages = with pkgs; [
mesa
rocmPackages.rocm-smi
rocmPackages.rocminfo
vulkan-tools
];
hardware = {
graphics = {
enable = true;

View File

@@ -8,6 +8,10 @@
lib,
...
}: {
environment.systemPackages = with pkgs; [
mesa
vulkan-tools
];
hardware.graphics = {
enable = true;
extraPackages = with pkgs; [

View File

@@ -17,6 +17,7 @@
"1.1.1.1"
"8.8.8.8"
];
firewall.enable = false;
};
services.unbound = {
enable = true;

View File

@@ -16,7 +16,6 @@
networking = {
# Just for hackstation, replace enp5s0 with primary interface
interfaces.enp5s0.wakeOnLan.enable = true;
firewall.enable = false;
};
};
}

View File

@@ -34,7 +34,11 @@
icon.enable = true;
};
};
programs.dconf.profiles.user.databases = [
programs = {
xfconf.enable = true;
dconf = {
enable = true;
profiles.user.databases = [
{
lockAll = false;
settings = {
@@ -47,4 +51,6 @@
}
];
};
};
};
}