initial attempt at nfs

This commit is contained in:
Chris Kruining 2025-07-09 23:05:08 +02:00
parent ee4d1eb158
commit 0fa527717e
Signed by: chris
SSH key fingerprint: SHA256:nG82MUfuVdRVyCKKWqhY+pCrbz9nbX6uzUns4RKa1Pg
11 changed files with 73 additions and 38 deletions

View file

@ -1,15 +1,24 @@
{ config, ... }:
{
fileSystems."/home/chris/games" = {
device = "/dev/disk/by-label/games";
fsType = "ext4";
fileSystems = {
"/home/chris/games" = {
device = "/dev/disk/by-label/games";
fsType = "ext4";
};
"/home/chris/data" = {
device = "/dev/disk/by-label/Data";
fsType = "ntfs-3g";
options = [ "rw" "uid=chris" ];
};
"/home/chris/media" = {
device = "ulmo:/";
fsType = "nfs";
};
};
fileSystems."/home/chris/data" = {
device = "/dev/disk/by-label/Data";
fsType = "ntfs-3g";
options = [ "rw" "uid=chris" ];
};
boot.supportedFilesystems = [ "nfs" ];
modules = {
system.audio.enable = true;

View file

@ -1,7 +1,5 @@
{ config, ... }:
{
imports = [ ./hardware.nix ];
config = {
fileSystems."/var/media" = {
device = "/dev/disk/by-label/data";
@ -9,16 +7,15 @@
};
modules = {
networking.ssh.enable = true;
networking = {
ssh.enable = true;
nfs.enable = true;
};
services = {
auth.enable = true;
media.enable = true;
nextcloud.enable = true;
games = {
# minecraft.enable = true;
};
};
root = {

View file

@ -1,4 +1,4 @@
{ config, lib, pkgs, modulesPath, ... }:
{ config, lib, modulesPath, ... }:
let
inherit (lib.modules) mkDefault;
in

View file

@ -207,7 +207,7 @@ in
];
powerdevil = {
AC = {
AC = {
powerButtonAction = "shutDown";
whenLaptopLidClosed = "doNothing";
@ -215,10 +215,11 @@ in
dimDisplay.enable = false;
turnOffDisplay = {
idleTimeout = "never";
idleTimeout = "never";
};
};
battery = {
};
battery = {
powerButtonAction = "shutDown";
whenLaptopLidClosed = "doNothing";
@ -226,10 +227,11 @@ in
dimDisplay.enable = false;
turnOffDisplay = {
idleTimeout = "never";
idleTimeout = "never";
};
};
lowBattery = {
};
lowBattery = {
powerButtonAction = "shutDown";
whenLaptopLidClosed = "doNothing";
@ -237,9 +239,9 @@ in
dimDisplay.enable = false;
turnOffDisplay = {
idleTimeout = "never";
};
idleTimeout = "never";
};
};
};
kscreenlocker = {

View file

@ -1,7 +1,6 @@
{ config, lib, pkgs, user, ... }:
let
inherit (lib.options) mkEnableOption;
inherit (lib.attrsets) attrValues;
inherit (lib.modules) mkIf;
in
{
@ -13,10 +12,7 @@ in
environment.sessionVariables.GITHUB_TOKEN = "$(cat /run/agenix/tokenGH)";
home-manager.users.${user} = {
home.packages = attrValues {
inherit (pkgs) lazygit;
# inherit (pkgs.gitAndTools) gh git-open git-crypt;
};
home.packages = with pkgs; [ lazygit lazyjj jujutsu ];
programs = {
zsh.initContent = ''

View file

@ -1,4 +1,4 @@
{ config, options, lib, pkgs, ... }:
{ ... }:
{
boot.loader = {
efi.canTouchEfiVariables = true;

View file

@ -11,6 +11,8 @@ in
};
config = mkIf cfg.enable {
services.desktopManager.plasma6.enable = true;
jovian = {
# devices = {
# steamdeck = {
@ -24,7 +26,7 @@ in
autoStart = true;
user = "chris";
updater.splash = "steamos";
desktopSession = "gamescope-wayland";
# desktopSession = "plasma";
};
steamos.useSteamOSConfig = true;
};

View file

@ -0,0 +1,22 @@
{ config, lib, ... }:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.modules.networking.nfs;
in
{
options.modules.networking.nfs = {
enable = mkEnableOption "Enable NFS";
};
config = mkIf cfg.enable {
networking.firewall.allowedTCPPorts = [ 2049 ];
services.nsf.server = {
enable = true;
exports = ''
/var/media manwe(rw,fsid=0,no_subtree_check)
'';
};
};
}

View file

@ -1,4 +1,4 @@
{ pkgs, options, config, lib, ... }:
{ pkgs, config, lib, ... }:
let
inherit (builtins) getEnv;
inherit (lib.modules) mkIf mkMerge;

View file

@ -1,6 +1,6 @@
{ config, lib, pkgs, ... }:
let
inherit (lib.modules) mkIf;
inherit (lib) mkIf;
user = "media";
group = "media";
@ -67,6 +67,11 @@ in
bazarr = serviceConf;
lidarr = serviceConf;
lanraragi = {
enable = true;
port = 6969;
};
jellyseerr = {
enable = true;
openFirewall = true;
@ -126,7 +131,7 @@ in
};
};
networking.firewall.allowedTCPPorts = [ 80 443 ];
networking.firewall.allowedTCPPorts = [ 80 443 6969 ];
modules.virtualisation.podman.enable = true;

View file

@ -14,12 +14,14 @@ in
};
config = mkIf cfg.enable {
environment.systemPackages = attrValues {
inherit (pkgs) easyeffects;
};
environment.systemPackages = with pkgs; [
# easyeffects
sof-firmware
];
security.rtkit.enable = true;
services.pulseaudio.enable = false;
services.pipewire = {
enable = true;
wireplumber.enable = true;