mirror of
https://github.com/Stunkymonkey/nixos.git
synced 2026-03-13 03:24:05 +01:00
Compare commits
No commits in common. "04bc5181ffeeb66e7edd67358882c3d2af23aa52" and "b0fffaab824f15c8e4764d12e19dcb842cee8254" have entirely different histories.
04bc5181ff
...
b0fffaab82
25 changed files with 97 additions and 118 deletions
24
flake.lock
generated
24
flake.lock
generated
|
|
@ -222,11 +222,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1766568855,
|
"lastModified": 1764440730,
|
||||||
"narHash": "sha256-UXVtN77D7pzKmzOotFTStgZBqpOcf8cO95FcupWp4Zo=",
|
"narHash": "sha256-ZlJTNLUKQRANlLDomuRWLBCH5792x+6XUJ4YdFRjtO4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "c5db9569ac9cc70929c268ac461f4003e3e5ca80",
|
"rev": "9154f4569b6cdfd3c595851a6ba51bfaa472d9f3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -237,11 +237,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1766736597,
|
"lastModified": 1765838191,
|
||||||
"narHash": "sha256-BASnpCLodmgiVn0M1MU2Pqyoz0aHwar/0qLkp7CjvSQ=",
|
"narHash": "sha256-m5KWt1nOm76ILk/JSCxBM4MfK3rYY7Wq9/TZIIeGnT8=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "f560ccec6b1116b22e6ed15f4c510997d99d5852",
|
"rev": "c6f52ebd45e5925c188d1a20119978aa4ffd5ef6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -297,11 +297,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1766651565,
|
"lastModified": 1765779637,
|
||||||
"narHash": "sha256-QEhk0eXgyIqTpJ/ehZKg9IKS7EtlWxF3N7DXy42zPfU=",
|
"narHash": "sha256-KJ2wa/BLSrTqDjbfyNx70ov/HdgNBCBBSQP3BIzKnv4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "3e2499d5539c16d0d173ba53552a4ff8547f4539",
|
"rev": "1306659b587dc277866c7b69eb97e5f07864d8c4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -354,11 +354,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1766289575,
|
"lastModified": 1765836173,
|
||||||
"narHash": "sha256-BOKCwOQQIP4p9z8DasT5r+qjri3x7sPCOq+FTjY8Z+o=",
|
"narHash": "sha256-hWRYfdH2ONI7HXbqZqW8Q1y9IRbnXWvtvt/ONZovSNY=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "9836912e37aef546029e48c8749834735a6b9dad",
|
"rev": "443a7f2e7e118c4fc63b7fae05ab3080dd0e5c63",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
|
|
@ -51,8 +51,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
../profiles/core/core.nix
|
../machines/core/core.nix
|
||||||
../profiles/core/nix.nix
|
../machines/core/nix.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
documentation = {
|
documentation = {
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,8 @@ let
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
defaultModules = [
|
customModules = import ./core/default.nix;
|
||||||
|
baseModules = [
|
||||||
# make flake inputs accessible in NixOS
|
# make flake inputs accessible in NixOS
|
||||||
{
|
{
|
||||||
_module.args.self = self;
|
_module.args.self = self;
|
||||||
|
|
@ -44,12 +45,10 @@ let
|
||||||
sops-nix.nixosModules.sops
|
sops-nix.nixosModules.sops
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
{
|
|
||||||
my.profiles.core.enable = true;
|
|
||||||
}
|
|
||||||
../modules
|
../modules
|
||||||
../profiles
|
../profiles
|
||||||
];
|
];
|
||||||
|
defaultModules = baseModules ++ customModules;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
flake.nixosConfigurations = {
|
flake.nixosConfigurations = {
|
||||||
|
|
|
||||||
45
machines/core/core.nix
Normal file
45
machines/core/core.nix
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
# Packages
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
bandwhich
|
||||||
|
bind # dig
|
||||||
|
borgbackup
|
||||||
|
cryptsetup
|
||||||
|
delta
|
||||||
|
fd # find replacement
|
||||||
|
file
|
||||||
|
fzf
|
||||||
|
gettext
|
||||||
|
git
|
||||||
|
gptfdisk
|
||||||
|
htop
|
||||||
|
jq
|
||||||
|
killall
|
||||||
|
lsof
|
||||||
|
mosh
|
||||||
|
mtr
|
||||||
|
multipath-tools # kpartx
|
||||||
|
nmap
|
||||||
|
nmon
|
||||||
|
ouch # de-/compress
|
||||||
|
pciutils
|
||||||
|
progress
|
||||||
|
pv
|
||||||
|
reptyr
|
||||||
|
rsync
|
||||||
|
screen
|
||||||
|
sd # sed replacement
|
||||||
|
stress-ng
|
||||||
|
tmux
|
||||||
|
unzip
|
||||||
|
usbutils
|
||||||
|
vim
|
||||||
|
wget
|
||||||
|
whois
|
||||||
|
xcp
|
||||||
|
zip
|
||||||
|
];
|
||||||
|
|
||||||
|
time.timeZone = "Europe/Berlin";
|
||||||
|
}
|
||||||
7
machines/core/default.nix
Normal file
7
machines/core/default.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
[
|
||||||
|
./core.nix
|
||||||
|
./modules.nix
|
||||||
|
./network.nix
|
||||||
|
./nix.nix
|
||||||
|
./users.nix
|
||||||
|
]
|
||||||
|
|
@ -11,5 +11,10 @@ _: {
|
||||||
"usb_storage"
|
"usb_storage"
|
||||||
"xhci_pci"
|
"xhci_pci"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
kernelModules = [
|
||||||
|
"e1000e"
|
||||||
|
"nvme"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
13
machines/core/network.nix
Normal file
13
machines/core/network.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
_: {
|
||||||
|
networking.networkmanager = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
unmanaged = [
|
||||||
|
"interface-name:br-*" # Ignore docker compose network bridges
|
||||||
|
"interface-name:docker?" # Ignore docker default bridge
|
||||||
|
"interface-name:veth*" # Ignore docker compose network devices
|
||||||
|
"interface-name:virbr?" # Ignore libvirt default bridge
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -13,10 +13,7 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
hardware.keyboard.qmk = {
|
hardware.keyboard.qmk.enable = true;
|
||||||
enable = true;
|
|
||||||
keychronSupport = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.udev.packages = with pkgs; [
|
services.udev.packages = with pkgs; [
|
||||||
via
|
via
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
./alertmanager
|
./alertmanager
|
||||||
./aria2
|
./aria2
|
||||||
./backup
|
./backup
|
||||||
|
./bazarr
|
||||||
./blackbox
|
./blackbox
|
||||||
./blocky
|
./blocky
|
||||||
./dyndns
|
./dyndns
|
||||||
|
|
@ -19,20 +20,26 @@
|
||||||
./homepage
|
./homepage
|
||||||
./homer
|
./homer
|
||||||
./initrd-ssh
|
./initrd-ssh
|
||||||
|
./jellyfin
|
||||||
|
./jellyseerr
|
||||||
./loki
|
./loki
|
||||||
./matrix-bot
|
|
||||||
./media
|
|
||||||
./minecraft-server
|
./minecraft-server
|
||||||
|
./matrix-bot
|
||||||
./mumble-server
|
./mumble-server
|
||||||
|
./navidrome
|
||||||
./nextcloud
|
./nextcloud
|
||||||
./node-exporter
|
./node-exporter
|
||||||
./octoprint
|
./octoprint
|
||||||
./paperless
|
./paperless
|
||||||
./passworts
|
./passworts
|
||||||
|
./photos
|
||||||
./prometheus
|
./prometheus
|
||||||
./promtail
|
./promtail
|
||||||
|
./prowlarr
|
||||||
|
./radarr
|
||||||
./remote-build
|
./remote-build
|
||||||
./rss-bridge
|
./rss-bridge
|
||||||
|
./sonarr
|
||||||
./ssh-server
|
./ssh-server
|
||||||
./tandoor-recipes
|
./tandoor-recipes
|
||||||
./vpn
|
./vpn
|
||||||
|
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
{ ... }:
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./bazarr
|
|
||||||
./jellyfin
|
|
||||||
./jellyseerr
|
|
||||||
./navidrome
|
|
||||||
./photos
|
|
||||||
./prowlarr
|
|
||||||
./radarr
|
|
||||||
./sonarr
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
@ -1,45 +0,0 @@
|
||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
# Packages
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
bandwhich # bandwidth monitor
|
|
||||||
bind # dns tools (dig, etc)
|
|
||||||
borgbackup # backup tool
|
|
||||||
cryptsetup # luks volume management
|
|
||||||
delta # git diff viewer
|
|
||||||
fd # find replacement in rust
|
|
||||||
file # show file type
|
|
||||||
fzf # fuzzy finder
|
|
||||||
gettext # localization tools
|
|
||||||
git # version control
|
|
||||||
gptfdisk # disk partitioning tools
|
|
||||||
htop # process monitor
|
|
||||||
jq # json processor
|
|
||||||
killall # kill processes by name
|
|
||||||
lsof # list open files
|
|
||||||
mosh # mobile shell
|
|
||||||
mtr # network diagnostic tool
|
|
||||||
multipath-tools # disk multipathing tools (kpartx)
|
|
||||||
nmap # network scanner
|
|
||||||
nmon # performance monitor
|
|
||||||
ouch # de-/compression tool
|
|
||||||
pciutils # lspci
|
|
||||||
progress # show progress of coreutils commands
|
|
||||||
pv # pipe viewer
|
|
||||||
reptyr # reparent process to new terminal
|
|
||||||
rsync # remote file sync
|
|
||||||
screen # terminal multiplexer
|
|
||||||
sd # sed replacement
|
|
||||||
stress-ng # stress testing
|
|
||||||
tmux # terminal multiplexer
|
|
||||||
unzip # unzip tools
|
|
||||||
usbutils # lsusb
|
|
||||||
vim # text editor
|
|
||||||
wget # file downloader
|
|
||||||
whois # domain lookup
|
|
||||||
xcp # rust cp replacement
|
|
||||||
zip # zip tools
|
|
||||||
];
|
|
||||||
|
|
||||||
time.timeZone = "Europe/Berlin";
|
|
||||||
}
|
|
||||||
|
|
@ -1,23 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}@args:
|
|
||||||
let
|
|
||||||
cfg = config.my.profiles.core;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.my.profiles.core.enable = lib.mkEnableOption "core profile";
|
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable (
|
|
||||||
lib.mkMerge [
|
|
||||||
(import ./core.nix args)
|
|
||||||
(import ./modules.nix args)
|
|
||||||
(import ./network.nix args)
|
|
||||||
(import ./nix.nix args)
|
|
||||||
(import ./users.nix args)
|
|
||||||
]
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
_: {
|
|
||||||
networking.networkmanager = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
unmanaged = [
|
|
||||||
"interface-name:br-*" # docker compose bridges
|
|
||||||
"interface-name:docker?" # docker default bridge
|
|
||||||
"interface-name:veth*" # docker veth devices
|
|
||||||
"interface-name:virbr?" # libvirt default bridge
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -4,7 +4,6 @@
|
||||||
./3d-design
|
./3d-design
|
||||||
./android
|
./android
|
||||||
./clean
|
./clean
|
||||||
./core
|
|
||||||
./desktop-apps
|
./desktop-apps
|
||||||
./desktop-dev
|
./desktop-dev
|
||||||
./development
|
./development
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue