refactorings for homeserver
This commit is contained in:
@ -16,6 +16,7 @@
|
|||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
|
|
||||||
home-manager.users.alex = { pkgs, ... }: {
|
home-manager.users.alex = { pkgs, ... }: {
|
||||||
|
home.enableNixpkgsReleaseCheck = false;
|
||||||
home.packages = [
|
home.packages = [
|
||||||
pkgs.cryfs
|
pkgs.cryfs
|
||||||
];
|
];
|
||||||
@ -52,12 +53,6 @@
|
|||||||
|
|
||||||
matchBlocks."homeserver" = {
|
matchBlocks."homeserver" = {
|
||||||
hostname = "192.168.1.100";
|
hostname = "192.168.1.100";
|
||||||
# remoteForwards = [ {
|
|
||||||
# bind.address = "127.0.0.1";
|
|
||||||
# bind.port = 52698;
|
|
||||||
# host.address = "127.0.0.1";
|
|
||||||
# host.port = 52698;
|
|
||||||
# } ];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -21,8 +21,6 @@
|
|||||||
networking.useDHCP = false;
|
networking.useDHCP = false;
|
||||||
networking.interfaces.enp3s0.useDHCP = true;
|
networking.interfaces.enp3s0.useDHCP = true;
|
||||||
|
|
||||||
# List packages installed in system profile. To search, run:
|
|
||||||
# $ nix search wget
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
snapraid
|
snapraid
|
||||||
mergerfs
|
mergerfs
|
||||||
@ -33,7 +31,8 @@
|
|||||||
docker-compose
|
docker-compose
|
||||||
];
|
];
|
||||||
|
|
||||||
systemd.mounts = [
|
systemd = {
|
||||||
|
mounts = [
|
||||||
{
|
{
|
||||||
requires = [
|
requires = [
|
||||||
"mnt-disk1.mount"
|
"mnt-disk1.mount"
|
||||||
@ -53,18 +52,7 @@
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
powerManagement.powerUpCommands = ''
|
services.snapraid-sync = {
|
||||||
${pkgs.hdparm}/sbin/hdparm -S 241 /dev/disk/by-uuid/0301db98-264f-4b18-9423-15691063f73d
|
|
||||||
${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/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/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/6cce037c-d2d4-4940-bb69-6d2b84fd41aa
|
|
||||||
'';
|
|
||||||
|
|
||||||
systemd.services.snapraid-sync = {
|
|
||||||
#enable = true;
|
#enable = true;
|
||||||
description = "Snapraid Sync and Diff";
|
description = "Snapraid Sync and Diff";
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
@ -79,7 +67,7 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.timers.snapraid-sync = {
|
timers.snapraid-sync = {
|
||||||
#enable = true;
|
#enable = true;
|
||||||
wantedBy = ["timers.target"];
|
wantedBy = ["timers.target"];
|
||||||
timerConfig = {
|
timerConfig = {
|
||||||
@ -87,6 +75,18 @@
|
|||||||
# Unit = "snapraid-sync.service";
|
# Unit = "snapraid-sync.service";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
powerManagement.powerUpCommands = ''
|
||||||
|
${pkgs.hdparm}/sbin/hdparm -S 241 /dev/disk/by-uuid/0301db98-264f-4b18-9423-15691063f73d
|
||||||
|
${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/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/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/6cce037c-d2d4-4940-bb69-6d2b84fd41aa
|
||||||
|
'';
|
||||||
|
|
||||||
nixpkgs.config.packageOverrides = pkgs: {
|
nixpkgs.config.packageOverrides = pkgs: {
|
||||||
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
|
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
|
||||||
@ -110,15 +110,16 @@
|
|||||||
# };
|
# };
|
||||||
|
|
||||||
|
|
||||||
services.netdata.enable = true;
|
services = {
|
||||||
|
netdata.enable = true;
|
||||||
|
|
||||||
services.jellyfin = {
|
jellyfin = {
|
||||||
enable = true;
|
enable = true;
|
||||||
user = "alex";
|
user = "alex";
|
||||||
group = "users";
|
group = "users";
|
||||||
};
|
};
|
||||||
|
|
||||||
services.samba = {
|
samba = {
|
||||||
enable = true;
|
enable = true;
|
||||||
securityType = "user";
|
securityType = "user";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
@ -151,6 +152,7 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
security.sudo.extraRules = [ {
|
security.sudo.extraRules = [ {
|
||||||
users = [ "alex" ];
|
users = [ "alex" ];
|
||||||
|
Reference in New Issue
Block a user