mirror of
https://github.com/SebastianStork/nixos-config.git
synced 2026-03-23 12:18:27 +01:00
Compare commits
No commits in common. "0b09699cc5f2e4f66d04520084b0e153c46010dd" and "dc95d6fd776905634d5e7cca7bb35818c6cd0332" have entirely different histories.
0b09699cc5
...
dc95d6fd77
7 changed files with 148 additions and 152 deletions
|
|
@ -4,74 +4,78 @@
|
|||
|
||||
system.stateVersion = "25.11";
|
||||
|
||||
custom = {
|
||||
boot.loader.grub.enable = true;
|
||||
custom =
|
||||
let
|
||||
privateDomain = config.custom.networking.overlay.domain;
|
||||
in
|
||||
{
|
||||
boot.loader.grub.enable = true;
|
||||
|
||||
networking = {
|
||||
overlay.address = "10.254.250.6";
|
||||
underlay = {
|
||||
interface = "enp2s0";
|
||||
cidr = "192.168.0.64/24";
|
||||
gateway = "192.168.0.1";
|
||||
networking = {
|
||||
overlay.address = "10.254.250.6";
|
||||
underlay = {
|
||||
interface = "enp2s0";
|
||||
cidr = "192.168.0.64/24";
|
||||
gateway = "192.168.0.1";
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
recursive-nameserver = {
|
||||
enable = true;
|
||||
blockAds = true;
|
||||
};
|
||||
private-nameserver.enable = true;
|
||||
|
||||
syncthing = {
|
||||
enable = true;
|
||||
isServer = true;
|
||||
gui.domain = "syncthing.${privateDomain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
prometheus.storageRetentionSize = "20GB";
|
||||
};
|
||||
|
||||
web-services = {
|
||||
atuin = {
|
||||
enable = true;
|
||||
domain = "atuin.${privateDomain}";
|
||||
};
|
||||
|
||||
filebrowser = {
|
||||
enable = true;
|
||||
domain = "files.${privateDomain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
radicale = {
|
||||
enable = true;
|
||||
domain = "dav.${privateDomain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
actualbudget = {
|
||||
enable = true;
|
||||
domain = "budget.${privateDomain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
karakeep = {
|
||||
enable = true;
|
||||
domain = "bookmarks.${privateDomain}";
|
||||
};
|
||||
|
||||
grafana = {
|
||||
enable = true;
|
||||
domain = "grafana.${privateDomain}";
|
||||
};
|
||||
|
||||
gatus = {
|
||||
enable = true;
|
||||
domain = "status.${privateDomain}";
|
||||
generateDefaultEndpoints = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
recursive-nameserver = {
|
||||
enable = true;
|
||||
blockAds = true;
|
||||
};
|
||||
private-nameserver.enable = true;
|
||||
|
||||
syncthing = {
|
||||
enable = true;
|
||||
isServer = true;
|
||||
gui.domain = "syncthing.${config.custom.networking.overlay.domain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
prometheus.storageRetentionSize = "20GB";
|
||||
};
|
||||
|
||||
web-services = {
|
||||
atuin = {
|
||||
enable = true;
|
||||
domain = "atuin.${config.custom.networking.overlay.domain}";
|
||||
};
|
||||
|
||||
filebrowser = {
|
||||
enable = true;
|
||||
domain = "files.${config.custom.networking.overlay.domain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
radicale = {
|
||||
enable = true;
|
||||
domain = "dav.${config.custom.networking.overlay.domain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
actualbudget = {
|
||||
enable = true;
|
||||
domain = "budget.${config.custom.networking.overlay.domain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
karakeep = {
|
||||
enable = true;
|
||||
domain = "bookmarks.${config.custom.networking.overlay.domain}";
|
||||
};
|
||||
|
||||
grafana = {
|
||||
enable = true;
|
||||
domain = "grafana.${config.custom.networking.overlay.domain}";
|
||||
};
|
||||
|
||||
gatus = {
|
||||
enable = true;
|
||||
domain = "status.${config.custom.networking.overlay.domain}";
|
||||
generateDefaultEndpoints = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -67,6 +67,8 @@
|
|||
MAXTEMP=hwmon2/pwm2=100
|
||||
MINSTART=hwmon2/pwm2=35
|
||||
MINSTOP=hwmon2/pwm2=25
|
||||
MINPWM=hwmon2/pwm2=0
|
||||
MAXPWM=hwmon2/pwm2=255
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,66 +4,74 @@
|
|||
|
||||
system.stateVersion = "25.11";
|
||||
|
||||
custom = {
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
custom =
|
||||
let
|
||||
sproutedDomain = "sprouted.cloud";
|
||||
in
|
||||
{
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
|
||||
networking = {
|
||||
overlay.address = "10.254.250.4";
|
||||
underlay = {
|
||||
interface = "enp1s0";
|
||||
cidr = "167.235.73.246/32";
|
||||
isPublic = true;
|
||||
gateway = "172.31.1.1";
|
||||
networking = {
|
||||
overlay.address = "10.254.250.4";
|
||||
underlay = {
|
||||
interface = "enp1s0";
|
||||
cidr = "167.235.73.246/32";
|
||||
isPublic = true;
|
||||
gateway = "172.31.1.1";
|
||||
};
|
||||
};
|
||||
|
||||
services.public-nameserver = {
|
||||
enable = true;
|
||||
publicHostName = "ns2";
|
||||
zones = [
|
||||
"sprouted.cloud"
|
||||
"sstork.dev"
|
||||
];
|
||||
};
|
||||
|
||||
web-services =
|
||||
let
|
||||
sstorkDomain = "sstork.dev";
|
||||
in
|
||||
{
|
||||
personal-blog = {
|
||||
enable = true;
|
||||
domain = sstorkDomain;
|
||||
};
|
||||
|
||||
forgejo = {
|
||||
enable = true;
|
||||
domain = "git.${sstorkDomain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
outline = {
|
||||
enable = true;
|
||||
domain = "wiki.${sproutedDomain}";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
it-tools = {
|
||||
enable = true;
|
||||
domain = "it-tools.${sproutedDomain}";
|
||||
};
|
||||
|
||||
networking-toolbox = {
|
||||
enable = true;
|
||||
domain = "net-tools.${sproutedDomain}";
|
||||
};
|
||||
|
||||
privatebin = {
|
||||
enable = true;
|
||||
domain = "pastebin.${sproutedDomain}";
|
||||
branding.name = "SproutedBin";
|
||||
};
|
||||
|
||||
screego = {
|
||||
enable = true;
|
||||
domain = "mirror.${sproutedDomain}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.public-nameserver = {
|
||||
enable = true;
|
||||
publicHostName = "ns2";
|
||||
zones = [
|
||||
"sprouted.cloud"
|
||||
"sstork.dev"
|
||||
];
|
||||
};
|
||||
|
||||
web-services = {
|
||||
personal-blog = {
|
||||
enable = true;
|
||||
domain = "sstork.dev";
|
||||
};
|
||||
|
||||
forgejo = {
|
||||
enable = true;
|
||||
domain = "git.sstork.dev";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
outline = {
|
||||
enable = true;
|
||||
domain = "wiki.sprouted.cloud";
|
||||
doBackups = true;
|
||||
};
|
||||
|
||||
it-tools = {
|
||||
enable = true;
|
||||
domain = "it-tools.sprouted.cloud";
|
||||
};
|
||||
|
||||
networking-toolbox = {
|
||||
enable = true;
|
||||
domain = "net-tools.sprouted.cloud";
|
||||
};
|
||||
|
||||
privatebin = {
|
||||
enable = true;
|
||||
domain = "pastebin.sprouted.cloud";
|
||||
branding.name = "SproutedBin";
|
||||
};
|
||||
|
||||
screego = {
|
||||
enable = true;
|
||||
domain = "mirror.sprouted.cloud";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,11 +18,8 @@
|
|||
|
||||
services = {
|
||||
wpaperd.enable = true;
|
||||
hypridle.enable = true;
|
||||
cliphist.enable = true;
|
||||
hypridle = {
|
||||
enable = true;
|
||||
lockCommand = "pidof hyprlock || hyprlock";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -14,13 +14,7 @@
|
|||
noctalia-shell.enable = true;
|
||||
};
|
||||
|
||||
services = {
|
||||
cliphist.enable = true;
|
||||
hypridle = {
|
||||
enable = true;
|
||||
lockCommand = "noctalia-shell ipc call lockScreen lock";
|
||||
};
|
||||
};
|
||||
services.cliphist.enable = true;
|
||||
};
|
||||
|
||||
home.packages = [ pkgs.grimblast ];
|
||||
|
|
@ -41,8 +35,8 @@
|
|||
bind = SUPER, V, exec, $ipc launcher clipboard
|
||||
|
||||
# Manage session
|
||||
bindrl = SUPER CONTROL, L, exec, loginctl lock-session
|
||||
bindrl = SUPER CONTROL, S, exec, systemctl sleep
|
||||
bindrl = SUPER CONTROL, L, exec, $ipc lockScreen lock
|
||||
bindrl = SUPER CONTROL, S, exec, $ipc sessionMenu lockAndSuspend
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -96,7 +96,7 @@
|
|||
largeButtonsStyle = false;
|
||||
countdownDuration = 3000;
|
||||
};
|
||||
idle.enabled = false;
|
||||
idle.enabled = true;
|
||||
audio.mprisBlacklist = [ "firefox" ];
|
||||
network.bluetoothAutoConnect = false;
|
||||
location = {
|
||||
|
|
|
|||
|
|
@ -4,26 +4,17 @@
|
|||
lib,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.custom.services.hypridle;
|
||||
in
|
||||
{
|
||||
options.custom.services.hypridle = {
|
||||
enable = lib.mkEnableOption "";
|
||||
lockCommand = lib.mkOption {
|
||||
type = lib.types.nonEmptyStr;
|
||||
default = "";
|
||||
};
|
||||
};
|
||||
options.custom.services.hypridle.enable = lib.mkEnableOption "";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
config = lib.mkIf config.custom.services.hypridle.enable {
|
||||
services.hypridle = {
|
||||
enable = true;
|
||||
package = pkgs-unstable.hypridle;
|
||||
|
||||
settings = {
|
||||
general = {
|
||||
lock_cmd = cfg.lockCommand;
|
||||
lock_cmd = lib.mkIf config.custom.programs.hyprlock.enable "pidof hyprlock || hyprlock";
|
||||
before_sleep_cmd = "loginctl lock-session";
|
||||
after_sleep_cmd = "hyprctl dispatch dpms on";
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue