fixed snapraid service

This commit is contained in:
Alexander Szczepanski
2021-06-20 23:45:33 +02:00
parent ab904d913d
commit 045bcbf79d

View File

@ -31,7 +31,6 @@
ohMyZsh = { ohMyZsh = {
enable = true; enable = true;
theme = "agnoster"; theme = "agnoster";
# theme = "powerlevel10k/powerlevel10k";
customPkgs = [ customPkgs = [
pkgs.zsh-autosuggestions pkgs.zsh-autosuggestions
pkgs.zsh-syntax-highlighting pkgs.zsh-syntax-highlighting
@ -54,7 +53,7 @@
defaultUserShell = pkgs.zsh; defaultUserShell = pkgs.zsh;
users.alex = { users.alex = {
isNormalUser = true; isNormalUser = true;
extraGroups = [ "wheel" "docker" ]; # Enable sudo for the user. extraGroups = [ "wheel" "docker" "render" ]; # Enable sudo for the user.
}; };
}; };
@ -95,10 +94,10 @@
${pkgs.hdparm}/sbin/hdparm -S 241 /dev/disk/by-uuid/3c4b5d00-43c0-48be-81b8-c2b3977e015b ${pkgs.hdparm}/sbin/hdparm -S 241 /dev/disk/by-uuid/3c4b5d00-43c0-48be-81b8-c2b3977e015b
${pkgs.hdparm}/sbin/hdparm -S 241 /dev/disk/by-uuid/3e1731d7-f17e-4f6d-9197-84e0492bf4ee ${pkgs.hdparm}/sbin/hdparm -S 241 /dev/disk/by-uuid/3e1731d7-f17e-4f6d-9197-84e0492bf4ee
${pkgs.hdparm}/sbin/hdparm -S 241 /dev/disk/by-uuid/6cce037c-d2d4-4940-bb69-6d2b84fd41aa ${pkgs.hdparm}/sbin/hdparm -S 241 /dev/disk/by-uuid/6cce037c-d2d4-4940-bb69-6d2b84fd41aa
${pkgs.hdparm}/sbin/hdparm -Y /dev/disk/by-uuid/0301db98-264f-4b18-9423-15691063f73d ${pkgs.hdparm}/sbin/hdparm -y /dev/disk/by-uuid/0301db98-264f-4b18-9423-15691063f73d
${pkgs.hdparm}/sbin/hdparm -Y /dev/disk/by-uuid/3c4b5d00-43c0-48be-81b8-c2b3977e015b ${pkgs.hdparm}/sbin/hdparm -y /dev/disk/by-uuid/3c4b5d00-43c0-48be-81b8-c2b3977e015b
${pkgs.hdparm}/sbin/hdparm -Y /dev/disk/by-uuid/3e1731d7-f17e-4f6d-9197-84e0492bf4ee ${pkgs.hdparm}/sbin/hdparm -y /dev/disk/by-uuid/3e1731d7-f17e-4f6d-9197-84e0492bf4ee
${pkgs.hdparm}/sbin/hdparm -Y /dev/disk/by-uuid/6cce037c-d2d4-4940-bb69-6d2b84fd41aa ${pkgs.hdparm}/sbin/hdparm -y /dev/disk/by-uuid/6cce037c-d2d4-4940-bb69-6d2b84fd41aa
''; '';
systemd.services.snapraid-sync = { systemd.services.snapraid-sync = {
@ -107,8 +106,13 @@
serviceConfig = { serviceConfig = {
Type = "oneshot"; Type = "oneshot";
User = "alex"; User = "alex";
ExecStart="/home/alex/snapraid-sync"; # ExecStart="/home/alex/snapraid-sync";
}; };
path = [pkgs.bash pkgs.snapraid pkgs.curl pkgs.smartmontools pkgs.hdparm];
script = ''
/home/alex/snapraid-sync
'';
}; };
systemd.timers.snapraid-sync = { systemd.timers.snapraid-sync = {
@ -120,6 +124,19 @@
}; };
}; };
nixpkgs.config.packageOverrides = pkgs: {
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
};
hardware.opengl = {
enable = true;
extraPackages = with pkgs; [
#intel-media-driver # LIBVA_DRIVER_NAME=iHD
vaapiIntel # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
vaapiVdpau
libvdpau-va-gl
];
};
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
# started in user sessions. # started in user sessions.
# programs.mtr.enable = true; # programs.mtr.enable = true;
@ -137,7 +154,11 @@
services.netdata.enable = true; services.netdata.enable = true;
services.jellyfin.enable = true; services.jellyfin = {
enable = true;
user = "alex";
group = "users";
};
services.samba = { services.samba = {
enable = true; enable = true;
@ -159,10 +180,34 @@
"read only" = "no"; "read only" = "no";
"guest ok" = "no"; "guest ok" = "no";
"create mask" = "0644"; "create mask" = "0644";
"directory mask" = "0755"; }; "directory mask" = "0755";
};
ssdstorage = {
path = "/mnt/ssdstorage";
browseable = "yes";
"read only" = "no";
"guest ok" = "no";
"create mask" = "0644";
"directory mask" = "0755";
};
}; };
}; };
security.sudo.extraRules = [ {
users = [ "alex" ];
commands = [ {
command = "${pkgs.hdparm}/bin/hdparm";
options = [ "SETENV" "NOPASSWD" ];
} ];
} {
users = [ "alex" ];
commands = [ {
command = "${pkgs.snapraid}/bin/snapraid";
options = [ "SETENV" "NOPASSWD" ];
} ];
}];
# Open ports in the firewall. # Open ports in the firewall.
# networking.firewall.enable = true; # networking.firewall.enable = true;
# networking.firewall.allowPing = true; # networking.firewall.allowPing = true;