This commit is contained in:
Peder Bergebakken Sundt 2025-02-06 09:57:29 +01:00
parent 70bfa90808
commit 023f521abf
12 changed files with 51 additions and 12 deletions

View File

@ -1,4 +1,4 @@
# via https://nixos.wiki/wiki/CUDA
# via https://wiki.nixos.org/wiki/CUDA
{
nix = {
settings = {

View File

@ -42,7 +42,7 @@ lib.mkMerge [
})
{
# https://nixos.wiki/wiki/Nvidia
# https://wiki.nixos.org/wiki/Nvidia
hardware.opengl.extraPackages = [
#pkgs.vaapiVdpau # added by nixos-hardware

View File

@ -22,7 +22,7 @@ lib.mkMerge [
# https://github.com/NixOS/nixpkgs/blob/nixos-22.11/pkgs/development/libraries/ffmpeg/generic.nix
# https://github.com/NixOS/nixpkgs/blob/nixos-22.11/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
# https://nixos.wiki/wiki/Accelerated_Video_Playback
# https://wiki.nixos.org/wiki/Accelerated_Video_Playback
nixpkgs.config.openglSupport = true; # why is this not set by hardware.opengl.enable ?
nixpkgs.config.vaapiSupport = true;

View File

@ -4,7 +4,7 @@
./common-share.nix
];
# https://nixos.wiki/wiki/Printing
# https://wiki.nixos.org/wiki/Printing
services.printing.enable = true;
#services.printing.drivers = with pkgs; [ foo2zjs foomatic-filters cups-filters ];
#services.printing.drivers = with pkgs; [ foo2zjs hplip foomatic-filters cups-filters ];

View File

@ -3,7 +3,7 @@
# Hydra
# Nix-based continuous build system
# https://github.com/NixOS/hydra
# https://nixos.wiki/wiki/Hydra
# https://wiki.nixos.org/wiki/Hydra
# sudo -u hydra hydra-create-user 'admin' --full-name '<NAME>' --email-address '<EMAIL>' --password-prompt --role admin
# https://blog.matejc.com/blogs/myblog/nixos-hydra-nginx
services.hydra = {

View File

@ -46,7 +46,7 @@ lib.mkIf (!config.virtualisation.isVmVariant)
proxyPass = "http://127.0.0.1:32400"; # TODO: make configurable
proxyWebsockets = true;
};
# from https://nixos.wiki/wiki/Plex
# from https://wiki.nixos.org/wiki/Plex
extraConfig = ''
#Some players don't reopen a socket and playback stops totally instead of resuming after an extended pause
send_timeout 100m;

View File

@ -0,0 +1,39 @@
{ config, options, pkgs, lib, ... }:
# https://wiki.nixos.org/wiki/NFS
# TODO: use tailscale if enabled
# TODO: wireguard/tailscale
# TODO: nfsv4 and idmapping
#boot.kernelParams = [ "nfs.nfs4_disable_idmapping=0" "nfsd.nfs4_disable_idmapping=0" ];
let
cfg = config.pbsds.nfs-lazy-mount;
in
{
options.pbsds.nfs-lazy-mount.enable = lib.mkEnableOption "nfs-lazy-mount";
options.pbsds.nfs-lazy-mount.nfsOptions = lib.mkOption {
type = with lib.types; listOf str;
default = [];
internal = true;
};
# same default as `fileSystems.<name>.options`
# https://search.nixos.org/options?channel=unstable&query=fileSystems.%3Cname%3E.options
# https://man.archlinux.org/man/core/util-linux/mount.8.en
config.pbsds.nfs-lazy-mount.nfsOptions = lib.mkMerge [
[ "defaults" ]
(lib.mkIf cfg.enable [
# lazy mount
"x-systemd.automount"
"noauto"
# disconnect after 10 minutes
"x-systemd.idle-timeout=600"
])
];
}

View File

@ -2,7 +2,7 @@
{
# https://openzfs.github.io/openzfs-docs/Getting%20Started/NixOS/index.html
# https://nixos.org/manual/nixos/stable/#sec-linux-zfs
# https://nixos.wiki/wiki/ZFS
# https://wiki.nixos.org/wiki/ZFS
# https://search.nixos.org/options?query=services.zfs
boot.kernelPackages = lib.mkForce pkgs.zfs.latestCompatibleLinuxPackages;

View File

@ -9,7 +9,7 @@ lib.mkIf (!config.virtualisation.isVmVariant)
# TODO: wg-common.nix
#wireguard fyrkat client
# https://nixos.wiki/wiki/WireGuard
# https://wiki.nixos.org/wiki/WireGuard
networking.firewall.allowedUDPPorts = [ config.networking.wireguard.interfaces."wg0".listenPort ];
networking.wireguard.interfaces."wg0" = {
#ips = [ "172.22.48.3/24" ]; # set per host!

View File

@ -1,7 +1,7 @@
{ config, pkgs, lib, ... }:
{
# https://nixos.wiki/wiki/Remote_Desktop
# https://wiki.nixos.org/wiki/Remote_Desktop
services.xrdp.enable = true;
services.xrdp.openFirewall = true; # TCP only
@ -9,7 +9,7 @@
services.xserver.virtualScreen = { x=1920; y=1080; }; # doesn't work?
services.xserver.tty = lib.mkDefault null;
# https://nixos.wiki/wiki/GNOME
# https://wiki.nixos.org/wiki/GNOME
#services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;

View File

@ -25,7 +25,7 @@
* [x] https://nix-community.org/community-builder/
# ricing
* [ ] [doas](https://github.com/jakehamilton/config/blob/579827c699d9c78bd42e73f543eafb05a0d6c374/modules/security/doas/default.nix)
* [ ] https://github.com/NixOS/nixpkgs/pull/266094 (see https://nixos.wiki/wiki/Cursor_Themes)
* [ ] https://github.com/NixOS/nixpkgs/pull/266094 (see https://wiki.nixos.org/wiki/Cursor_Themes)
# selfhosting
* [ ] hydra - perfect for CUDA and RISCV
* [ ] [avahi](https://github.com/jakehamilton/config/blob/579827c699d9c78bd42e73f543eafb05a0d6c374/modules/services/avahi/default.nix)

View File

@ -48,7 +48,7 @@ in
# dynamic-subs.lua
programs.mpv.config.sub-auto = "all";
#https://nixos.wiki/wiki/Accelerated_Video_Playback
#https://wiki.nixos.org/wiki/Accelerated_Video_Playback
programs.mpv.config.hwdec = "auto-safe";
programs.mpv.config.vo = "gpu";
programs.mpv.config.profile = "gpu-hq";