Fix statix warnings
This commit is contained in:
parent
0cc41287d4
commit
5480e4be81
16 changed files with 826 additions and 715 deletions
68
flake.nix
68
flake.nix
|
@ -19,8 +19,10 @@
|
|||
|
||||
pre-commit-hooks = {
|
||||
url = "github:cachix/pre-commit-hooks.nix";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs = {
|
||||
flake-utils.follows = "flake-utils";
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
nixinate = {
|
||||
|
@ -35,14 +37,18 @@
|
|||
|
||||
rust-overlay = {
|
||||
url = "github:oxalica/rust-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-utils.follows = "flake-utils";
|
||||
};
|
||||
};
|
||||
|
||||
microvm = {
|
||||
url = "github:astro/microvm.nix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-utils.follows = "flake-utils";
|
||||
};
|
||||
};
|
||||
|
||||
sops = {
|
||||
|
@ -52,15 +58,19 @@
|
|||
|
||||
emacs-overlay = {
|
||||
url = "github:nix-community/emacs-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-utils.follows = "flake-utils";
|
||||
};
|
||||
};
|
||||
|
||||
nil = {
|
||||
url = "github:oxalica/nil";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs.rust-overlay.follows = "rust-overlay";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-utils.follows = "flake-utils";
|
||||
rust-overlay.follows = "rust-overlay";
|
||||
};
|
||||
};
|
||||
|
||||
disko = {
|
||||
|
@ -74,35 +84,45 @@
|
|||
|
||||
eww = {
|
||||
url = "github:elkowar/eww";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.rust-overlay.follows = "rust-overlay";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
rust-overlay.follows = "rust-overlay";
|
||||
};
|
||||
};
|
||||
|
||||
caddy-with-plugins = {
|
||||
url = "github:eboskma/caddy-with-plugins";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-parts.follows = "flake-parts";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-parts.follows = "flake-parts";
|
||||
};
|
||||
};
|
||||
|
||||
ha-now-playing = {
|
||||
url = "git+https://git.datarift.nl/erwin/ha-now-playing.git?ref=main";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs.rust-overlay.follows = "rust-overlay";
|
||||
inputs.pre-commit-hooks.follows = "pre-commit-hooks";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-utils.follows = "flake-utils";
|
||||
rust-overlay.follows = "rust-overlay";
|
||||
pre-commit-hooks.follows = "pre-commit-hooks";
|
||||
};
|
||||
};
|
||||
|
||||
pamedia = {
|
||||
url = "git+https://git.datarift.nl/erwin/pamedia-rs.git?ref=main";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs.naersk.follows = "naersk";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-utils.follows = "flake-utils";
|
||||
naersk.follows = "naersk";
|
||||
};
|
||||
};
|
||||
|
||||
sunshine = {
|
||||
url = "git+https://git@git.datarift.nl/erwin/sunshine.git?ref=main";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-utils.follows = "flake-utils";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -12,58 +12,60 @@ in
|
|||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
programs.fish = {
|
||||
enable = true;
|
||||
functions = import ./functions.nix { inherit (pkgs) git coreutils; };
|
||||
programs = {
|
||||
fish = {
|
||||
enable = true;
|
||||
functions = import ./functions.nix { inherit (pkgs) git coreutils; };
|
||||
|
||||
plugins = [
|
||||
{
|
||||
name = "dracula";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "dracula";
|
||||
repo = "fish";
|
||||
rev = "62b109f12faab5604f341e8b83460881f94b1550";
|
||||
sha256 = "0TlKq2ur2I6Bv7pu7JObrJxV0NbQhydmCuUs6ZdDU1I=";
|
||||
};
|
||||
}
|
||||
];
|
||||
plugins = [
|
||||
{
|
||||
name = "dracula";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "dracula";
|
||||
repo = "fish";
|
||||
rev = "62b109f12faab5604f341e8b83460881f94b1550";
|
||||
sha256 = "0TlKq2ur2I6Bv7pu7JObrJxV0NbQhydmCuUs6ZdDU1I=";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
shellAliases = {
|
||||
# code = "${pkgs.vscode}/bin/code --enable-features=UseOzonePlatform --ozone-platform=wayland";
|
||||
ls = "${pkgs.eza}/bin/eza -Fb --git";
|
||||
shellAliases = {
|
||||
# code = "${pkgs.vscode}/bin/code --enable-features=UseOzonePlatform --ozone-platform=wayland";
|
||||
ls = "${pkgs.eza}/bin/eza -Fb --git";
|
||||
|
||||
vimdiff = mkIf config.eboskma.programs.neovim.enable "nvim -d";
|
||||
vim = mkIf config.eboskma.programs.neovim.enable "nvim";
|
||||
vi = mkIf config.eboskma.programs.neovim.enable "nvim";
|
||||
};
|
||||
interactiveShellInit = ''
|
||||
vimdiff = mkIf config.eboskma.programs.neovim.enable "nvim -d";
|
||||
vim = mkIf config.eboskma.programs.neovim.enable "nvim";
|
||||
vi = mkIf config.eboskma.programs.neovim.enable "nvim";
|
||||
};
|
||||
interactiveShellInit = ''
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
programs.fzf = {
|
||||
enable = true;
|
||||
enableFishIntegration = true;
|
||||
changeDirWidgetCommand = "${pkgs.fd}/bin/fd -type d";
|
||||
defaultCommand = "${pkgs.fd}/bin/fd -type f";
|
||||
defaultOptions = [
|
||||
"--cycle"
|
||||
"--layout=reverse"
|
||||
"--border"
|
||||
"--height=90%"
|
||||
"--preview-window=wrap"
|
||||
"--marker='*'"
|
||||
];
|
||||
fileWidgetCommand = "${pkgs.fd}/bin/fd -type f";
|
||||
};
|
||||
fzf = {
|
||||
enable = true;
|
||||
enableFishIntegration = true;
|
||||
changeDirWidgetCommand = "${pkgs.fd}/bin/fd -type d";
|
||||
defaultCommand = "${pkgs.fd}/bin/fd -type f";
|
||||
defaultOptions = [
|
||||
"--cycle"
|
||||
"--layout=reverse"
|
||||
"--border"
|
||||
"--height=90%"
|
||||
"--preview-window=wrap"
|
||||
"--marker='*'"
|
||||
];
|
||||
fileWidgetCommand = "${pkgs.fd}/bin/fd -type f";
|
||||
};
|
||||
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
direnv = {
|
||||
enable = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
|
||||
programs.zoxide = {
|
||||
enable = true;
|
||||
enableFishIntegration = true;
|
||||
zoxide = {
|
||||
enable = true;
|
||||
enableFishIntegration = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -176,32 +176,46 @@ in
|
|||
|
||||
format = "<label-state> <label-mode>";
|
||||
|
||||
label.mode.text = " %mode%"; # Icon: arrow_expand_all
|
||||
label.mode.padding = 1;
|
||||
label = {
|
||||
mode = {
|
||||
text = " %mode%"; # Icon: arrow_expand_all
|
||||
padding = 1;
|
||||
};
|
||||
|
||||
label.focused.text = " %index%"; # Icon: fa-circle
|
||||
label.focused.padding = 1;
|
||||
label.focused.background = "#333333";
|
||||
label.focused.underline = "#ffffff";
|
||||
focused = {
|
||||
text = " %index%"; # Icon: fa-circle
|
||||
padding = 1;
|
||||
background = "#333333";
|
||||
underline = "#ffffff";
|
||||
};
|
||||
|
||||
label.unfocused.text = " %index%"; # Icon: fa-circle_o
|
||||
label.unfocused.padding = 1;
|
||||
unfocused = {
|
||||
text = " %index%"; # Icon: fa-circle_o
|
||||
padding = 1;
|
||||
};
|
||||
|
||||
label.visible.text = " %index%"; # Icon: fa-dot_circle_o
|
||||
label.visible.padding = 1;
|
||||
visible = {
|
||||
text = " %index%"; # Icon: fa-dot_circle_o
|
||||
padding = 1;
|
||||
};
|
||||
|
||||
label.urgent.text = " %index%"; # Icon: fa-exclamation_circle
|
||||
label.urgent.background = "${colors.urgent}";
|
||||
label.urgent.padding = 1;
|
||||
urgent = {
|
||||
text = " %index%"; # Icon: fa-exclamation_circle
|
||||
background = "${colors.urgent}";
|
||||
padding = 1;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
"module/playerctl" = {
|
||||
type = "custom/script";
|
||||
exec = "${polybar-playerctl}/bin/polybar-playerctl";
|
||||
interval = 1;
|
||||
click.left = "${polybar-playerctl}/bin/polybar-playerctl play-pause";
|
||||
click.middle = "${polybar-playerctl}/bin/polybar-playerctl next";
|
||||
click.right = "${polybar-playerctl}/bin/polybar-playerctl prevous";
|
||||
click = {
|
||||
left = "${polybar-playerctl}/bin/polybar-playerctl play-pause";
|
||||
middle = "${polybar-playerctl}/bin/polybar-playerctl next";
|
||||
right = "${polybar-playerctl}/bin/polybar-playerctl prevous";
|
||||
};
|
||||
format.padding = 2;
|
||||
|
||||
scroll.up = "${polybar-playerctl}/bin/polybar-playerctl next-player";
|
||||
|
@ -210,11 +224,15 @@ in
|
|||
"module/date" = {
|
||||
type = "internal/date";
|
||||
interval = 1.0;
|
||||
time.text = " %H:%M:%S";
|
||||
time.alt = " %a, %d %b %Y";
|
||||
time = {
|
||||
text = " %H:%M:%S";
|
||||
alt = " %a, %d %b %Y";
|
||||
};
|
||||
|
||||
format.text = "<label>";
|
||||
format.padding = 2;
|
||||
format = {
|
||||
text = "<label>";
|
||||
padding = 2;
|
||||
};
|
||||
|
||||
label.text = "%time%";
|
||||
};
|
||||
|
@ -224,22 +242,28 @@ in
|
|||
exec = "${headset-battery}";
|
||||
interval = 1;
|
||||
|
||||
format.prefix = " ";
|
||||
format.padding = 2;
|
||||
format = {
|
||||
prefix = " ";
|
||||
padding = 2;
|
||||
};
|
||||
|
||||
label.text = "%output%";
|
||||
|
||||
click.left = "${pkgs.headsetcontrol}/bin/headsetcontrol -s 128";
|
||||
click.right = "${pkgs.headsetcontrol}/bin/headsetcontrol -s 0";
|
||||
click = {
|
||||
left = "${pkgs.headsetcontrol}/bin/headsetcontrol -s 128";
|
||||
right = "${pkgs.headsetcontrol}/bin/headsetcontrol -s 0";
|
||||
};
|
||||
};
|
||||
|
||||
"module/memory" = {
|
||||
type = "internal/memory";
|
||||
interval = 1;
|
||||
|
||||
format.text = "<label>";
|
||||
format.prefix = " "; # Icon: memory
|
||||
format.padding = 2;
|
||||
format = {
|
||||
text = "<label>";
|
||||
prefix = " "; # Icon: memory
|
||||
padding = 2;
|
||||
};
|
||||
|
||||
label.text = "%mb_used% (%percentage_used%%)";
|
||||
};
|
||||
|
@ -248,9 +272,11 @@ in
|
|||
type = "internal/cpu";
|
||||
interval = 1;
|
||||
|
||||
format.text = "<label>";
|
||||
format.prefix = " "; # Icon: cpu_64_bit
|
||||
format.padding = 2;
|
||||
format = {
|
||||
text = "<label>";
|
||||
prefix = " "; # Icon: cpu_64_bit
|
||||
padding = 2;
|
||||
};
|
||||
|
||||
label = "%percentage:3%%";
|
||||
};
|
||||
|
@ -261,17 +287,25 @@ in
|
|||
|
||||
use.ui.max = false;
|
||||
|
||||
format.volume.text = "<ramp-volume> <label-volume>";
|
||||
format.volume.padding = 2;
|
||||
format = {
|
||||
volume = {
|
||||
text = "<ramp-volume> <label-volume>";
|
||||
padding = 2;
|
||||
};
|
||||
|
||||
format.muted.text = "<label-muted>";
|
||||
format.muted.prefix = ""; # Icon: volume_off
|
||||
format.muted.background = "${colors.urgent}";
|
||||
format.muted.padding = 2;
|
||||
muted = {
|
||||
text = "<label-muted>";
|
||||
prefix = ""; # Icon: volume_off
|
||||
background = "${colors.urgent}";
|
||||
padding = 2;
|
||||
};
|
||||
};
|
||||
|
||||
label.volume.text = "%percentage%%";
|
||||
label = {
|
||||
volume.text = "%percentage%%";
|
||||
|
||||
label.muted.text = " Muted";
|
||||
muted.text = " Muted";
|
||||
};
|
||||
|
||||
ramp.volume = [ "" "" "" ]; # Icons: volume_low volume_medium volume_high
|
||||
|
||||
|
@ -289,28 +323,38 @@ in
|
|||
accumulate.stats = true;
|
||||
unknown.as.up = true;
|
||||
|
||||
format.connected.text = "<label-connected>";
|
||||
format.connected.padding = 2;
|
||||
format = {
|
||||
connected = {
|
||||
text = "<label-connected>";
|
||||
padding = 2;
|
||||
};
|
||||
|
||||
format.disconnected.text = "<label-disconnected>";
|
||||
format.disconnected.padding = 2;
|
||||
disconnected = {
|
||||
text = "<label-disconnected>";
|
||||
padding = 2;
|
||||
};
|
||||
|
||||
format.packetloss.text = "<animation-packetloss> <label-connected>";
|
||||
packetloss.text = "<animation-packetloss> <label-connected>";
|
||||
};
|
||||
|
||||
label.connected.text = " %local_ip% %upspeed:9% %downspeed:9%"; # Icon: ethernet
|
||||
label.disconnected.text = " %{A1:networkmanager_dmenu &:} Offline%{A}"; # Icon: network_off_outline
|
||||
label = {
|
||||
connected.text = " %local_ip% %upspeed:9% %downspeed:9%"; # Icon: ethernet
|
||||
disconnected.text = " %{A1:networkmanager_dmenu &:} Offline%{A}"; # Icon: network_off_outline
|
||||
};
|
||||
|
||||
animation.packetloss.text = [
|
||||
{
|
||||
text = "⚠";
|
||||
foreground = "${colors.urgent}";
|
||||
}
|
||||
{
|
||||
text = "⚠";
|
||||
foreground = "${colors.foreground}";
|
||||
}
|
||||
];
|
||||
animation.packetloss.framerate = 500;
|
||||
animation = {
|
||||
packetloss.text = [
|
||||
{
|
||||
text = "⚠";
|
||||
foreground = "${colors.urgent}";
|
||||
}
|
||||
{
|
||||
text = "⚠";
|
||||
foreground = "${colors.foreground}";
|
||||
}
|
||||
];
|
||||
packetloss.framerate = 500;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -54,9 +54,6 @@
|
|||
|
||||
};
|
||||
};
|
||||
services.udev.extraRules = ''
|
||||
ATTR{address}=="96:00:02:12:a2:eb", NAME="eth0"
|
||||
'';
|
||||
|
||||
### Hetzner stuff
|
||||
boot = {
|
||||
|
@ -77,27 +74,34 @@
|
|||
|
||||
system.configurationRevision = self.inputs.nixpkgs.lib.mkIf (self ? rev) self.rev;
|
||||
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
settings = {
|
||||
PasswordAuthentication = false;
|
||||
};
|
||||
};
|
||||
services.tailscale.enable = true;
|
||||
services = {
|
||||
udev.extraRules = ''
|
||||
ATTR{address}=="96:00:02:12:a2:eb", NAME="eth0"
|
||||
'';
|
||||
|
||||
services.caddy = {
|
||||
virtualHosts = {
|
||||
"datarift.nl" = {
|
||||
extraConfig = ''
|
||||
@webfinger-erwin {
|
||||
path /.well-known/webfinger
|
||||
query resource=acct:erwin@datarift.nl
|
||||
}
|
||||
respond @webfinger-erwin 200 {
|
||||
body `{"subject":"acct:erwin@datarift.nl","links":[{"rel":"http://openid.net/specs/connect/1.0/issuer","href":"https://id.datarift.nl/realms/datarift"}]}`
|
||||
close
|
||||
}
|
||||
'';
|
||||
|
||||
openssh = {
|
||||
enable = true;
|
||||
settings = {
|
||||
PasswordAuthentication = false;
|
||||
};
|
||||
};
|
||||
tailscale.enable = true;
|
||||
|
||||
caddy = {
|
||||
virtualHosts = {
|
||||
"datarift.nl" = {
|
||||
extraConfig = ''
|
||||
@webfinger-erwin {
|
||||
path /.well-known/webfinger
|
||||
query resource=acct:erwin@datarift.nl
|
||||
}
|
||||
respond @webfinger-erwin 200 {
|
||||
body `{"subject":"acct:erwin@datarift.nl","links":[{"rel":"http://openid.net/specs/connect/1.0/issuer","href":"https://id.datarift.nl/realms/datarift"}]}`
|
||||
close
|
||||
}
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -65,19 +65,21 @@
|
|||
};
|
||||
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/42065c7e-d0aa-4de8-a913-014cf59d48ac";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems = {
|
||||
"/" = {
|
||||
device = "/dev/disk/by-uuid/42065c7e-d0aa-4de8-a913-014cf59d48ac";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/4064-A1BE";
|
||||
fsType = "vfat";
|
||||
};
|
||||
"/boot" = {
|
||||
device = "/dev/disk/by-uuid/4064-A1BE";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-uuid/082ec5d2-238e-4713-9c37-31b1cb0fb8c3";
|
||||
fsType = "ext4";
|
||||
"/home" = {
|
||||
device = "/dev/disk/by-uuid/082ec5d2-238e-4713-9c37-31b1cb0fb8c3";
|
||||
fsType = "ext4";
|
||||
};
|
||||
};
|
||||
|
||||
swapDevices = [{ device = "/dev/disk/by-uuid/d93788f7-1b94-4687-8313-055d17f42b7e"; }];
|
||||
|
@ -98,8 +100,7 @@
|
|||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
kernelModules = [ "kvm-amd" "apple-mfi-fastcharge" "zenpower" "nf_nat_ftp" ];
|
||||
kernelParams = [ "amd_pstate.shared_mem=1" ];
|
||||
extraModulePackages = [ ] ++
|
||||
(with config.boot.kernelPackages; [ zenpower cpupower ]);
|
||||
extraModulePackages = with config.boot.kernelPackages; [ zenpower cpupower ];
|
||||
|
||||
loader = {
|
||||
systemd-boot = {
|
||||
|
@ -110,20 +111,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
services.udev = {
|
||||
extraHwdb = ''
|
||||
evdev:name:ELECOM TrackBall Mouse HUGE TrackBall:*
|
||||
ID_INPUT_KEY=1
|
||||
KEYBOARD_KEY_90008=red
|
||||
KEYBOARD_KEY_90007=copy
|
||||
KEYBOARD_KEY_90006=paste
|
||||
'';
|
||||
|
||||
extraRules = ''
|
||||
ACTION=="add", ATTRS{idVendor}=="0951", ATTRS{idProduct}=="1666", NAME=keys
|
||||
'';
|
||||
};
|
||||
|
||||
time.timeZone = "Europe/Amsterdam";
|
||||
|
||||
networking = {
|
||||
|
@ -308,38 +295,56 @@
|
|||
};
|
||||
};
|
||||
|
||||
services.openssh.enable = true;
|
||||
# programs.ssh.startAgent = true;
|
||||
services = {
|
||||
udev = {
|
||||
extraHwdb = ''
|
||||
evdev:name:ELECOM TrackBall Mouse HUGE TrackBall:*
|
||||
ID_INPUT_KEY=1
|
||||
KEYBOARD_KEY_90008=red
|
||||
KEYBOARD_KEY_90007=copy
|
||||
KEYBOARD_KEY_90006=paste
|
||||
'';
|
||||
|
||||
programs.gnome-disks.enable = true;
|
||||
extraRules = ''
|
||||
ACTION=="add", ATTRS{idVendor}=="0951", ATTRS{idProduct}=="1666", NAME=keys
|
||||
'';
|
||||
};
|
||||
|
||||
openssh.enable = true;
|
||||
|
||||
udisks2 = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
envfs.enable = true;
|
||||
cpupower-gui.enable = true;
|
||||
tailscale.enable = true;
|
||||
sunshine = {
|
||||
enable = true;
|
||||
user = "erwin";
|
||||
openFirewall = true;
|
||||
};
|
||||
|
||||
services.udisks2 = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
services.envfs.enable = true;
|
||||
services.cpupower-gui.enable = true;
|
||||
services.tailscale.enable = true;
|
||||
programs = {
|
||||
gnome-disks.enable = true;
|
||||
# ssh.startAgent = true;
|
||||
|
||||
programs.gamemode = {
|
||||
enable = true;
|
||||
settings = {
|
||||
general = {
|
||||
renice = 5;
|
||||
};
|
||||
custom = {
|
||||
start = "${pkgs.libnotify}/bin/notify-send 'GameMode started'";
|
||||
end = "${pkgs.libnotify}/bin/notify-send 'GameMode ended'";
|
||||
gamemode = {
|
||||
enable = true;
|
||||
settings = {
|
||||
general = {
|
||||
renice = 5;
|
||||
};
|
||||
custom = {
|
||||
start = "${pkgs.libnotify}/bin/notify-send 'GameMode started'";
|
||||
end = "${pkgs.libnotify}/bin/notify-send 'GameMode ended'";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.sunshine = {
|
||||
enable = true;
|
||||
user = "erwin";
|
||||
openFirewall = true;
|
||||
};
|
||||
|
||||
powerManagement = {
|
||||
cpuFreqGovernor = "ondemand";
|
||||
};
|
||||
|
|
|
@ -62,24 +62,26 @@
|
|||
systemd.enable = true;
|
||||
};
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-label/nixos";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems = {
|
||||
"/" = {
|
||||
device = "/dev/disk/by-label/nixos";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-label/boot";
|
||||
fsType = "vfat";
|
||||
};
|
||||
"/boot" = {
|
||||
device = "/dev/disk/by-label/boot";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-label/home";
|
||||
fsType = "ext4";
|
||||
};
|
||||
"/home" = {
|
||||
device = "/dev/disk/by-label/home";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/yocto" = {
|
||||
device = "/dev/disk/by-label/yocto";
|
||||
fsType = "ext4";
|
||||
"/yocto" = {
|
||||
device = "/dev/disk/by-label/yocto";
|
||||
fsType = "ext4";
|
||||
};
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
|
@ -112,8 +114,7 @@
|
|||
};
|
||||
kernelModules = [ "kvm-amd" "apple-mfi-fastcharge" "zenpower" ];
|
||||
# boot.kernelParams = [ "amd_pstate.shared_mem=1" ];
|
||||
extraModulePackages = [ ] ++
|
||||
(with config.boot.kernelPackages; [ rtl88x2bu zenpower cpupower ]);
|
||||
extraModulePackages = with config.boot.kernelPackages; [ rtl88x2bu zenpower cpupower ];
|
||||
loader = {
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
|
@ -237,48 +238,51 @@
|
|||
};
|
||||
};
|
||||
|
||||
services.openssh.enable = true;
|
||||
# programs.ssh.startAgent = true;
|
||||
|
||||
services.envfs.enable = true;
|
||||
services.cpupower-gui.enable = true;
|
||||
services.flatpak.enable = true;
|
||||
services = {
|
||||
openssh.enable = true;
|
||||
|
||||
services.tailscale.enable = true;
|
||||
envfs.enable = true;
|
||||
cpupower-gui.enable = true;
|
||||
flatpak.enable = true;
|
||||
|
||||
tailscale.enable = true;
|
||||
|
||||
|
||||
services.xserver = {
|
||||
videoDrivers = [ "nvidia" ];
|
||||
xserver = {
|
||||
videoDrivers = [ "nvidia" ];
|
||||
|
||||
screenSection = ''
|
||||
Option "metamodes" "DP-0: nvidia-auto-select +0+0 {ForceFullCompositionPipeline=On, AllowGSYNCCompatible=On}, DP-4: nvidia-auto-select +3840+0 {ForceFullCompositionPipeline=On, AllowGSYNCCompatible=On}"
|
||||
Option "TripleBuffer" "On"
|
||||
'';
|
||||
screenSection = ''
|
||||
Option "metamodes" "DP-0: nvidia-auto-select +0+0 {ForceFullCompositionPipeline=On, AllowGSYNCCompatible=On}, DP-4: nvidia-auto-select +3840+0 {ForceFullCompositionPipeline=On, AllowGSYNCCompatible=On}"
|
||||
Option "TripleBuffer" "On"
|
||||
'';
|
||||
|
||||
libinput = {
|
||||
enable = true;
|
||||
mouse = {
|
||||
naturalScrolling = true;
|
||||
accelSpeed = "1.0";
|
||||
};
|
||||
touchpad = {
|
||||
naturalScrolling = true;
|
||||
libinput = {
|
||||
enable = true;
|
||||
mouse = {
|
||||
naturalScrolling = true;
|
||||
accelSpeed = "1.0";
|
||||
};
|
||||
touchpad = {
|
||||
naturalScrolling = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.nxserver = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
};
|
||||
nxserver = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
};
|
||||
|
||||
services.icecream.daemon = {
|
||||
enable = true;
|
||||
icecream.daemon = {
|
||||
enable = true;
|
||||
|
||||
schedulerHost = "icecream.internal.horus.nu";
|
||||
noRemote = true;
|
||||
openFirewall = false;
|
||||
openBroadcast = true;
|
||||
schedulerHost = "icecream.internal.horus.nu";
|
||||
noRemote = true;
|
||||
openFirewall = false;
|
||||
openBroadcast = true;
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
|
|
@ -8,14 +8,6 @@ in
|
|||
home-manager.users.erwin = {
|
||||
_module.args.flake-inputs = inputs;
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
home.username = "erwin";
|
||||
home.homeDirectory = "/home/erwin";
|
||||
|
||||
home.stateVersion = "23.05";
|
||||
|
||||
eboskma = {
|
||||
programs = {
|
||||
bat.enable = true;
|
||||
|
@ -32,16 +24,26 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
atool
|
||||
bottom
|
||||
btop
|
||||
fd
|
||||
iotop
|
||||
procs
|
||||
ripgrep
|
||||
units
|
||||
];
|
||||
programs.home-manager.enable = true;
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
home = {
|
||||
username = "erwin";
|
||||
homeDirectory = "/home/erwin";
|
||||
|
||||
stateVersion = "23.05";
|
||||
|
||||
packages = with pkgs; [
|
||||
atool
|
||||
bottom
|
||||
btop
|
||||
fd
|
||||
iotop
|
||||
procs
|
||||
ripgrep
|
||||
units
|
||||
];
|
||||
};
|
||||
|
||||
xdg = {
|
||||
enable = true;
|
||||
|
|
|
@ -70,58 +70,60 @@
|
|||
};
|
||||
};
|
||||
|
||||
services.openssh.enable = true;
|
||||
services.tailscale.enable = true;
|
||||
services = {
|
||||
openssh.enable = true;
|
||||
tailscale.enable = true;
|
||||
|
||||
services.kanata = {
|
||||
enable = true;
|
||||
kanata = {
|
||||
enable = true;
|
||||
|
||||
keyboards = {
|
||||
code = {
|
||||
devices = [
|
||||
"/dev/input/by-id/usb-04d9_USB_Keyboard-event-kbd"
|
||||
];
|
||||
keyboards = {
|
||||
code = {
|
||||
devices = [
|
||||
"/dev/input/by-id/usb-04d9_USB_Keyboard-event-kbd"
|
||||
];
|
||||
|
||||
config = ''
|
||||
(defsrc
|
||||
esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 prtsc scrlck pp
|
||||
grv 1 2 3 4 5 6 7 8 9 0 - = bspc ins home pgup
|
||||
tab q w e r t y u i o p [ ] \ del end pgdn
|
||||
caps a s d f g h j k l ; ' ret
|
||||
lsft z x c v b n m , . / rsft up
|
||||
lctl lmet lalt spc ralt rmet rctl lft down rght)
|
||||
config = ''
|
||||
(defsrc
|
||||
esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 prtsc scrlck pp
|
||||
grv 1 2 3 4 5 6 7 8 9 0 - = bspc ins home pgup
|
||||
tab q w e r t y u i o p [ ] \ del end pgdn
|
||||
caps a s d f g h j k l ; ' ret
|
||||
lsft z x c v b n m , . / rsft up
|
||||
lctl lmet lalt spc ralt rmet rctl lft down rght)
|
||||
|
||||
(deflayer colemak
|
||||
esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 prtsc @qwe pp
|
||||
grv 1 2 3 4 5 6 7 8 9 0 - = bspc ins home pgup
|
||||
tab q w f p g j l u y ; [ ] \ del end pgdn
|
||||
@cap a r s t d h n e i o ' ret
|
||||
lsft z x c v b k m , . / rsft up
|
||||
lctl lmet lalt spc ralt rmet rctl lft down rght)
|
||||
(deflayer colemak
|
||||
esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 prtsc @qwe pp
|
||||
grv 1 2 3 4 5 6 7 8 9 0 - = bspc ins home pgup
|
||||
tab q w f p g j l u y ; [ ] \ del end pgdn
|
||||
@cap a r s t d h n e i o ' ret
|
||||
lsft z x c v b k m , . / rsft up
|
||||
lctl lmet lalt spc ralt rmet rctl lft down rght)
|
||||
|
||||
(deflayer qwerty
|
||||
esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 prtsc @col pp
|
||||
grv 1 2 3 4 5 6 7 8 9 0 - = bspc ins home pgup
|
||||
tab q w e r t y u i o p [ ] \ del end pgdn
|
||||
@cap a s d f g h j k l ; ' ret
|
||||
lsft z x c v b n m , . / rsft up
|
||||
lctl lmet lalt spc ralt rmet rctl lft down rght)
|
||||
(deflayer qwerty
|
||||
esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 prtsc @col pp
|
||||
grv 1 2 3 4 5 6 7 8 9 0 - = bspc ins home pgup
|
||||
tab q w e r t y u i o p [ ] \ del end pgdn
|
||||
@cap a s d f g h j k l ; ' ret
|
||||
lsft z x c v b n m , . / rsft up
|
||||
lctl lmet lalt spc ralt rmet rctl lft down rght)
|
||||
|
||||
(defalias
|
||||
cap (tap-hold 100 100 bspc lctl)
|
||||
col (layer-switch colemak)
|
||||
qwe (layer-switch qwerty)
|
||||
)
|
||||
'';
|
||||
(defalias
|
||||
cap (tap-hold 100 100 bspc lctl)
|
||||
col (layer-switch colemak)
|
||||
qwe (layer-switch qwerty)
|
||||
)
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
windowManager.i3 = {
|
||||
xserver = {
|
||||
enable = true;
|
||||
extraPackages = with pkgs; [ i3lock-color ];
|
||||
windowManager.i3 = {
|
||||
enable = true;
|
||||
extraPackages = with pkgs; [ i3lock-color ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -6,17 +6,6 @@ in
|
|||
home-manager.users.erwin = {
|
||||
_module.args.flake-inputs = inputs;
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
home.username = "erwin";
|
||||
home.homeDirectory = "/home/erwin";
|
||||
home.sessionVariables = {
|
||||
EDITOR = "${pkgs.neovim}/bin/neovim";
|
||||
};
|
||||
|
||||
home.stateVersion = "23.05";
|
||||
|
||||
eboskma = {
|
||||
programs = {
|
||||
alacritty.enable = true;
|
||||
|
@ -48,28 +37,38 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs;
|
||||
[
|
||||
atool
|
||||
bottom
|
||||
falkon
|
||||
fd
|
||||
gnome.nautilus
|
||||
imagemagick
|
||||
imv
|
||||
iotop
|
||||
libnotify
|
||||
mpv
|
||||
nordzy-cursor-theme
|
||||
quintom-cursor-theme
|
||||
procs
|
||||
ripgrep
|
||||
units
|
||||
unzip
|
||||
xdg-utils
|
||||
wl-clipboard
|
||||
zeal
|
||||
];
|
||||
home = {
|
||||
username = "erwin";
|
||||
homeDirectory = "/home/erwin";
|
||||
sessionVariables = {
|
||||
EDITOR = "${pkgs.neovim}/bin/neovim";
|
||||
};
|
||||
|
||||
stateVersion = "23.05";
|
||||
|
||||
packages = with pkgs;
|
||||
[
|
||||
atool
|
||||
bottom
|
||||
falkon
|
||||
fd
|
||||
gnome.nautilus
|
||||
imagemagick
|
||||
imv
|
||||
iotop
|
||||
libnotify
|
||||
mpv
|
||||
nordzy-cursor-theme
|
||||
quintom-cursor-theme
|
||||
procs
|
||||
ripgrep
|
||||
units
|
||||
unzip
|
||||
xdg-utils
|
||||
wl-clipboard
|
||||
zeal
|
||||
];
|
||||
};
|
||||
|
||||
xdg = {
|
||||
enable = true;
|
||||
|
@ -138,6 +137,11 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
home-manager.enable = true;
|
||||
command-not-found.enable = true;
|
||||
};
|
||||
|
||||
imports = [
|
||||
../../modules/options
|
||||
] ++ (map (mod: (../../home-manager/modules + "/${mod}")) (builtins.attrNames (builtins.readDir ../../home-manager/modules)));
|
||||
|
|
|
@ -12,19 +12,20 @@ in
|
|||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
||||
# Register a v4l2loopback device at boot
|
||||
boot.kernelModules = [
|
||||
"v4l2loopback"
|
||||
];
|
||||
|
||||
boot.extraModprobeConfig = ''
|
||||
options v4l2loopback max_buffers=2
|
||||
options v4l2loopback exclusive_caps=1
|
||||
options v4l2loopback video_nr=10
|
||||
options v4l2loopback card_label="VirtualCam"
|
||||
'';
|
||||
boot = {
|
||||
extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
||||
# Register a v4l2loopback device at boot
|
||||
kernelModules = [
|
||||
"v4l2loopback"
|
||||
];
|
||||
|
||||
extraModprobeConfig = ''
|
||||
options v4l2loopback max_buffers=2
|
||||
options v4l2loopback exclusive_caps=1
|
||||
options v4l2loopback video_nr=10
|
||||
options v4l2loopback card_label="VirtualCam"
|
||||
'';
|
||||
};
|
||||
environment.systemPackages = with pkgs; [ backscrub ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -93,7 +93,7 @@ in
|
|||
};
|
||||
|
||||
services.udev = {
|
||||
packages = [ ] ++ (optional cfg.udev-rules.qmk qmkUdevRules)
|
||||
packages = (optional cfg.udev-rules.qmk qmkUdevRules)
|
||||
++ (optional cfg.udev-rules.probe-rs probersRules)
|
||||
++ (optional cfg.udev-rules.blink1 blink1Rules)
|
||||
++ (optional cfg.udev-rules.picotool picotoolRules)
|
||||
|
|
|
@ -45,8 +45,7 @@ in
|
|||
group = "greeter";
|
||||
};
|
||||
"greetd/environments" = {
|
||||
text = concatStringsSep "\n" ([ ]
|
||||
++ (optional cfg.sway "${pkgs.sway}/bin/sway")
|
||||
text = concatStringsSep "\n" ((optional cfg.sway "${pkgs.sway}/bin/sway")
|
||||
++ [ "${pkgs.bash}/bin/bash" ]);
|
||||
user = "greeter";
|
||||
group = "greeter";
|
||||
|
|
|
@ -7,166 +7,168 @@ in
|
|||
options.eboskma.klipper = { enable = mkEnableOption "klipper"; };
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.klipper = {
|
||||
enable = true;
|
||||
firmwares = {
|
||||
mcu = {
|
||||
enable = true;
|
||||
configFile = ./firmware-config;
|
||||
serial = "/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A600KWST-if00-port0";
|
||||
services = {
|
||||
klipper = {
|
||||
enable = true;
|
||||
firmwares = {
|
||||
mcu = {
|
||||
enable = true;
|
||||
configFile = ./firmware-config;
|
||||
serial = "/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A600KWST-if00-port0";
|
||||
};
|
||||
};
|
||||
|
||||
settings = {
|
||||
stepper_x = {
|
||||
step_pin = "PA3";
|
||||
dir_pin = "!PA1";
|
||||
enabe_pin = "!PA5";
|
||||
rotation_distance = 40;
|
||||
microsteps = 16;
|
||||
endstop_pin = "^PA0";
|
||||
position_min = -10;
|
||||
position_endstop = -10;
|
||||
position_max = 195;
|
||||
homing_speed = 50;
|
||||
homing_retract_dist = 5;
|
||||
};
|
||||
stepper_y = {
|
||||
step_pin = "PC6";
|
||||
dir_pin = "!PC4";
|
||||
enabe_pin = "!PA7";
|
||||
rotation_distance = 40;
|
||||
microsteps = 16;
|
||||
endstop_pin = "^PA4";
|
||||
position_min = 0;
|
||||
position_endstop = 0;
|
||||
position_max = 200;
|
||||
homing_speed = 50;
|
||||
homing_retract_dist = 5;
|
||||
};
|
||||
stepper_z = {
|
||||
step_pin = "PC0";
|
||||
dir_pin = "PG2";
|
||||
enabe_pin = "!PC2";
|
||||
rotation_distance = 2;
|
||||
microsteps = 16;
|
||||
endstop_pin = "^PC7";
|
||||
position_min = 0;
|
||||
position_endstop = 0;
|
||||
position_max = 180;
|
||||
homing_speed = 5;
|
||||
homing_retract_dist = 5;
|
||||
};
|
||||
|
||||
extruder = {
|
||||
step_pin = "PL6";
|
||||
dir_pin = "!PL4";
|
||||
enable_pin = "!PG0";
|
||||
rotation_distance = 34.043;
|
||||
microsteps = 16;
|
||||
nozzle_diameter = 0.400;
|
||||
filament_diameter = 1.75;
|
||||
max_extrude_only_distance = 150;
|
||||
heater_pin = "PE4";
|
||||
sensor_type = "EPCOS 100K B57560G104F";
|
||||
sensor_pin = "PK0";
|
||||
control = "pid";
|
||||
pid_Kp = 12.33;
|
||||
pid_Ki = 0.51;
|
||||
pid_Kd = 74.50;
|
||||
min_temp = 0;
|
||||
max_temp = 250;
|
||||
max_extrude_cross_section = 5;
|
||||
};
|
||||
|
||||
heater_bed = {
|
||||
heater_pin = "PG5";
|
||||
sensor_type = "ATC Semitec 104GT-2";
|
||||
sensor_pin = "PK2";
|
||||
control = "pid";
|
||||
pid_Kp = 234.88;
|
||||
pid_Ki = 42.79;
|
||||
pid_Kd = 322.28;
|
||||
min_temp = 0;
|
||||
max_temp = 120;
|
||||
};
|
||||
|
||||
bed_screws = {
|
||||
screw1 = "20,7";
|
||||
screw2 = "190,7";
|
||||
screw3 = "190,180";
|
||||
screw4 = "20,180";
|
||||
};
|
||||
|
||||
fan.pin = "PH4";
|
||||
|
||||
mcu.serial = config.services.klipper.firmwares.mcu.serial;
|
||||
|
||||
printer = {
|
||||
kinematics = "cartesian";
|
||||
max_velocity = 400;
|
||||
max_accel = 5000;
|
||||
max_z_velocity = 5;
|
||||
max_z_accel = 75;
|
||||
};
|
||||
|
||||
display = {
|
||||
lcd_type = "hd44780";
|
||||
rs_pin = "PD1";
|
||||
e_pin = "PH0";
|
||||
d4_pin = "PH1";
|
||||
d5_pin = "PD0";
|
||||
d6_pin = "PE3";
|
||||
d7_pin = "PH3";
|
||||
encoder_pins = "PL7,PG1";
|
||||
click_pin = "^!PD2";
|
||||
};
|
||||
|
||||
# These are necessary for Fluidd
|
||||
virtual_sdcard = {
|
||||
path = "/var/lib/klipper/gcode_files";
|
||||
};
|
||||
|
||||
display_status = { };
|
||||
|
||||
pause_resume = { };
|
||||
} // (import ./klipper-macros.nix);
|
||||
};
|
||||
|
||||
moonraker = {
|
||||
enable = true;
|
||||
allowSystemControl = true;
|
||||
settings = {
|
||||
authorization = {
|
||||
cors_domains = [
|
||||
"*.local"
|
||||
"*://my.mainsail.xyz"
|
||||
];
|
||||
|
||||
trusted_clients = [
|
||||
"10.0.0.0/24"
|
||||
"10.1.0.0/24"
|
||||
"100.64.0.0/16"
|
||||
"127.0.0.0/8"
|
||||
"fe80::/10"
|
||||
"::1/128"
|
||||
];
|
||||
};
|
||||
|
||||
history = { };
|
||||
|
||||
octoprint_compat = {
|
||||
enable_ufp = false;
|
||||
};
|
||||
|
||||
zeroconf = { };
|
||||
};
|
||||
};
|
||||
|
||||
settings = {
|
||||
stepper_x = {
|
||||
step_pin = "PA3";
|
||||
dir_pin = "!PA1";
|
||||
enabe_pin = "!PA5";
|
||||
rotation_distance = 40;
|
||||
microsteps = 16;
|
||||
endstop_pin = "^PA0";
|
||||
position_min = -10;
|
||||
position_endstop = -10;
|
||||
position_max = 195;
|
||||
homing_speed = 50;
|
||||
homing_retract_dist = 5;
|
||||
};
|
||||
stepper_y = {
|
||||
step_pin = "PC6";
|
||||
dir_pin = "!PC4";
|
||||
enabe_pin = "!PA7";
|
||||
rotation_distance = 40;
|
||||
microsteps = 16;
|
||||
endstop_pin = "^PA4";
|
||||
position_min = 0;
|
||||
position_endstop = 0;
|
||||
position_max = 200;
|
||||
homing_speed = 50;
|
||||
homing_retract_dist = 5;
|
||||
};
|
||||
stepper_z = {
|
||||
step_pin = "PC0";
|
||||
dir_pin = "PG2";
|
||||
enabe_pin = "!PC2";
|
||||
rotation_distance = 2;
|
||||
microsteps = 16;
|
||||
endstop_pin = "^PC7";
|
||||
position_min = 0;
|
||||
position_endstop = 0;
|
||||
position_max = 180;
|
||||
homing_speed = 5;
|
||||
homing_retract_dist = 5;
|
||||
};
|
||||
|
||||
extruder = {
|
||||
step_pin = "PL6";
|
||||
dir_pin = "!PL4";
|
||||
enable_pin = "!PG0";
|
||||
rotation_distance = 34.043;
|
||||
microsteps = 16;
|
||||
nozzle_diameter = 0.400;
|
||||
filament_diameter = 1.75;
|
||||
max_extrude_only_distance = 150;
|
||||
heater_pin = "PE4";
|
||||
sensor_type = "EPCOS 100K B57560G104F";
|
||||
sensor_pin = "PK0";
|
||||
control = "pid";
|
||||
pid_Kp = 12.33;
|
||||
pid_Ki = 0.51;
|
||||
pid_Kd = 74.50;
|
||||
min_temp = 0;
|
||||
max_temp = 250;
|
||||
max_extrude_cross_section = 5;
|
||||
};
|
||||
|
||||
heater_bed = {
|
||||
heater_pin = "PG5";
|
||||
sensor_type = "ATC Semitec 104GT-2";
|
||||
sensor_pin = "PK2";
|
||||
control = "pid";
|
||||
pid_Kp = 234.88;
|
||||
pid_Ki = 42.79;
|
||||
pid_Kd = 322.28;
|
||||
min_temp = 0;
|
||||
max_temp = 120;
|
||||
};
|
||||
|
||||
bed_screws = {
|
||||
screw1 = "20,7";
|
||||
screw2 = "190,7";
|
||||
screw3 = "190,180";
|
||||
screw4 = "20,180";
|
||||
};
|
||||
|
||||
fan.pin = "PH4";
|
||||
|
||||
mcu.serial = config.services.klipper.firmwares.mcu.serial;
|
||||
|
||||
printer = {
|
||||
kinematics = "cartesian";
|
||||
max_velocity = 400;
|
||||
max_accel = 5000;
|
||||
max_z_velocity = 5;
|
||||
max_z_accel = 75;
|
||||
};
|
||||
|
||||
display = {
|
||||
lcd_type = "hd44780";
|
||||
rs_pin = "PD1";
|
||||
e_pin = "PH0";
|
||||
d4_pin = "PH1";
|
||||
d5_pin = "PD0";
|
||||
d6_pin = "PE3";
|
||||
d7_pin = "PH3";
|
||||
encoder_pins = "PL7,PG1";
|
||||
click_pin = "^!PD2";
|
||||
};
|
||||
|
||||
# These are necessary for Fluidd
|
||||
virtual_sdcard = {
|
||||
path = "/var/lib/klipper/gcode_files";
|
||||
};
|
||||
|
||||
display_status = { };
|
||||
|
||||
pause_resume = { };
|
||||
} // (import ./klipper-macros.nix);
|
||||
};
|
||||
|
||||
services.moonraker = {
|
||||
enable = true;
|
||||
allowSystemControl = true;
|
||||
settings = {
|
||||
authorization = {
|
||||
cors_domains = [
|
||||
"*.local"
|
||||
"*://my.mainsail.xyz"
|
||||
];
|
||||
|
||||
trusted_clients = [
|
||||
"10.0.0.0/24"
|
||||
"10.1.0.0/24"
|
||||
"100.64.0.0/16"
|
||||
"127.0.0.0/8"
|
||||
"fe80::/10"
|
||||
"::1/128"
|
||||
];
|
||||
};
|
||||
|
||||
history = { };
|
||||
|
||||
octoprint_compat = {
|
||||
enable_ufp = false;
|
||||
};
|
||||
|
||||
zeroconf = { };
|
||||
mainsail = {
|
||||
enable = true;
|
||||
hostName = config.networking.hostName;
|
||||
};
|
||||
};
|
||||
|
||||
services.mainsail = {
|
||||
enable = true;
|
||||
hostName = config.networking.hostName;
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
@ -9,22 +9,6 @@ in
|
|||
home-manager.users.erwin = {
|
||||
_module.args.flake-inputs = inputs;
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
services.blueman-applet.enable = bt.enable;
|
||||
|
||||
services.gnome-keyring = {
|
||||
enable = true;
|
||||
components = [ "pkcs11" "ssh" "secrets" ];
|
||||
};
|
||||
|
||||
home.username = "erwin";
|
||||
home.homeDirectory = "/home/erwin";
|
||||
home.sessionVariables = { };
|
||||
|
||||
home.stateVersion = "21.11";
|
||||
|
||||
eboskma = {
|
||||
programs = {
|
||||
alacritty.enable = false;
|
||||
|
@ -132,57 +116,65 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs;
|
||||
[
|
||||
ardour
|
||||
atool
|
||||
bitwarden
|
||||
blink1-tool
|
||||
bottom
|
||||
dbeaver
|
||||
easyeffects
|
||||
fd
|
||||
ffmpeg_5-full
|
||||
freecad
|
||||
gnome.nautilus
|
||||
helvum
|
||||
horizon-eda
|
||||
imagemagick
|
||||
imv
|
||||
iotop
|
||||
(jetbrains.clion.override { jdk = pkgs.jetbrains.jdk; })
|
||||
kicad
|
||||
larynx
|
||||
libnotify
|
||||
libreoffice-fresh
|
||||
minio-client
|
||||
mpv
|
||||
nomachine-client
|
||||
nordzy-cursor-theme
|
||||
(noson.overrideAttrs (_: { qtWrapperArgs = ''--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ pkgs.libpulseaudio ]}''; }))
|
||||
pamedia
|
||||
pass
|
||||
pavucontrol
|
||||
povray
|
||||
quintom-cursor-theme
|
||||
procs
|
||||
prusa-slicer
|
||||
qgis
|
||||
ripgrep
|
||||
scid-vs-pc
|
||||
signal-desktop
|
||||
solo2-cli
|
||||
steam
|
||||
steamcmd
|
||||
steam-tui
|
||||
# super-slicer-latest
|
||||
units
|
||||
unzip
|
||||
xdg-utils
|
||||
wl-clipboard
|
||||
zeal
|
||||
]
|
||||
++ (with gst_all_1; [ gstreamer gstreamer.dev gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-vaapi ]);
|
||||
home = {
|
||||
username = "erwin";
|
||||
homeDirectory = "/home/erwin";
|
||||
sessionVariables = { };
|
||||
|
||||
stateVersion = "21.11";
|
||||
|
||||
packages = with pkgs;
|
||||
[
|
||||
ardour
|
||||
atool
|
||||
bitwarden
|
||||
blink1-tool
|
||||
bottom
|
||||
dbeaver
|
||||
easyeffects
|
||||
fd
|
||||
ffmpeg_5-full
|
||||
freecad
|
||||
gnome.nautilus
|
||||
helvum
|
||||
horizon-eda
|
||||
imagemagick
|
||||
imv
|
||||
iotop
|
||||
(jetbrains.clion.override { jdk = pkgs.jetbrains.jdk; })
|
||||
kicad
|
||||
larynx
|
||||
libnotify
|
||||
libreoffice-fresh
|
||||
minio-client
|
||||
mpv
|
||||
nomachine-client
|
||||
nordzy-cursor-theme
|
||||
(noson.overrideAttrs (_: { qtWrapperArgs = ''--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ pkgs.libpulseaudio ]}''; }))
|
||||
pamedia
|
||||
pass
|
||||
pavucontrol
|
||||
povray
|
||||
quintom-cursor-theme
|
||||
procs
|
||||
prusa-slicer
|
||||
qgis
|
||||
ripgrep
|
||||
scid-vs-pc
|
||||
signal-desktop
|
||||
solo2-cli
|
||||
steam
|
||||
steamcmd
|
||||
steam-tui
|
||||
# super-slicer-latest
|
||||
units
|
||||
unzip
|
||||
xdg-utils
|
||||
wl-clipboard
|
||||
zeal
|
||||
]
|
||||
++ (with gst_all_1; [ gstreamer gstreamer.dev gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-vaapi ]);
|
||||
};
|
||||
|
||||
xdg = {
|
||||
enable = true;
|
||||
|
@ -251,20 +243,34 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
services.udiskie = {
|
||||
enable = true;
|
||||
tray = "auto";
|
||||
notify = true;
|
||||
settings = {
|
||||
program_options = {
|
||||
menu = "nested";
|
||||
programs = {
|
||||
home-manager.enable = true;
|
||||
command-not-found.enable = true;
|
||||
};
|
||||
|
||||
services = {
|
||||
blueman-applet.enable = bt.enable;
|
||||
|
||||
gnome-keyring = {
|
||||
enable = true;
|
||||
components = [ "pkcs11" "ssh" "secrets" ];
|
||||
};
|
||||
|
||||
udiskie = {
|
||||
enable = true;
|
||||
tray = "auto";
|
||||
notify = true;
|
||||
settings = {
|
||||
program_options = {
|
||||
menu = "nested";
|
||||
};
|
||||
device_config = [
|
||||
{
|
||||
device_file = "/dev/loop*";
|
||||
ignore = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
device_config = [
|
||||
{
|
||||
device_file = "/dev/loop*";
|
||||
ignore = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -277,28 +283,31 @@ in
|
|||
# OBS control websocket
|
||||
networking.firewall.allowedTCPPorts = [ 4455 ];
|
||||
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
package = pkgs.steam.override {
|
||||
extraPkgs = sp: with sp; [ gamescope ];
|
||||
programs = {
|
||||
steam = {
|
||||
enable = true;
|
||||
package = pkgs.steam.override {
|
||||
extraPkgs = sp: with sp; [ gamescope ];
|
||||
};
|
||||
};
|
||||
gamescope = {
|
||||
enable = true;
|
||||
args = [
|
||||
"--rt"
|
||||
"--fullscreen"
|
||||
];
|
||||
};
|
||||
bandwhich.enable = true;
|
||||
noisetorch.enable = true;
|
||||
|
||||
wireshark = {
|
||||
enable = true;
|
||||
package = pkgs.wireshark;
|
||||
};
|
||||
};
|
||||
programs.gamescope = {
|
||||
enable = true;
|
||||
args = [
|
||||
"--rt"
|
||||
"--fullscreen"
|
||||
];
|
||||
};
|
||||
programs.bandwhich.enable = true;
|
||||
programs.noisetorch.enable = true;
|
||||
|
||||
services.ddccontrol.enable = true;
|
||||
|
||||
programs.wireshark = {
|
||||
enable = true;
|
||||
package = pkgs.wireshark;
|
||||
};
|
||||
users.groups.wireshark.members = [ "erwin" ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -8,16 +8,8 @@ in
|
|||
home-manager.users.erwin = {
|
||||
_module.args.flake-inputs = inputs;
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
home.username = "erwin";
|
||||
home.homeDirectory = "/home/erwin";
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
home.stateVersion = "23.05";
|
||||
|
||||
eboskma = {
|
||||
programs = {
|
||||
bat.enable = true;
|
||||
|
@ -33,16 +25,30 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
atool
|
||||
bottom
|
||||
btop
|
||||
fd
|
||||
iotop
|
||||
procs
|
||||
ripgrep
|
||||
units
|
||||
];
|
||||
|
||||
programs = {
|
||||
home-manager.enable = true;
|
||||
command-not-found.enable = true;
|
||||
};
|
||||
|
||||
home = {
|
||||
username = "erwin";
|
||||
homeDirectory = "/home/erwin";
|
||||
|
||||
stateVersion = "23.05";
|
||||
|
||||
packages = with pkgs; [
|
||||
atool
|
||||
bottom
|
||||
btop
|
||||
fd
|
||||
iotop
|
||||
procs
|
||||
ripgrep
|
||||
units
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
xdg = {
|
||||
enable = true;
|
||||
|
|
|
@ -24,20 +24,6 @@ in
|
|||
home-manager.users.erwin = {
|
||||
_module.args.flake-inputs = inputs;
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
services.gnome-keyring = {
|
||||
enable = true;
|
||||
components = [ "pkcs11" "ssh" "secrets" ];
|
||||
};
|
||||
|
||||
home.username = "erwin";
|
||||
home.homeDirectory = "/home/erwin";
|
||||
home.sessionVariables = {
|
||||
# EDITOR = "${config.home-manager.users.erwin.eboskma.programs.emacs.package}/bin/emacsclient -c";
|
||||
};
|
||||
|
||||
eboskma = {
|
||||
var.workSystem = true;
|
||||
programs = {
|
||||
|
@ -130,50 +116,75 @@ in
|
|||
xbanish.enable = true;
|
||||
};
|
||||
};
|
||||
programs.home-manager.enable = true;
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
home.packages = with pkgs; [
|
||||
atool
|
||||
bitwarden
|
||||
blink1-tool
|
||||
bottom
|
||||
cider
|
||||
dbeaver
|
||||
dconf
|
||||
fd
|
||||
ffmpeg_5-full
|
||||
gnome.nautilus
|
||||
icemon
|
||||
imagemagick
|
||||
imv
|
||||
iotop
|
||||
(jetbrains.clion.override { jdk = pkgs.jetbrains.jdk; })
|
||||
libnotify
|
||||
libreoffice-fresh
|
||||
minio-client
|
||||
mpv
|
||||
nordzy-cursor-theme
|
||||
pamedia
|
||||
pass
|
||||
quintom-cursor-theme
|
||||
procs
|
||||
qgis
|
||||
recursive
|
||||
ripgrep
|
||||
s-tui
|
||||
solo2-cli
|
||||
stress
|
||||
units
|
||||
unzip
|
||||
xdg-utils
|
||||
xkb-switch
|
||||
wine
|
||||
zathura
|
||||
zeal
|
||||
services.gnome-keyring = {
|
||||
enable = true;
|
||||
components = [ "pkcs11" "ssh" "secrets" ];
|
||||
};
|
||||
|
||||
home = {
|
||||
username = "erwin";
|
||||
homeDirectory = "/home/erwin";
|
||||
sessionVariables = {
|
||||
# EDITOR = "${config.home-manager.users.erwin.eboskma.programs.emacs.package}/bin/emacsclient -c";
|
||||
};
|
||||
stateVersion = "22.11";
|
||||
|
||||
|
||||
packages = with pkgs; [
|
||||
atool
|
||||
bitwarden
|
||||
blink1-tool
|
||||
bottom
|
||||
cider
|
||||
dbeaver
|
||||
dconf
|
||||
fd
|
||||
ffmpeg_5-full
|
||||
gnome.nautilus
|
||||
icemon
|
||||
imagemagick
|
||||
imv
|
||||
iotop
|
||||
(jetbrains.clion.override { jdk = pkgs.jetbrains.jdk; })
|
||||
libnotify
|
||||
libreoffice-fresh
|
||||
minio-client
|
||||
mpv
|
||||
nordzy-cursor-theme
|
||||
pamedia
|
||||
pass
|
||||
quintom-cursor-theme
|
||||
procs
|
||||
qgis
|
||||
recursive
|
||||
ripgrep
|
||||
s-tui
|
||||
solo2-cli
|
||||
stress
|
||||
units
|
||||
unzip
|
||||
xdg-utils
|
||||
xkb-switch
|
||||
wine
|
||||
zathura
|
||||
zeal
|
||||
|
||||
localSessionScript
|
||||
remoteSessionScript
|
||||
]
|
||||
++ (with gst_all_1; [ gstreamer gstreamer.dev gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-vaapi ]);
|
||||
|
||||
pointerCursor = {
|
||||
name = "elementary";
|
||||
package = pkgs.pantheon.elementary-gtk-theme;
|
||||
gtk.enable = true;
|
||||
x11.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
localSessionScript
|
||||
remoteSessionScript
|
||||
]
|
||||
++ (with gst_all_1; [ gstreamer gstreamer.dev gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-vaapi ]);
|
||||
|
||||
xdg = {
|
||||
enable = true;
|
||||
|
@ -244,51 +255,47 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
home.pointerCursor = {
|
||||
name = "elementary";
|
||||
package = pkgs.pantheon.elementary-gtk-theme;
|
||||
gtk.enable = true;
|
||||
x11.enable = true;
|
||||
};
|
||||
|
||||
imports = [
|
||||
../../modules/options
|
||||
] ++ (map (mod: (../../home-manager/modules + "/${mod}")) (builtins.attrNames (builtins.readDir ../../home-manager/modules)));
|
||||
|
||||
home.stateVersion = "22.11";
|
||||
};
|
||||
|
||||
services.teamviewer.enable = true;
|
||||
services = {
|
||||
teamviewer.enable = true;
|
||||
|
||||
udev.packages = with pkgs; [
|
||||
headsetcontrol
|
||||
];
|
||||
|
||||
xserver = {
|
||||
# layout = "us,us";
|
||||
# xkbVariant = "colemak,";
|
||||
# xkbModel = "pc105";
|
||||
xkbOptions = "eurosign:5,lv5:ralt_switch,lv3:rwin_switch";
|
||||
upscaleDefaultCursor = false;
|
||||
exportConfiguration = true;
|
||||
|
||||
windowManager.i3 = {
|
||||
enable = true;
|
||||
package = pkgs.i3-gaps;
|
||||
extraPackages = with pkgs; [ i3lock-color ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
bandwhich.enable = true;
|
||||
|
||||
wireshark = {
|
||||
enable = true;
|
||||
package = pkgs.wireshark;
|
||||
};
|
||||
};
|
||||
users.groups.wireshark.members = [ "erwin" ];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
headsetcontrol
|
||||
];
|
||||
|
||||
services.udev.packages = with pkgs; [
|
||||
headsetcontrol
|
||||
];
|
||||
|
||||
services.xserver = {
|
||||
# layout = "us,us";
|
||||
# xkbVariant = "colemak,";
|
||||
# xkbModel = "pc105";
|
||||
xkbOptions = "eurosign:5,lv5:ralt_switch,lv3:rwin_switch";
|
||||
upscaleDefaultCursor = false;
|
||||
exportConfiguration = true;
|
||||
|
||||
windowManager.i3 = {
|
||||
enable = true;
|
||||
package = pkgs.i3-gaps;
|
||||
extraPackages = with pkgs; [ i3lock-color ];
|
||||
};
|
||||
};
|
||||
|
||||
programs.bandwhich.enable = true;
|
||||
|
||||
programs.wireshark = {
|
||||
enable = true;
|
||||
package = pkgs.wireshark;
|
||||
};
|
||||
users.groups.wireshark.members = [ "erwin" ];
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue