initial attempt at nfs
This commit is contained in:
parent
ee4d1eb158
commit
0fa527717e
11 changed files with 73 additions and 38 deletions
|
@ -1,16 +1,25 @@
|
||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
{
|
{
|
||||||
fileSystems."/home/chris/games" = {
|
fileSystems = {
|
||||||
|
"/home/chris/games" = {
|
||||||
device = "/dev/disk/by-label/games";
|
device = "/dev/disk/by-label/games";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/home/chris/data" = {
|
"/home/chris/data" = {
|
||||||
device = "/dev/disk/by-label/Data";
|
device = "/dev/disk/by-label/Data";
|
||||||
fsType = "ntfs-3g";
|
fsType = "ntfs-3g";
|
||||||
options = [ "rw" "uid=chris" ];
|
options = [ "rw" "uid=chris" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
"/home/chris/media" = {
|
||||||
|
device = "ulmo:/";
|
||||||
|
fsType = "nfs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
boot.supportedFilesystems = [ "nfs" ];
|
||||||
|
|
||||||
modules = {
|
modules = {
|
||||||
system.audio.enable = true;
|
system.audio.enable = true;
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
{
|
{
|
||||||
imports = [ ./hardware.nix ];
|
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
fileSystems."/var/media" = {
|
fileSystems."/var/media" = {
|
||||||
device = "/dev/disk/by-label/data";
|
device = "/dev/disk/by-label/data";
|
||||||
|
@ -9,16 +7,15 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
modules = {
|
modules = {
|
||||||
networking.ssh.enable = true;
|
networking = {
|
||||||
|
ssh.enable = true;
|
||||||
|
nfs.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
auth.enable = true;
|
auth.enable = true;
|
||||||
media.enable = true;
|
media.enable = true;
|
||||||
nextcloud.enable = true;
|
nextcloud.enable = true;
|
||||||
|
|
||||||
games = {
|
|
||||||
# minecraft.enable = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
root = {
|
root = {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
{ config, lib, modulesPath, ... }:
|
||||||
let
|
let
|
||||||
inherit (lib.modules) mkDefault;
|
inherit (lib.modules) mkDefault;
|
||||||
in
|
in
|
||||||
|
|
|
@ -218,6 +218,7 @@ in
|
||||||
idleTimeout = "never";
|
idleTimeout = "never";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
battery = {
|
battery = {
|
||||||
powerButtonAction = "shutDown";
|
powerButtonAction = "shutDown";
|
||||||
whenLaptopLidClosed = "doNothing";
|
whenLaptopLidClosed = "doNothing";
|
||||||
|
@ -229,6 +230,7 @@ in
|
||||||
idleTimeout = "never";
|
idleTimeout = "never";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
lowBattery = {
|
lowBattery = {
|
||||||
powerButtonAction = "shutDown";
|
powerButtonAction = "shutDown";
|
||||||
whenLaptopLidClosed = "doNothing";
|
whenLaptopLidClosed = "doNothing";
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{ config, lib, pkgs, user, ... }:
|
{ config, lib, pkgs, user, ... }:
|
||||||
let
|
let
|
||||||
inherit (lib.options) mkEnableOption;
|
inherit (lib.options) mkEnableOption;
|
||||||
inherit (lib.attrsets) attrValues;
|
|
||||||
inherit (lib.modules) mkIf;
|
inherit (lib.modules) mkIf;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -13,10 +12,7 @@ in
|
||||||
environment.sessionVariables.GITHUB_TOKEN = "$(cat /run/agenix/tokenGH)";
|
environment.sessionVariables.GITHUB_TOKEN = "$(cat /run/agenix/tokenGH)";
|
||||||
|
|
||||||
home-manager.users.${user} = {
|
home-manager.users.${user} = {
|
||||||
home.packages = attrValues {
|
home.packages = with pkgs; [ lazygit lazyjj jujutsu ];
|
||||||
inherit (pkgs) lazygit;
|
|
||||||
# inherit (pkgs.gitAndTools) gh git-open git-crypt;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
zsh.initContent = ''
|
zsh.initContent = ''
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ config, options, lib, pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
boot.loader = {
|
boot.loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
|
|
|
@ -11,6 +11,8 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
|
||||||
jovian = {
|
jovian = {
|
||||||
# devices = {
|
# devices = {
|
||||||
# steamdeck = {
|
# steamdeck = {
|
||||||
|
@ -24,7 +26,7 @@ in
|
||||||
autoStart = true;
|
autoStart = true;
|
||||||
user = "chris";
|
user = "chris";
|
||||||
updater.splash = "steamos";
|
updater.splash = "steamos";
|
||||||
desktopSession = "gamescope-wayland";
|
# desktopSession = "plasma";
|
||||||
};
|
};
|
||||||
steamos.useSteamOSConfig = true;
|
steamos.useSteamOSConfig = true;
|
||||||
};
|
};
|
||||||
|
|
22
modules/system/networking/nsf.nix
Normal file
22
modules/system/networking/nsf.nix
Normal 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)
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, options, config, lib, ... }:
|
{ pkgs, config, lib, ... }:
|
||||||
let
|
let
|
||||||
inherit (builtins) getEnv;
|
inherit (builtins) getEnv;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
let
|
let
|
||||||
inherit (lib.modules) mkIf;
|
inherit (lib) mkIf;
|
||||||
|
|
||||||
user = "media";
|
user = "media";
|
||||||
group = "media";
|
group = "media";
|
||||||
|
@ -67,6 +67,11 @@ in
|
||||||
bazarr = serviceConf;
|
bazarr = serviceConf;
|
||||||
lidarr = serviceConf;
|
lidarr = serviceConf;
|
||||||
|
|
||||||
|
lanraragi = {
|
||||||
|
enable = true;
|
||||||
|
port = 6969;
|
||||||
|
};
|
||||||
|
|
||||||
jellyseerr = {
|
jellyseerr = {
|
||||||
enable = true;
|
enable = true;
|
||||||
openFirewall = true;
|
openFirewall = true;
|
||||||
|
@ -126,7 +131,7 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
networking.firewall.allowedTCPPorts = [ 80 443 6969 ];
|
||||||
|
|
||||||
modules.virtualisation.podman.enable = true;
|
modules.virtualisation.podman.enable = true;
|
||||||
|
|
||||||
|
|
|
@ -14,12 +14,14 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
environment.systemPackages = attrValues {
|
environment.systemPackages = with pkgs; [
|
||||||
inherit (pkgs) easyeffects;
|
# easyeffects
|
||||||
};
|
sof-firmware
|
||||||
|
];
|
||||||
|
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
|
services.pulseaudio.enable = false;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
wireplumber.enable = true;
|
wireplumber.enable = true;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue