Resolved kwallet and dolphin SMB issues
This commit is contained in:
parent
27a59191e7
commit
4c0f716232
@ -9,6 +9,7 @@
|
||||
agenix,
|
||||
pkgs-unstable,
|
||||
pia,
|
||||
ghostty,
|
||||
...
|
||||
}:
|
||||
let
|
||||
@ -35,6 +36,8 @@ in
|
||||
./modules/users.nix
|
||||
./modules/wm.nix
|
||||
./modules/xdg.nix
|
||||
|
||||
# ./flakes/scribeVault.nix
|
||||
];
|
||||
|
||||
programs.hyprland = {
|
||||
@ -42,7 +45,7 @@ in
|
||||
xwayland.enable = true;
|
||||
# package = pkgs.hyprland;
|
||||
# package = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
# portalPackage = pkgs.xdg-desktop-portal-hyprland;
|
||||
portalPackage = pkgs.xdg-desktop-portal-hyprland;
|
||||
# portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
};
|
||||
|
||||
@ -81,8 +84,8 @@ in
|
||||
# ];
|
||||
|
||||
virtualisation.docker = {
|
||||
enable = false;
|
||||
enableNvidia = true;
|
||||
enable = true;
|
||||
# enableNvidia = true; depreciated
|
||||
rootless = {
|
||||
enable = true;
|
||||
setSocketVariable = true;
|
||||
@ -157,6 +160,27 @@ in
|
||||
enable = true;
|
||||
authUserPassFile = config.age.secrets.pia.path;
|
||||
};
|
||||
home-assistant = {
|
||||
extraPackages = python3Packages: with python3Packages; [
|
||||
pip
|
||||
pynvim # mopidy-tidal # Mopidy-WebSettings
|
||||
virtualenv setuptools wheel
|
||||
];
|
||||
};
|
||||
samba = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
package = pkgs.samba4Full;
|
||||
settings = {
|
||||
global = {
|
||||
security = "user";
|
||||
"server min protocol" = "SMB2_10";
|
||||
"client min protocol" = "SMB2_10";
|
||||
"server max protocol" = "SMB3_11";
|
||||
"client max protocol" = "SMB3_11";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# List packages installed in system profile. To search, run:
|
||||
@ -166,34 +190,47 @@ in
|
||||
flavor = "mocha";
|
||||
font = "Noto Sans";
|
||||
fontSize = "9";
|
||||
background = "${/home/wayne/Pictures/marvin.png}";
|
||||
# background = "${/home/wayne/Pictures/marvin.png}";
|
||||
loginBackground = true;
|
||||
# clockEnabled = true;
|
||||
})
|
||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||
wget git sshfs
|
||||
pciutils usbutils
|
||||
zsh
|
||||
zsh ghostty.packages.x86_64-linux.default
|
||||
|
||||
cryptsetup agenix.packages.x86_64-linux.default
|
||||
home-manager
|
||||
wpa_supplicant
|
||||
lynx
|
||||
nix-index nix-prefetch-scripts nix-prefetch
|
||||
docker_27 docker-compose
|
||||
docker_27 docker-compose compose2nix
|
||||
mongodb-compass mongosh
|
||||
|
||||
# direnv nix-direnv
|
||||
# xdg-desktop-portal-hyprland
|
||||
clinfo glxinfo vulkan-tools wayland-utils wl-clipboard
|
||||
kdePackages.kdeplasma-addons kdePackages.qtstyleplugin-kvantum kdePackages.full kdePackages.qtwebengine kdePackages.qtpositioning kdePackages.qtlocation
|
||||
kdePackages.ark plasma5Packages.kwallet-pam kdePackages.dolphin kdePackages.kwallet kdePackages.kwalletmanager kdePackages.konsole
|
||||
kdePackages.kdeplasma-addons kdePackages.qtstyleplugin-kvantum kdePackages.full kdePackages.qtwebengine
|
||||
kdePackages.qtpositioning kdePackages.qtlocation kdePackages.ark kdePackages.dolphin
|
||||
kdePackages.dolphin-plugins # kdePackages.kwallet kdePackages.kwalletmanager
|
||||
kdePackages.konsole
|
||||
kdePackages.qtwayland kdePackages.qtsvg kdePackages.kio kdePackages.kio-fuse kdePackages.kio-extras
|
||||
kdePackages.kdenetwork-filesharing
|
||||
kdePackages.kwallet kdePackages.kwalletmanager kdePackages.kwallet-pam
|
||||
# plasma5Packages.kwallet plasma5Packages.kwalletmanager plasma5Packages.kwallet-pam
|
||||
gtk2
|
||||
gnome-themes-extra
|
||||
|
||||
evtest input-remapper dbus uwsm # keyd
|
||||
egl-wayland
|
||||
cudaPackages.cudatoolkit # cudaPackages.cuda-samples
|
||||
cifs-utils mesa libGL udiskie
|
||||
cifs-utils mesa libGL udiskie samba
|
||||
glibc
|
||||
|
||||
libsForQt5.qtstyleplugin-kvantum
|
||||
# libsForQt5.qtstyleplugin-kvantum libsForQt5.qt5.qtwayland libsForQt5.kio-extras # libsForQt5.qt5.qtgraphicaleffects
|
||||
#kio-fuse
|
||||
catppuccin-sddm-corners
|
||||
sddm-astronaut
|
||||
# steam-run
|
||||
lxqt.pavucontrol-qt
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
{ config, ... }:
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
# Set your time zone.
|
||||
time.timeZone = "America/Los_Angeles";
|
||||
@ -32,6 +32,8 @@
|
||||
|
||||
GTK_USE_PORTAL = "1";
|
||||
QT_QPA_PLATFORM = "wayland;xcb";
|
||||
QT_QPA_PLATFORMTHEME = "qt6ct";
|
||||
# QT_STYLE_OVERRIDE = "cleanlooks";
|
||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||||
QT_AUTO_SCREEN_SCALE_FACTOR = "1";
|
||||
QT_SCALE_FACTOR_ROUNDING_POLICY = "RoundPreferFloor";
|
||||
@ -52,8 +54,8 @@
|
||||
# QT_LOGGING_RULES="*.debug=true";
|
||||
|
||||
# Stolen from Plasma
|
||||
KPACKAGE_DEP_RESOLVERS_PATH="/nix/store/219bis5qbxz1i66qgc0l8g8qr6nn7c5m-frameworkintegration-6.7.0/libexec/kf6/kpackagehandlers";
|
||||
QT_PLUGIN_PATH="/home/wayne/.nix-profile/lib/qt-5.15.15/plugins:/home/wayne/.nix-profile/lib/qt-6/plugins:/nix/profile/lib/qt-5.15.15/plugins:/nix/profile/lib/qt-6/plugins:/home/wayne/.local/state/nix/profile/lib/qt-5.15.15/plugins:/home/wayne/.local/state/nix/profile/lib/qt-6/plugins:/etc/profiles/per-user/wayne/lib/qt-5.15.15/plugins:/etc/profiles/per-user/wayne/lib/qt-6/plugins:/nix/var/nix/profiles/default/lib/qt-5.15.15/plugins:/nix/var/nix/profiles/default/lib/qt-6/plugins:/run/current-system/sw/lib/qt-5.15.15/plugins:/run/current-system/sw/lib/qt-6/plugins";
|
||||
# KPACKAGE_DEP_RESOLVERS_PATH="/nix/store/219bis5qbxz1i66qgc0l8g8qr6nn7c5m-frameworkintegration-6.7.0/libexec/kf6/kpackagehandlers";
|
||||
# QT_PLUGIN_PATH="/home/wayne/.nix-profile/lib/qt-5.15.15/plugins:/home/wayne/.nix-profile/lib/qt-6/plugins:/nix/profile/lib/qt-5.15.15/plugins:/nix/profile/lib/qt-6/plugins:/home/wayne/.local/state/nix/profile/lib/qt-5.15.15/plugins:/home/wayne/.local/state/nix/profile/lib/qt-6/plugins:/etc/profiles/per-user/wayne/lib/qt-5.15.15/plugins:/etc/profiles/per-user/wayne/lib/qt-6/plugins:/nix/var/nix/profiles/default/lib/qt-5.15.15/plugins:/nix/var/nix/profiles/default/lib/qt-6/plugins:/run/current-system/sw/lib/qt-5.15.15/plugins:/run/current-system/sw/lib/qt-6/plugins";
|
||||
};
|
||||
|
||||
# environment.etc = {
|
||||
|
||||
255
flake.lock
generated
255
flake.lock
generated
@ -8,11 +8,11 @@
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723293904,
|
||||
"narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=",
|
||||
"lastModified": 1736955230,
|
||||
"narHash": "sha256-uenf8fv2eG5bKM8C/UvFaiJMZ4IpUFaQxk9OH5t/1gA=",
|
||||
"owner": "ryantm",
|
||||
"repo": "agenix",
|
||||
"rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41",
|
||||
"rev": "e600439ec4c273cf11e06fe4d9d906fb98fa097c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -58,11 +58,11 @@
|
||||
"base16-vim": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1731949548,
|
||||
"narHash": "sha256-XIDexXM66sSh5j/x70e054BnUsviibUShW7XhbDGhYo=",
|
||||
"lastModified": 1740359818,
|
||||
"narHash": "sha256-Tbjclt9SnCMj+9Szk9M+xWZ6gbo14ylVT+YBvuzFadg=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "61165b1632409bd55e530f3dbdd4477f011cadc6",
|
||||
"rev": "4dcc9a77d7aa19c063f0df00865ef60b7e99c8bd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -96,11 +96,27 @@
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -131,6 +147,24 @@
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1726560853,
|
||||
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
|
||||
@ -161,6 +195,29 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"ghostty": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_2",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs-stable": "nixpkgs-stable",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"zig": "zig",
|
||||
"zig2nix": "zig2nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741594465,
|
||||
"narHash": "sha256-8a/QIgNwV8VGn8JIiACmVVEdue+U3juiMSAO1DEUTC4=",
|
||||
"owner": "ghostty-org",
|
||||
"repo": "ghostty",
|
||||
"rev": "95daca616db5c24d7bb37fd5a3ac2f8762bb4ead",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "ghostty-org",
|
||||
"repo": "ghostty",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -189,11 +246,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1733482664,
|
||||
"narHash": "sha256-ZD+h1fwvZs+Xvg46lzTWveAqyDe18h9m7wZnTIJfFZ4=",
|
||||
"lastModified": 1739757849,
|
||||
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "e38d3dd1d355a003cc63e8fe6ff66ef2257509ed",
|
||||
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -223,11 +280,11 @@
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1732661062,
|
||||
"narHash": "sha256-E8mk/P0wUpHXy7tDQqUzbpa9IJoN/DmA1a6iFBuXqgI=",
|
||||
"lastModified": 1741303672,
|
||||
"narHash": "sha256-eRKbKccBu3PK/oJpmUuLo+0v45d0SEjosE8tVsHbpeA=",
|
||||
"owner": "musnix",
|
||||
"repo": "musnix",
|
||||
"rev": "629dcc6010365cfd268702065c2f8149ae19ea02",
|
||||
"rev": "d56a15f30329f304151e4e05fa82264d127da934",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -286,13 +343,45 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1732014248,
|
||||
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||
"lastModified": 1738255539,
|
||||
"narHash": "sha256-hP2eOqhIO/OILW+3moNWO4GtdJFYCqAe9yJZgvlCoDQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||
"rev": "c3511a3b53b482aa7547c9d1626fd7310c1de1c5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "release-24.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1738136902,
|
||||
"narHash": "sha256-pUvLijVGARw4u793APze3j6mU1Zwdtz7hGkGGkD87qw=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9a5db3142ce450045840cc8d832b13b8a2018e0c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-unstable_2": {
|
||||
"locked": {
|
||||
"lastModified": 1741513245,
|
||||
"narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -304,11 +393,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1732014248,
|
||||
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||
"lastModified": 1740695751,
|
||||
"narHash": "sha256-D+R+kFxy1KsheiIzkkx/6L63wEHBYX21OIwlFV8JvDs=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||
"rev": "6313551cd05425cd5b3e63fe47dbc324eabb15e4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -320,11 +409,11 @@
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1733261153,
|
||||
"narHash": "sha256-eq51hyiaIwtWo19fPEeE0Zr2s83DYMKJoukNLgGGpek=",
|
||||
"lastModified": 1741600792,
|
||||
"narHash": "sha256-yfDy6chHcM7pXpMF4wycuuV+ILSTG486Z/vLx/Bdi6Y=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b681065d0919f7eb5309a93cea2cfa84dec9aa88",
|
||||
"rev": "ebe2788eafd539477f83775ef93c3c7e244421d3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -334,35 +423,19 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1732521221,
|
||||
"narHash": "sha256-2ThgXBUXAE1oFsVATK1ZX9IjPcS4nKFOAjhPNKuiMn0=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4633a7c72337ea8fd23a4f2ba3972865e3ec685d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pia": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730809692,
|
||||
"narHash": "sha256-L2nzuQOK36xYcY6hQ3+waIFd0lWGlz7YTBnUCgV5Ox4=",
|
||||
"lastModified": 1739700451,
|
||||
"narHash": "sha256-UrUTLVTFmtLbu0/pnt3C7eS/QiMuLztAEnS2PO5ayjg=",
|
||||
"owner": "Fuwn",
|
||||
"repo": "pia.nix",
|
||||
"rev": "445e82bd030080fb250f83805a7cc2feeea174c9",
|
||||
"rev": "a8bc845dba30d35b07494fe9d1d0427632d5c313",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -378,12 +451,13 @@
|
||||
"base16-vim": "base16-vim",
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-utils": "flake-utils",
|
||||
"ghostty": "ghostty",
|
||||
"home-manager": "home-manager_2",
|
||||
"legacy": "legacy",
|
||||
"musnix": "musnix",
|
||||
"nix-colors": "nix-colors",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable_2",
|
||||
"pia": "pia",
|
||||
"tt-schemes": "tt-schemes",
|
||||
"zen-browser": "zen-browser"
|
||||
@ -434,14 +508,29 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tt-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1731411556,
|
||||
"narHash": "sha256-Tp1BpaF5qRav7O2TsSGjCfgRzhiasu4IuwROR66gz1o=",
|
||||
"lastModified": 1741713929,
|
||||
"narHash": "sha256-XRwEa2+sau3jsVN4QcffFu7cWoxkKVs0oqysSu3Anxc=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"rev": "61058a8d2e2bd4482b53d57a68feb56cdb991f0b",
|
||||
"rev": "d4a7c5b683fb4d4150162d163889a7882625022e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -452,21 +541,77 @@
|
||||
},
|
||||
"zen-browser": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1732835488,
|
||||
"narHash": "sha256-r1nomBVEMO4I0y3pMfqLletQxKak5xfpk9DhlO1AsuI=",
|
||||
"owner": "ch4og",
|
||||
"lastModified": 1741672271,
|
||||
"narHash": "sha256-uwzPVIiJUus20WRMhN7xVcHNaniYPEkXjeWoM3I5rQ0=",
|
||||
"owner": "youwen5",
|
||||
"repo": "zen-browser-flake",
|
||||
"rev": "d8fbf602685f5cf2a6475eaf20595a6dc6628891",
|
||||
"rev": "f9ed87557cb28ba557a15bb313f9b81554e90e0a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "ch4og",
|
||||
"owner": "youwen5",
|
||||
"repo": "zen-browser-flake",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zig": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"ghostty"
|
||||
],
|
||||
"flake-utils": [
|
||||
"ghostty",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"ghostty",
|
||||
"nixpkgs-stable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738239110,
|
||||
"narHash": "sha256-Y5i9mQ++dyIQr+zEPNy+KIbc5wjPmfllBrag3cHZgcE=",
|
||||
"owner": "mitchellh",
|
||||
"repo": "zig-overlay",
|
||||
"rev": "1a8fb6f3a04724519436355564b95fce5e272504",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "mitchellh",
|
||||
"repo": "zig-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zig2nix": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"ghostty",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"ghostty",
|
||||
"nixpkgs-stable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741368279,
|
||||
"narHash": "sha256-WTaC8HmnIq6O71iK0g9as404BbmS+YyEP5qS85m2JBY=",
|
||||
"owner": "jcollie",
|
||||
"repo": "zig2nix",
|
||||
"rev": "672971b5b6911de21446ad4fc76dee677922eda0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "jcollie",
|
||||
"ref": "672971b5b6911de21446ad4fc76dee677922eda0",
|
||||
"repo": "zig2nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
13
flake.nix
13
flake.nix
@ -33,7 +33,11 @@
|
||||
};
|
||||
|
||||
# Zen Browser
|
||||
zen-browser.url = "github:ch4og/zen-browser-flake";
|
||||
# zen-browser.url = "github:ch4og/zen-browser-flake";
|
||||
zen-browser.url = "github:youwen5/zen-browser-flake";
|
||||
zen-browser.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
ghostty.url = "github:ghostty-org/ghostty";
|
||||
|
||||
# hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
||||
# hyprland.url = "github:hyprwm/Hyprland";
|
||||
@ -50,6 +54,9 @@
|
||||
pia.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
musnix.url = "github:musnix/musnix";
|
||||
|
||||
# compose2nix.url = "github:aksiksi/compose2nix";
|
||||
# compose2nix.inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
@ -67,6 +74,8 @@
|
||||
# nix-ld,
|
||||
musnix,
|
||||
pia,
|
||||
ghostty,
|
||||
# compose2nix,
|
||||
...
|
||||
} @ inputs:
|
||||
let
|
||||
@ -106,7 +115,7 @@
|
||||
|
||||
nixosConfigurations = {
|
||||
launchpad = nixpkgs.lib.nixosSystem {
|
||||
specialArgs = {inherit inputs outputs systemSettings userSettings lib agenix pia ;};
|
||||
specialArgs = {inherit inputs outputs systemSettings userSettings lib agenix pia ghostty ;};
|
||||
modules = [
|
||||
# kmonad.nixosModules.default
|
||||
musnix.nixosModules.musnix
|
||||
|
||||
52
flakes/aider-chat/flake.nix
Normal file
52
flakes/aider-chat/flake.nix
Normal file
@ -0,0 +1,52 @@
|
||||
{
|
||||
description = "Flake providing dev shell for using aider-chat in NixOS";
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs }:
|
||||
let
|
||||
supportedSystems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
|
||||
forAllSystems = f: nixpkgs.lib.genAttrs supportedSystems (system: f system);
|
||||
in
|
||||
{
|
||||
url = self.sourceInfo.url;
|
||||
|
||||
devShells = forAllSystems (system:
|
||||
let pkgs = import nixpkgs { inherit system; };
|
||||
in {
|
||||
default = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
(pkgs.python3.withPackages (ps: with ps; [ virtualenv pip setuptools wheel ]))
|
||||
];
|
||||
# set LD_LIBRARY_PATH environment variable to avoid error. see https://discourse.nixos.org/t/how-to-solve-libstdc-not-found-in-shell-nix/25458
|
||||
LD_LIBRARY_PATH = "${pkgs.stdenv.cc.cc.lib}/lib:${pkgs.zlib}/lib";
|
||||
shellHook = ''
|
||||
# create virtualenv if not exist
|
||||
if [ ! -d .venv ]; then
|
||||
virtualenv .venv
|
||||
fi
|
||||
# activate virtualenv
|
||||
source .venv/bin/activate
|
||||
# install aider-chat into virtualenv and upgrade it
|
||||
pip install --upgrade aider-chat --prefix=$PWD/.venv
|
||||
# export PATH to virtualenv bins
|
||||
export PATH=$PWD/.venv/bin:$PATH
|
||||
|
||||
export OLLAMA_API_BASE=http://127.0.0.1:11434
|
||||
|
||||
echo "---Development Environment Activated---"
|
||||
echo
|
||||
echo "[Dependencies]"
|
||||
echo "└─(NodeJS)──> $(node --version)"
|
||||
echo "└─(SHELL)──> $(echo $0)"
|
||||
echo " journalctl -u ollama --no-pager "
|
||||
'';
|
||||
exitHook = ''
|
||||
deactivate
|
||||
'';
|
||||
};
|
||||
}
|
||||
);
|
||||
};
|
||||
}
|
||||
115
flakes/docker-compose.nix
Normal file
115
flakes/docker-compose.nix
Normal file
@ -0,0 +1,115 @@
|
||||
# Auto-generated using compose2nix v0.3.1.
|
||||
{ pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
# Runtime
|
||||
virtualisation.podman = {
|
||||
enable = true;
|
||||
autoPrune.enable = true;
|
||||
dockerCompat = true;
|
||||
defaultNetwork.settings = {
|
||||
# Required for container networking to be able to use names.
|
||||
dns_enabled = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Enable container name DNS for non-default Podman networks.
|
||||
# https://github.com/NixOS/nixpkgs/issues/226365
|
||||
networking.firewall.interfaces."podman+".allowedUDPPorts = [ 53 ];
|
||||
|
||||
virtualisation.oci-containers.backend = "podman";
|
||||
|
||||
# Containers
|
||||
virtualisation.oci-containers.containers."scribe-vault-app" = {
|
||||
image = "node:22";
|
||||
volumes = [
|
||||
"/home/wayne/dev/www/v2-scribevault/frontend:/app:rw"
|
||||
];
|
||||
ports = [
|
||||
"4173:4173/tcp"
|
||||
];
|
||||
cmd = [ "npm" "run" "test" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network-alias=app"
|
||||
"--network=scribe-vault_my-network"
|
||||
];
|
||||
};
|
||||
systemd.services."podman-scribe-vault-app" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 90 "no";
|
||||
};
|
||||
after = [
|
||||
"podman-network-scribe-vault_my-network.service"
|
||||
];
|
||||
requires = [
|
||||
"podman-network-scribe-vault_my-network.service"
|
||||
];
|
||||
partOf = [
|
||||
"podman-compose-scribe-vault-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-scribe-vault-root.target"
|
||||
];
|
||||
};
|
||||
virtualisation.oci-containers.containers."scribe-vault-cypress" = {
|
||||
image = "cypress/included:cypress-13.17.0-node-22.12.0-chrome-131.0.6778.139-1-ff-133.0.3-edge-131.0.2903.99-1";
|
||||
environment = {
|
||||
"CYPRESS_BASE_URL" = "http://app:4173";
|
||||
};
|
||||
volumes = [
|
||||
"/home/wayne/dev/www/v2-scribevault/frontend:/app:rw"
|
||||
];
|
||||
dependsOn = [
|
||||
"scribe-vault-app"
|
||||
];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--entrypoint=[\"cypress\", \"run\", \"--e2e\"]"
|
||||
"--network-alias=cypress"
|
||||
"--network=scribe-vault_my-network"
|
||||
];
|
||||
};
|
||||
systemd.services."podman-scribe-vault-cypress" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 90 "no";
|
||||
};
|
||||
after = [
|
||||
"podman-network-scribe-vault_my-network.service"
|
||||
];
|
||||
requires = [
|
||||
"podman-network-scribe-vault_my-network.service"
|
||||
];
|
||||
partOf = [
|
||||
"podman-compose-scribe-vault-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"podman-compose-scribe-vault-root.target"
|
||||
];
|
||||
};
|
||||
|
||||
# Networks
|
||||
systemd.services."podman-network-scribe-vault_my-network" = {
|
||||
path = [ pkgs.podman ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
ExecStop = "podman network rm -f scribe-vault_my-network";
|
||||
};
|
||||
script = ''
|
||||
podman network inspect scribe-vault_my-network || podman network create scribe-vault_my-network --driver=bridge
|
||||
'';
|
||||
partOf = [ "podman-compose-scribe-vault-root.target" ];
|
||||
wantedBy = [ "podman-compose-scribe-vault-root.target" ];
|
||||
};
|
||||
|
||||
# Root service
|
||||
# When started, this will automatically create all resources and start
|
||||
# the containers. When stopped, this will teardown all resources.
|
||||
systemd.targets."podman-compose-scribe-vault-root" = {
|
||||
unitConfig = {
|
||||
Description = "Root target generated by compose2nix.";
|
||||
};
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
}
|
||||
105
flakes/scribeVault.nix
Normal file
105
flakes/scribeVault.nix
Normal file
@ -0,0 +1,105 @@
|
||||
# Auto-generated using compose2nix v0.3.1.
|
||||
{ pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
# Runtime
|
||||
virtualisation.docker = {
|
||||
enable = true;
|
||||
autoPrune.enable = true;
|
||||
};
|
||||
virtualisation.oci-containers.backend = "docker";
|
||||
|
||||
# Containers
|
||||
virtualisation.oci-containers.containers."scribe-vault-app" = {
|
||||
image = "node:22";
|
||||
volumes = [
|
||||
"/home/wayne/dev/www/v2-scribevault/frontend:/app:rw"
|
||||
];
|
||||
ports = [
|
||||
"4173:4173/tcp"
|
||||
];
|
||||
cmd = [ "npm" "run" "test" ];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--network-alias=app"
|
||||
"--network=scribe-vault_my-network"
|
||||
];
|
||||
};
|
||||
systemd.services."docker-scribe-vault-app" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 90 "no";
|
||||
};
|
||||
after = [
|
||||
"docker-network-scribe-vault_my-network.service"
|
||||
];
|
||||
requires = [
|
||||
"docker-network-scribe-vault_my-network.service"
|
||||
];
|
||||
partOf = [
|
||||
"docker-compose-scribe-vault-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"docker-compose-scribe-vault-root.target"
|
||||
];
|
||||
};
|
||||
virtualisation.oci-containers.containers."scribe-vault-cypress" = {
|
||||
image = "cypress/included:cypress-13.17.0-node-22.12.0-chrome-131.0.6778.139-1-ff-133.0.3-edge-131.0.2903.99-1";
|
||||
environment = {
|
||||
"CYPRESS_BASE_URL" = "http://app:4173";
|
||||
};
|
||||
volumes = [
|
||||
"/home/wayne/dev/www/v2-scribevault/frontend:/app:rw"
|
||||
];
|
||||
dependsOn = [
|
||||
"scribe-vault-app"
|
||||
];
|
||||
log-driver = "journald";
|
||||
extraOptions = [
|
||||
"--entrypoint=[\"cypress\", \"run\", \"--e2e\"]"
|
||||
"--network-alias=cypress"
|
||||
"--network=scribe-vault_my-network"
|
||||
];
|
||||
};
|
||||
systemd.services."docker-scribe-vault-cypress" = {
|
||||
serviceConfig = {
|
||||
Restart = lib.mkOverride 90 "no";
|
||||
};
|
||||
after = [
|
||||
"docker-network-scribe-vault_my-network.service"
|
||||
];
|
||||
requires = [
|
||||
"docker-network-scribe-vault_my-network.service"
|
||||
];
|
||||
partOf = [
|
||||
"docker-compose-scribe-vault-root.target"
|
||||
];
|
||||
wantedBy = [
|
||||
"docker-compose-scribe-vault-root.target"
|
||||
];
|
||||
};
|
||||
|
||||
# Networks
|
||||
systemd.services."docker-network-scribe-vault_my-network" = {
|
||||
path = [ pkgs.docker ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
ExecStop = "docker network rm -f scribe-vault_my-network";
|
||||
};
|
||||
script = ''
|
||||
docker network inspect scribe-vault_my-network || docker network create scribe-vault_my-network --driver=bridge
|
||||
'';
|
||||
partOf = [ "docker-compose-scribe-vault-root.target" ];
|
||||
wantedBy = [ "docker-compose-scribe-vault-root.target" ];
|
||||
};
|
||||
|
||||
# Root service
|
||||
# When started, this will automatically create all resources and start
|
||||
# the containers. When stopped, this will teardown all resources.
|
||||
systemd.targets."docker-compose-scribe-vault-root" = {
|
||||
unitConfig = {
|
||||
Description = "Root target generated by compose2nix.";
|
||||
};
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
}
|
||||
23
hm/home.nix
23
hm/home.nix
@ -59,11 +59,12 @@ let
|
||||
icat="kitten icat";
|
||||
s="kitten ssh";
|
||||
|
||||
init_0="sudo systemctl isolate emergency.target";
|
||||
init_1="sudo systemctl isolate rescue.target";
|
||||
init_3="sudo systemctl isolate multi-user.target";
|
||||
init_5="sudo systemctl isolate graphical.target";
|
||||
# init_0="sudo systemctl isolate emergency.target";
|
||||
# init_1="sudo systemctl isolate rescue.target";
|
||||
# init_3="sudo systemctl isolate multi-user.target";
|
||||
# init_5="sudo systemctl isolate graphical.target";
|
||||
|
||||
stop-containers="listServices | grep container | grep active | awk '{print $1}' | xargs -n1 sudo systemctl stop";
|
||||
# history="history | fzf";
|
||||
};
|
||||
|
||||
@ -100,7 +101,7 @@ let
|
||||
unstablePkgs = import (
|
||||
fetchTarball {
|
||||
url = "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz";
|
||||
sha256 = "0z9jlamk8krq097a375qqhyj7ljzb6nlqh652rl4s00p2mf60f6r";
|
||||
sha256 = "0328lh3ghdbglwd69774sx3an9ym7193xwvypa1gzbnw11a8frjq";
|
||||
})
|
||||
{
|
||||
# config = config.nixpkgs.config;
|
||||
@ -165,7 +166,7 @@ in
|
||||
|
||||
doublecmd filezilla
|
||||
libreoffice
|
||||
unstablePkgs.bottles winePackages.wayland
|
||||
bottles winePackages.wayland
|
||||
] ++ (import ./pkgs { inherit unstablePkgs pkgs system zen-browser; });
|
||||
|
||||
|
||||
@ -183,6 +184,16 @@ in
|
||||
bbenoist.nix
|
||||
];
|
||||
};
|
||||
direnv = {
|
||||
enable = true;
|
||||
package = pkgs.direnv;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
nix-direnv = {
|
||||
enable = true;
|
||||
package = pkgs.nix-direnv;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
|
||||
@ -9,8 +9,9 @@
|
||||
enable = true;
|
||||
platformTheme.name = "gtk";
|
||||
style = {
|
||||
name = "gtk2";
|
||||
package = pkgs.libsForQt5.breeze-qt5;
|
||||
name = "qt6gtk2";
|
||||
# package = pkgs.libsForQt5.breeze-qt5;
|
||||
package = pkgs.kdePackages.breeze-gtk;
|
||||
};
|
||||
};
|
||||
|
||||
@ -18,7 +19,8 @@
|
||||
enable = true;
|
||||
theme = {
|
||||
name = "Breeze-Dark";
|
||||
package = pkgs.libsForQt5.breeze-gtk;
|
||||
# package = pkgs.libsForQt5.breeze-gtk;
|
||||
package = pkgs.kdePackages.breeze-gtk;
|
||||
};
|
||||
iconTheme = {
|
||||
name = "nordzy-icon-theme";
|
||||
|
||||
@ -6,4 +6,6 @@ with pkgs;
|
||||
blender
|
||||
gimp-with-plugins
|
||||
reaper yabridge yabridgectl
|
||||
#libsForQt5.gwenview
|
||||
kdePackages.gwenview
|
||||
]
|
||||
@ -2,13 +2,15 @@
|
||||
with pkgs;
|
||||
[
|
||||
# (vscode-with-extensions.override {
|
||||
# vscodeExtensions = with vscode-extensions; [
|
||||
# vscodeExtensions = with vscode-extensions; [
|
||||
# devsense.profiler-php-vscode devsense.phptools-vscode devsense.composer-php-vscode
|
||||
# ];
|
||||
# mkhl.direnv
|
||||
# ];
|
||||
# })
|
||||
# IDE's
|
||||
sublime3 sublime-merge vscode # vscode.languages.web vscode.languages.python vscode.languages.nix vscode.languages.bash
|
||||
typora obsidian obsidian-export # vimPlugins.obsidian-nvim
|
||||
# Lunarvim Dependencies
|
||||
gnumake42 nodejs_22 cargo ripgrep cmake
|
||||
# direnv nix-direnv vimPlugins.direnv-vim
|
||||
]
|
||||
@ -1,14 +1,17 @@
|
||||
{ pkgs, system, zen-browser, ... }:
|
||||
with pkgs;
|
||||
[
|
||||
(python3.withPackages (ps: with ps; [
|
||||
pip pynvim # mopidy-tidal # Mopidy-WebSettings
|
||||
]))
|
||||
# (python3.withPackages (ps: with ps; [
|
||||
# Moved to services.home-assistant
|
||||
# pip
|
||||
# pynvim # mopidy-tidal # Mopidy-WebSettings
|
||||
# virtualenv setuptools wheel
|
||||
# ]))
|
||||
|
||||
# mopidy mopidy-tidal mopidy-musicbox-webclient gst_all_1.gstreamer gst_all_1.gst-plugins-bad
|
||||
|
||||
# Browsers
|
||||
firefox-devedition
|
||||
# firefox-devedition
|
||||
w3m
|
||||
ungoogled-chromium
|
||||
librewolf
|
||||
@ -27,4 +30,5 @@ with pkgs;
|
||||
|
||||
mapscii
|
||||
# tidal-dl
|
||||
postman
|
||||
]
|
||||
@ -2,5 +2,12 @@
|
||||
with pkgs;
|
||||
[
|
||||
# LLM's
|
||||
# lmstudio
|
||||
lmstudio
|
||||
# aider-chat
|
||||
# (pkgs.python3.withPackages (ps: with ps; [
|
||||
# virtualenv
|
||||
# pip
|
||||
# setuptools
|
||||
# wheel
|
||||
# ]))
|
||||
]
|
||||
@ -1,15 +1,18 @@
|
||||
{ pkgs, unstablePkgs, ... }:
|
||||
with pkgs;
|
||||
[
|
||||
(unstablePkgs.catppuccin-kvantum.override {
|
||||
# (unstablePkgs.catppuccin-kvantum.override {
|
||||
(catppuccin-kvantum.override {
|
||||
accent = "blue";
|
||||
variant = "macchiato";
|
||||
})
|
||||
|
||||
qt5.qtwayland qt6.qtwayland
|
||||
qt6ct
|
||||
libsForQt5.qtstyleplugin-kvantum
|
||||
libsForQt5.qt5ct
|
||||
# qt5.qtwayland
|
||||
kdePackages.qtwayland
|
||||
kdePackages.qt6ct
|
||||
kdePackages.qtstyleplugin-kvantum
|
||||
# libsForQt5.qtstyleplugin-kvantum
|
||||
# libsForQt5.qt5ct
|
||||
|
||||
base16-schemes base16-shell-preview
|
||||
papirus-folders
|
||||
|
||||
@ -6,12 +6,13 @@ with pkgs;
|
||||
[
|
||||
wdisplays waybar wlogout wayland-utils wayland-protocols
|
||||
hyprpaper hyprlock hypridle hyprshot hyprpicker hyprcursor
|
||||
pyprland iniparser
|
||||
pyprland iniparser fftw
|
||||
rofi-wayland wev clipman cliphist wl-clip-persist wl-clipboard
|
||||
blueman networkmanagerapplet swayosd
|
||||
qalculate-qt
|
||||
xorg.xrandr
|
||||
dconf
|
||||
polycat
|
||||
adwaita-qt adwaita-qt6 gnome.adwaita-icon-theme
|
||||
# adwaita-qt
|
||||
adwaita-qt6 adwaita-icon-theme
|
||||
]
|
||||
@ -410,7 +410,7 @@
|
||||
];
|
||||
bindMounts = {
|
||||
"/var/www" = {
|
||||
hostPath = "/home/wayne/dev/whd/live";
|
||||
hostPath = "/home/wayne/dev/www/whc/2025/dashboard";
|
||||
isReadOnly = false;
|
||||
};
|
||||
};
|
||||
@ -483,16 +483,26 @@
|
||||
enable = true;
|
||||
package = pkgs.nginx;
|
||||
virtualHosts.localhost = {
|
||||
root = "/var/www/public";
|
||||
root = "/var/www";
|
||||
extraConfig = ''
|
||||
index index.php, index.html;
|
||||
index index.html, index.php;
|
||||
'';
|
||||
#
|
||||
locations."/".extraConfig = ''
|
||||
add_header 'Access-Control-Allow-Origin' '*';
|
||||
add_header 'Access-Control-Allow-Headers' 'Authorization,Accept,Origin,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
|
||||
add_header 'Access-Control-Allow-Methods' 'GET, POST, HEAD, OPTIONS';
|
||||
add_header 'Accept' 'application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8';
|
||||
# if ($request_method = 'OPTIONS') {
|
||||
# add_header 'Access-Control-Allow-Origin' '*';
|
||||
# add_header 'Access-Control-Allow-Methods' 'GET, POST, HEAD, OPTIONS';
|
||||
# add_header 'Access-Control-Allow-Headers' 'Authorization,Accept,Origin,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
|
||||
# add_header 'Access-Control-Max-Age' 1728000;
|
||||
# add_header 'Content-Type' 'text/plain charset=UTF-8';
|
||||
# add_header 'Content-Length' 0;
|
||||
# return 204;
|
||||
# }
|
||||
|
||||
# add_header 'Access-Control-Allow-Origin' '*';
|
||||
# add_header 'Access-Control-Allow-Methods' 'GET, POST, HEAD, OPTIONS';
|
||||
# add_header 'Access-Control-Allow-Headers' 'Authorization,Accept,Origin,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
|
||||
# add_header 'Accept' 'application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8';
|
||||
index index.php index.html;
|
||||
try_files $uri $uri/ /index.php;
|
||||
'';
|
||||
@ -558,5 +568,558 @@
|
||||
system.stateVersion = "24.11";
|
||||
};
|
||||
};
|
||||
|
||||
glance = {
|
||||
privateNetwork = true;
|
||||
hostAddress = "192.168.12.40";
|
||||
localAddress = "192.168.12.77/24";
|
||||
hostBridge = "br0";
|
||||
autoStart = false;
|
||||
|
||||
config = { config, pkgs, ... }:
|
||||
{
|
||||
# networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
networking = {
|
||||
firewall.enable = false;
|
||||
enableIPv6 = false;
|
||||
nameservers = [ "192.168.12.25" ];
|
||||
};
|
||||
|
||||
services.glance = {
|
||||
enable = true;
|
||||
package = pkgs.glance;
|
||||
openFirewall = true;
|
||||
settings = {
|
||||
server.port = 5878;
|
||||
server.host = "0.0.0.0";
|
||||
pages = [
|
||||
{
|
||||
name = "Home";
|
||||
columns = [
|
||||
{
|
||||
size = "small";
|
||||
widgets = [
|
||||
{
|
||||
type = "clock";
|
||||
hour-format = "12h";
|
||||
timezones = [
|
||||
{
|
||||
timezone = "America/Los_Angeles";
|
||||
# label = "Los Angeles";
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
type = "calendar";
|
||||
}
|
||||
{
|
||||
type = "rss";
|
||||
# limit = 10;
|
||||
collapse-after = 3;
|
||||
cache = "3h";
|
||||
feeds = [
|
||||
{
|
||||
url = "http://rss.slashdot.org/Slashdot/slashdotMainatom";
|
||||
title = "Slashdot";
|
||||
}
|
||||
{
|
||||
url = "https://www.joshwcomeau.com/rss.xml";
|
||||
title = "Josh Comeau";
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
type = "rss";
|
||||
limit = 10;
|
||||
collapse-after = 3;
|
||||
cache = "12h";
|
||||
feeds = [
|
||||
{
|
||||
url = "https://news.un.org/feed/subscribe/en/news/topic/human-rights/feed/rss.xml";
|
||||
title = "UN Human Rights";
|
||||
}
|
||||
{
|
||||
url = "https://news.un.org/feed/subscribe/en/news/topic/humanitarian-aid/feed/rss.xml";
|
||||
title = "UN Humanitarian Aid";
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
type = "rss";
|
||||
limit = 10;
|
||||
collapse-after = 3;
|
||||
cache = "12h";
|
||||
feeds = [
|
||||
{
|
||||
url = "https://www.amnesty.org/en/feed/";
|
||||
title = "Amnesty International";
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
type = "rss";
|
||||
limit = 10;
|
||||
collapse-after = 3;
|
||||
cache = "12h";
|
||||
feeds = [
|
||||
{
|
||||
url = "https://xkcd.com/atom.xml";
|
||||
title = "XKCD";
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
size = "full";
|
||||
widgets = [
|
||||
{
|
||||
type = "html";
|
||||
source = ''
|
||||
<div class="widget-content ">
|
||||
<h1>This</h1>
|
||||
<p>Hello, <span class="color-primary">World</span>!</p>
|
||||
</div>
|
||||
'';
|
||||
}
|
||||
{
|
||||
type = "hacker-news";
|
||||
}
|
||||
{
|
||||
type = "reddit";
|
||||
subreddit = "selfhosted";
|
||||
}
|
||||
{
|
||||
type = "rss";
|
||||
limit = 10;
|
||||
collapse-after = 3;
|
||||
cache = "4h";
|
||||
feeds = [
|
||||
{
|
||||
source = "https://rss.slashdot.org/Slashdot/slashdotMainatom";
|
||||
title = "Slashdot";
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
size = "small";
|
||||
widgets = [
|
||||
{
|
||||
type = "search";
|
||||
title = "Duckduckgo Search";
|
||||
search-engine = "duckduckgo";
|
||||
new-tab = true;
|
||||
}
|
||||
{
|
||||
type = "search";
|
||||
title = "NixOS Search";
|
||||
search-engine = "https://search.nixos.org/packages?channel=24.11&size=50&sort=relevance&type=packages&query={QUERY}";
|
||||
new-tab = false;
|
||||
}
|
||||
{
|
||||
type = "weather";
|
||||
units = "imperial";
|
||||
hour-format = "12h";
|
||||
show-area-name = true;
|
||||
location = "Los Angeles, California, United States";
|
||||
}
|
||||
{
|
||||
type = "markets";
|
||||
markets = [
|
||||
{
|
||||
symbol = "BTC-USD";
|
||||
name = "Bitcoin";
|
||||
}
|
||||
{
|
||||
symbol = "XLM-USD";
|
||||
name = "Stellar Lumens";
|
||||
}
|
||||
{
|
||||
symbol = "NVDA";
|
||||
name = "Nvidia-";
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
type = "bookmarks";
|
||||
groups = [
|
||||
{
|
||||
title = "WHD";
|
||||
color = "200 50 50";
|
||||
links = [
|
||||
{
|
||||
title = "Diaspora";
|
||||
icon = "si:diaspora";
|
||||
url = "https://diasporia.waynehayesdevelopment.com";
|
||||
}
|
||||
{
|
||||
title = "Mastodon";
|
||||
icon = "si:mastodon";
|
||||
url = "https://mastodon.waynehayesdevelopment.com";
|
||||
}
|
||||
{
|
||||
title = "BlueSky";
|
||||
icon = "si:bluesky";
|
||||
url = "https://bluesky.waynehayesdevelopment.com";
|
||||
}
|
||||
{
|
||||
title = "Analytics";
|
||||
icon = "si:matomo";
|
||||
url = "https://analytics.waynehayesdevelopment.com";
|
||||
}
|
||||
{
|
||||
title = "Cloud";
|
||||
icon = "si:nextcloud";
|
||||
url = "https://cloud.waynehayesdevelopment.com";
|
||||
}
|
||||
{
|
||||
title = "Code";
|
||||
icon = "si:gitea";
|
||||
url = "https://code.waynehayesdevelopment.com";
|
||||
}
|
||||
{
|
||||
title = "Wiki";
|
||||
icon = "si:ubuntu";
|
||||
url = "https://wiki.waynehayesdevelopment.com";
|
||||
}
|
||||
{
|
||||
title = "WHD";
|
||||
icon = "si:ubuntu";
|
||||
url = "https://www.waynehayesdevelopment.com";
|
||||
}
|
||||
{
|
||||
title = "WHC";
|
||||
icon = "si:ubuntu";
|
||||
url = "https://www.waynehayes.com";
|
||||
}
|
||||
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
};
|
||||
};
|
||||
|
||||
vite = {
|
||||
privateNetwork = true;
|
||||
hostAddress = "192.168.12.40";
|
||||
localAddress = "192.168.12.78/24";
|
||||
hostBridge = "br0";
|
||||
autoStart = false;
|
||||
allowedDevices = [
|
||||
{
|
||||
modifier = "rw";
|
||||
node = "/dev/net/tun";
|
||||
}
|
||||
];
|
||||
bindMounts = {
|
||||
"/home/wayne/whc/dashboard" = {
|
||||
hostPath = "/home/wayne/dev/www/whc/2025/vite";
|
||||
isReadOnly = false;
|
||||
};
|
||||
"/home/wayne/scribevault" = {
|
||||
hostPath = "/home/wayne/dev/www/scribevault";
|
||||
isReadOnly = false;
|
||||
};
|
||||
"/home/wayne/scribevault2" = {
|
||||
hostPath = "/home/wayne/dev/www/v2-scribevault";
|
||||
isReadOnly = false;
|
||||
};
|
||||
"/home/wayne/mevn-boilerplate" = {
|
||||
hostPath = "/home/wayne/dev/www/mevn-boilerplate";
|
||||
isReadOnly = false;
|
||||
};
|
||||
"/home/wayne/aider-sv" = {
|
||||
hostPath = "/home/wayne/dev/www/aider-sv";
|
||||
isReadOnly = false;
|
||||
};
|
||||
"/home/wayne/lms-aider" = {
|
||||
hostPath = "/home/wayne/dev/www/lms-aider";
|
||||
isReadOnly = false;
|
||||
};
|
||||
"/home/wayne/stock-ticker" = {
|
||||
hostPath = "/home/wayne/dev/www/stock-ticker";
|
||||
isReadOnly = false;
|
||||
};
|
||||
};
|
||||
|
||||
config = { config, pkgs, ... }:
|
||||
{
|
||||
# networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
networking = {
|
||||
firewall = {
|
||||
enable = false;
|
||||
allowedTCPPorts = [ 22 80 443 1025 5173 8025 8080 27017 ];
|
||||
};
|
||||
enableIPv6 = false;
|
||||
nameservers = [ "192.168.12.25" ];
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
users = {
|
||||
groups = {};
|
||||
users = {
|
||||
wayne = {
|
||||
isNormalUser = true;
|
||||
description = "Wayne Hayes";
|
||||
extraGroups = [ "networkmanager" "wheel" "wayne" ];
|
||||
openssh.authorizedKeys.keys = [ "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC6q75AXShVjzWerPFU3l0YXIKViNF4eyragL+RQIRwdNDMzW34GgxFhtyLsmRB2jsykf4gx76zSyJoii0K4uhS761w5oDXz9mqHnBzJutDTyltLyfgLsFKY8V2sOtSracWx4y6QrtmBR3MKV642kg5mufVEmCMVxBU9oVpIOJUSW+XNYBawaSkl5SjDMLI7flj0v9Hb2dZqjQigDM1+UHxTzcMoZnR6hAzoZpPNMGyZXtrgEotNywNdpxCqRV9T/KvKHSIVYc1umiDXc+5fyRo9v7CzvYY3MvRKWbgUfTVQRmR2kqwsGAsV5W+PEUb8qqmTjPVXusKxKlpGgYfsvIZOv0LgOvQMemga8psFIS9F4YQ1xuc092bKi1LteC+ZlabMLRMux6Wbhjci+v9wnLfTyBQc6wr3wDFJoELKyaLnI7Cn0KHn0k+BiYCCr2TjKrz9XztL490vprYtvVumNFZ3rxewGnZSn/2czaFfQgnXt+9xQGWWo9TJGE5jq1jThnsIbH3G9JIQ1WhomMq6DDRhGMX2ZKDk/M9/fk0XN5nvQyJNmbiHy5srW/VANx8R9jjsVkvX29MXeK6dzpR4ImywXggpYMeHB6moy06cJUu5WoR8aLS/rO5LbZM2j14AMQ2ZK79QfUJSdloA1/HHlmnx7YtzZOebD6BCR7xgasGRw== wayne"];
|
||||
packages = with pkgs; [
|
||||
sl cowsay lolcat
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.tailscale = {
|
||||
enable = true;
|
||||
package = pkgs.tailscale;
|
||||
interfaceName = "tailscale0";
|
||||
openFirewall = true;
|
||||
port = 41641;
|
||||
useRoutingFeatures = "client";
|
||||
};
|
||||
|
||||
services.mailpit.instances = {
|
||||
local = {
|
||||
smtp = "127.0.0.1:1025";
|
||||
losten = "127.0.0.1:8025";
|
||||
database = "mailpit.db";
|
||||
};
|
||||
};
|
||||
|
||||
services.mongodb = {
|
||||
enable = true;
|
||||
package = pkgs.mongodb-ce;
|
||||
user = "mongodb";
|
||||
bind_ip = "0.0.0.0";
|
||||
dbpath = "/var/db/mongodb";
|
||||
enableAuth = false;
|
||||
pidFile = "/run/mongodb.pid";
|
||||
extraConfig = '''';
|
||||
};
|
||||
|
||||
services.jenkins = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
ports = [ 22 ];
|
||||
settings = {
|
||||
PasswordAuthentication = true;
|
||||
AllowUsers = [ "wayne" ]; # Allows all users by default. Can be [ "user1" "user2" ]
|
||||
UseDns = true;
|
||||
X11Forwarding = false;
|
||||
PermitRootLogin = "no"; # "yes", "without-password", "prohibit-password", "forced-commands-only", "no"
|
||||
};
|
||||
};
|
||||
|
||||
programs.neovim.enable = true;
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
terminal = "tmux-256color";
|
||||
keyMode = "vi";
|
||||
shortcut = "s";
|
||||
extraConfig = ''
|
||||
set -ag terminal-overrides ",xterm-256color:RGB"
|
||||
set -g mouse on
|
||||
# Resize pane key bindings
|
||||
bind -r < resize-pane -L 5
|
||||
bind -r > resize-pane -R 5
|
||||
bind -r + resize-pane -U 5
|
||||
bind -r - resize-pane -D 5
|
||||
|
||||
set-option -g status-position top
|
||||
'';
|
||||
plugins = [
|
||||
pkgs.tmuxPlugins.weather
|
||||
pkgs.tmuxPlugins.tmux-fzf
|
||||
pkgs.tmuxPlugins.resurrect
|
||||
pkgs.tmuxPlugins.nord
|
||||
];
|
||||
};
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
autosuggestions.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
shellAliases = {};
|
||||
|
||||
histSize = 10000;
|
||||
histFile = "$HOME/.zsh_history";
|
||||
};
|
||||
|
||||
environment.systemPackages = ( with pkgs; [
|
||||
vim git mailpit fzf eza jq bc
|
||||
nodejs_22 nodePackages.npm nodePackages.browser-sync nodePackages.sass
|
||||
yarn nodemon
|
||||
mongodb-tools mongosh
|
||||
python312 python312Packages.pip python312Packages.pipx python312Packages.distutils
|
||||
]);
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
};
|
||||
};
|
||||
|
||||
node = {
|
||||
privateNetwork = true;
|
||||
hostAddress = "192.168.12.40";
|
||||
localAddress = "192.168.12.79/24";
|
||||
hostBridge = "br0";
|
||||
autoStart = false;
|
||||
allowedDevices = [
|
||||
{
|
||||
modifier = "rw";
|
||||
node = "/dev/net/tun";
|
||||
}
|
||||
];
|
||||
bindMounts = {
|
||||
"/home/wayne/node" = {
|
||||
hostPath = "/home/wayne/dev/www/maelstrom/maelstrom";
|
||||
isReadOnly = false;
|
||||
};
|
||||
};
|
||||
|
||||
config = { config, pkgs, ... }:
|
||||
{
|
||||
# networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
networking = {
|
||||
firewall = {
|
||||
enable = false;
|
||||
allowedTCPPorts = [ 22 80 443 1025 5173 8025 8080 ];
|
||||
};
|
||||
enableIPv6 = false;
|
||||
nameservers = [ "192.168.12.25" ];
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"python-2.7.18.8"
|
||||
];
|
||||
|
||||
users = {
|
||||
groups = {};
|
||||
users = {
|
||||
wayne = {
|
||||
isNormalUser = true;
|
||||
description = "Wayne Hayes";
|
||||
extraGroups = [ "networkmanager" "wheel" "wayne" ];
|
||||
openssh.authorizedKeys.keys = [ "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC6q75AXShVjzWerPFU3l0YXIKViNF4eyragL+RQIRwdNDMzW34GgxFhtyLsmRB2jsykf4gx76zSyJoii0K4uhS761w5oDXz9mqHnBzJutDTyltLyfgLsFKY8V2sOtSracWx4y6QrtmBR3MKV642kg5mufVEmCMVxBU9oVpIOJUSW+XNYBawaSkl5SjDMLI7flj0v9Hb2dZqjQigDM1+UHxTzcMoZnR6hAzoZpPNMGyZXtrgEotNywNdpxCqRV9T/KvKHSIVYc1umiDXc+5fyRo9v7CzvYY3MvRKWbgUfTVQRmR2kqwsGAsV5W+PEUb8qqmTjPVXusKxKlpGgYfsvIZOv0LgOvQMemga8psFIS9F4YQ1xuc092bKi1LteC+ZlabMLRMux6Wbhjci+v9wnLfTyBQc6wr3wDFJoELKyaLnI7Cn0KHn0k+BiYCCr2TjKrz9XztL490vprYtvVumNFZ3rxewGnZSn/2czaFfQgnXt+9xQGWWo9TJGE5jq1jThnsIbH3G9JIQ1WhomMq6DDRhGMX2ZKDk/M9/fk0XN5nvQyJNmbiHy5srW/VANx8R9jjsVkvX29MXeK6dzpR4ImywXggpYMeHB6moy06cJUu5WoR8aLS/rO5LbZM2j14AMQ2ZK79QfUJSdloA1/HHlmnx7YtzZOebD6BCR7xgasGRw== wayne"];
|
||||
packages = with pkgs; [
|
||||
sl cowsay lolcat
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.tailscale = {
|
||||
enable = true;
|
||||
package = pkgs.tailscale;
|
||||
interfaceName = "tailscale0";
|
||||
openFirewall = true;
|
||||
port = 41641;
|
||||
useRoutingFeatures = "client";
|
||||
};
|
||||
|
||||
services.mailpit.instances = {
|
||||
local = {
|
||||
smtp = "127.0.0.1:1025";
|
||||
losten = "127.0.0.1:8025";
|
||||
database = "mailpit.db";
|
||||
};
|
||||
};
|
||||
|
||||
services.mongodb = {
|
||||
enable = true;
|
||||
package = pkgs.mongodb-ce;
|
||||
user = "mongodb";
|
||||
bind_ip = "0.0.0.0";
|
||||
dbpath = "/var/db/mongodb";
|
||||
enableAuth = false;
|
||||
pidFile = "/run/mongodb.pid";
|
||||
extraConfig = '''';
|
||||
};
|
||||
|
||||
services.jenkins = {
|
||||
enable = false;
|
||||
};
|
||||
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
ports = [ 22 ];
|
||||
settings = {
|
||||
PasswordAuthentication = true;
|
||||
AllowUsers = [ "wayne" ]; # Allows all users by default. Can be [ "user1" "user2" ]
|
||||
UseDns = true;
|
||||
X11Forwarding = false;
|
||||
PermitRootLogin = "no"; # "yes", "without-password", "prohibit-password", "forced-commands-only", "no"
|
||||
};
|
||||
};
|
||||
|
||||
programs.neovim.enable = true;
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
terminal = "tmux-256color";
|
||||
keyMode = "vi";
|
||||
shortcut = "s";
|
||||
extraConfig = ''
|
||||
set -ag terminal-overrides ",xterm-256color:RGB"
|
||||
set -g mouse on
|
||||
# Resize pane key bindings
|
||||
bind -r < resize-pane -L 5
|
||||
bind -r > resize-pane -R 5
|
||||
bind -r + resize-pane -U 5
|
||||
bind -r - resize-pane -D 5
|
||||
|
||||
set-option -g status-position top
|
||||
'';
|
||||
plugins = [
|
||||
pkgs.tmuxPlugins.weather
|
||||
pkgs.tmuxPlugins.tmux-fzf
|
||||
pkgs.tmuxPlugins.resurrect
|
||||
pkgs.tmuxPlugins.nord
|
||||
];
|
||||
};
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
autosuggestions.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
shellAliases = {};
|
||||
|
||||
histSize = 10000;
|
||||
histFile = "$HOME/.zsh_history";
|
||||
};
|
||||
|
||||
environment.systemPackages = ( with pkgs; [
|
||||
vim git mailpit fzf eza
|
||||
nodePackages.npm nodePackages.browser-sync nodePackages.sass
|
||||
yarn nodemon
|
||||
mongodb-tools
|
||||
python312 python312Packages.pip python312Packages.pipx python312Packages.distutils
|
||||
python27Full
|
||||
xvfb-run xorg.xvfb
|
||||
]);
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@ -1,17 +1,12 @@
|
||||
{ pkgs, config, ... }:
|
||||
{
|
||||
hardware.opengl = { # Renamed hardware.graphics
|
||||
hardware.graphics = { # Renamed hardware.graphics
|
||||
enable = true; # Renamed
|
||||
package = pkgs.mesa.drivers; # Renamed
|
||||
# 32bit Support
|
||||
driSupport32Bit = true; # Renamed
|
||||
enable32Bit = true; # Renamed
|
||||
# package32 = pkgsi686Linux.mesa.drivers;
|
||||
};
|
||||
# hardware.graphics = { # Only in unstable
|
||||
# enable = true;
|
||||
# package = pkgs.mesa.drivers;
|
||||
# enable32Bit = true;
|
||||
# };
|
||||
|
||||
hardware.nvidia = {
|
||||
# Modesetting is required.
|
||||
@ -43,4 +38,11 @@
|
||||
# Optionally, you may need to select the appropriate driver version for your specific GPU.
|
||||
package = config.boot.kernelPackages.nvidiaPackages.stable; # 550.78
|
||||
};
|
||||
|
||||
hardware.nvidia-container-toolkit.enable = true; # moved from docker
|
||||
|
||||
systemd.services.nvidia-control-devices = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig.ExecStart = "${pkgs.linuxPackages.nvidia_x11.bin}/bin/nvidia-smi";
|
||||
};
|
||||
}
|
||||
|
||||
@ -7,7 +7,7 @@
|
||||
rtcqs.enable = true; # install the rtcqs command-line utulity, which analyzes the system and makes suggestions about what to change to make it more audio-friendly.
|
||||
# soundcardPciId = ""; # lspci | grep -i audio
|
||||
kernel = {
|
||||
realtime = true; # Enabling this option will rebuild your kernel.
|
||||
realtime = false; # Enabling this option will rebuild your kernel.
|
||||
packages = pkgs.linuxPackages_rt;
|
||||
};
|
||||
# rtirq Options
|
||||
|
||||
@ -14,6 +14,7 @@
|
||||
192.168.12.40 launchpad.local
|
||||
192.168.12.41 xeon.local
|
||||
192.168.12.41 rover.local
|
||||
192.168.12.41 legacy-node.local
|
||||
|
||||
192.168.12.50 wayne-s-pixel-5
|
||||
192.168.12.55 fire-tablet
|
||||
@ -24,14 +25,18 @@
|
||||
192.168.12.80 robo.local
|
||||
192.168.12.81 nas.local
|
||||
192.168.12.83 homeassistant.local
|
||||
192.168.12.84 tests.local
|
||||
|
||||
# containers
|
||||
192.168.12.71 nextcloud
|
||||
192.168.12.72 livebook
|
||||
192.168.12.73 grocy
|
||||
192.168.12.74 openoffice
|
||||
192.168.12.75 laravel
|
||||
192.168.12.76 nginx - PHP
|
||||
192.168.12.71 nextcloud.local
|
||||
192.168.12.72 livebook.local
|
||||
192.168.12.73 grocy.local
|
||||
192.168.12.74 openoffice.local
|
||||
192.168.12.75 laravel.local
|
||||
192.168.12.76 nginx.local
|
||||
192.168.12.77 glance.local
|
||||
192.168.12.78 vite.local
|
||||
192.168.12.79 node.local
|
||||
|
||||
45.58.52.52 www
|
||||
172.245.111.249 est
|
||||
@ -59,12 +64,13 @@
|
||||
firewall = {
|
||||
enable = true;
|
||||
# { from = 5000; to = 6000; }
|
||||
allowedTCPPorts = [ 80 443 ];
|
||||
allowedTCPPortRanges = [ { from = 35000; to = 36000; } { from = 8000; to = 9000; } ];
|
||||
allowedTCPPorts = [ 80 443 11434 27017 ];
|
||||
allowedUDPPorts = [ 137 138 ]; # Samba
|
||||
allowedTCPPortRanges = [ { from = 137; to = 139; } { from = 35000; to = 36000; } { from = 8000; to = 9000; } ];
|
||||
extraCommands = ''
|
||||
iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns
|
||||
iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns
|
||||
'';
|
||||
trustedInterfaces = [ "br0" "tailscale0" ];
|
||||
trustedInterfaces = [ "br0" "tailscale0" "docker0" ];
|
||||
checkReversePath = "loose"; # Added for Tailscale
|
||||
};
|
||||
bridges = {
|
||||
@ -75,7 +81,7 @@
|
||||
# Required to access containers
|
||||
nat = {
|
||||
enable = true;
|
||||
internalInterfaces = [ "enp4s0" "ve-+" "vb-+" ];
|
||||
internalInterfaces = [ "enp4s0" "ve-+" "vb-+" "veth+" ];
|
||||
externalInterface = "br0";
|
||||
enableIPv6 = false;
|
||||
};
|
||||
|
||||
@ -2,18 +2,35 @@
|
||||
{
|
||||
nix.settings = {
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
max-jobs = 12; # Adjust this to your CPU core count or slightly below
|
||||
substituters = [
|
||||
"https://hyprland.cachix.org"
|
||||
"https://cache.nixos.org/"
|
||||
];
|
||||
trusted-substituters = [
|
||||
"https://ai.cachix.org"
|
||||
"https://hyprland.cachix.org"
|
||||
"https://cache.nixos.org/"
|
||||
];
|
||||
trusted-public-keys = [
|
||||
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||
"ai.cachix.org-1:N9dzRK+alWwoKXQlnn0H6aUx0lU/mspIoz8hMvGvbbc="
|
||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||
];
|
||||
trusted-users = [ "root" "wayne" ];
|
||||
cores = 12;
|
||||
max-jobs = 4; # Adjust this to your CPU core count or slightly below
|
||||
auto-optimise-store = true;
|
||||
access-tokens = "nas.local/git=PAT:glpat-bfbAJxv_4tmgySBZcPSZ";
|
||||
};
|
||||
nixpkgs.config = {
|
||||
allowUnfree = true;
|
||||
cudaSupport = true;
|
||||
acceptedLicenses = [ "unfree" "unfreeRedistributable" ];
|
||||
acceptedLicenses = [
|
||||
"unfree"
|
||||
"unfreeRedistributable"
|
||||
];
|
||||
permittedInsecurePackages = [
|
||||
"freeimage-unstable-2021-11-01"
|
||||
];
|
||||
};
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"freeimage-unstable-2021-11-01"
|
||||
];
|
||||
nix.settings.auto-optimise-store = true;
|
||||
nix.settings.access-tokens = "nas.local/git=PAT:glpat-bfbAJxv_4tmgySBZcPSZ";
|
||||
}
|
||||
}
|
||||
|
||||
@ -48,7 +48,8 @@
|
||||
login.enableKwallet = true;
|
||||
login.kwallet = {
|
||||
enable = true;
|
||||
package = pkgs.plasma5Packages.kwallet-pam; # Comment for plasma6
|
||||
package = pkgs.kdePackages.kwallet-pam;
|
||||
# package = pkgs.plasma5Packages.kwallet-pam; # Comment for plasma6
|
||||
};
|
||||
sddm = {
|
||||
enableKwallet = true;
|
||||
@ -60,7 +61,8 @@
|
||||
};
|
||||
};
|
||||
security.pam.services.wayne.kwallet.enable = true;
|
||||
security.pam.services.wayne.kwallet.package = pkgs.plasma5Packages.kwallet-pam;
|
||||
security.pam.services.wayne.kwallet.package = pkgs.kdePackages.kwallet-pam;
|
||||
# security.pam.services.wayne.kwallet.package = pkgs.plasma5Packages.kwallet-pam;
|
||||
|
||||
security.rtkit.enable = true;
|
||||
|
||||
|
||||
@ -26,9 +26,11 @@
|
||||
wayland = {
|
||||
enable = true;
|
||||
};
|
||||
theme = "catppuccin-mocha";
|
||||
# theme = "catppuccin-mocha";
|
||||
theme = "sddm-astronaut-theme";
|
||||
# Sets logon screen
|
||||
package = pkgs.kdePackages.sddm; # Comment for plasma6
|
||||
extraPackages = [pkgs.sddm-astronaut];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
23
notes/NIxOS-firewall.txt
Normal file
23
notes/NIxOS-firewall.txt
Normal file
@ -0,0 +1,23 @@
|
||||
journalctl -f
|
||||
systemctl status nextcloud
|
||||
systemctl list-units --all --type=service --no-pager
|
||||
systemctl status phpfpm-nextcloud
|
||||
systemctl status nginx
|
||||
cat /nix/store/0qznn2rp2pqvld65qsw680733g8kb85r-nginx.conf
|
||||
cd /nix/store/jda4ssv59707rqgjm5s2xmd7szppixi0-nextcloud-30.0.0-with-apps
|
||||
ls
|
||||
cat config/config.php
|
||||
ls config/
|
||||
occ
|
||||
./occ
|
||||
cat /var/lib/nextcloud/config/override.config.php
|
||||
cat /var/lib/nextcloud/config/override.config.php
|
||||
hostname
|
||||
ifconfig
|
||||
cat /var/lib/nextcloud/config/override.config.php
|
||||
cat /nix/store/4426iqrvgj0b7f3c06h93xmwm6dhw86v-nextcloud-settings.json
|
||||
nixos-firewall-tool show
|
||||
nixos-firewall-tool open tcp 80
|
||||
iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
|
||||
iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
|
||||
systemctl reload firewall
|
||||
37
notes/filter.txt
Normal file
37
notes/filter.txt
Normal file
@ -0,0 +1,37 @@
|
||||
*filter
|
||||
|
||||
# Allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
|
||||
-A INPUT -i lo -j ACCEPT
|
||||
-A INPUT ! -i lo -d ::1/128 -j REJECT
|
||||
|
||||
# Accept all established inbound connections
|
||||
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
|
||||
|
||||
# Allow all outbound traffic - you can modify this to only allow certain traffic
|
||||
-A OUTPUT -j ACCEPT
|
||||
|
||||
# Allow HTTP and HTTPS connections from anywhere (the normal ports for websites and SSL).
|
||||
-A INPUT -p tcp --dport 80 -j ACCEPT
|
||||
-A INPUT -p tcp --dport 443 -j ACCEPT
|
||||
# (optional) Allow HTTP/3 connections from anywhere.
|
||||
-A INPUT -p udp --dport 443 -j ACCEPT
|
||||
|
||||
# Allow SSH connections
|
||||
# The -dport number should be the same port number you set in sshd_config
|
||||
-A INPUT -p tcp -m state --state NEW --dport 23230 -j ACCEPT
|
||||
|
||||
# Allow ping
|
||||
-A INPUT -p icmpv6 -j ACCEPT
|
||||
|
||||
# Log iptables denied calls
|
||||
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
|
||||
|
||||
# Reject all other inbound - default deny unless explicitly allowed policy
|
||||
-A INPUT -j REJECT
|
||||
-A FORWARD -j REJECT
|
||||
|
||||
COMMIT
|
||||
|
||||
|
||||
/etc/letsencrypt/live/mastadon.waynehayesdevelopment.com/fullchain.pem
|
||||
/etc/letsencrypt/live/mastadon.waynehayesdevelopment.com/privkey.pem
|
||||
21
notes/iptables.txt
Normal file
21
notes/iptables.txt
Normal file
@ -0,0 +1,21 @@
|
||||
sudo nix-shell -p iptables --run "iptables -L"
|
||||
...
|
||||
nixos-fw-accept tcp -- anywhere anywhere tcp dpt:ssh
|
||||
nixos-fw-accept tcp -- anywhere anywhere tcp dpt:http
|
||||
nixos-fw-accept tcp -- anywhere anywhere tcp dpt:https
|
||||
...
|
||||
|
||||
sudo nixos-container root-login nextcloud
|
||||
|
||||
[root@nextcloud:~]# curl http://192.168.12.71
|
||||
<!DOCTYPE html>
|
||||
<html class="ng-csp" data-placeholder-focus="false" lang="en" data-locale="en" translate="no" >
|
||||
...
|
||||
|
||||
from host
|
||||
curl http://192.168.12.71:80
|
||||
^C
|
||||
|
||||
s wayne@192.168.12.71
|
||||
Permission denied, please try again.
|
||||
Received disconnect from 192.168.12.71 port
|
||||
2
notes/sshfs.txt
Normal file
2
notes/sshfs.txt
Normal file
@ -0,0 +1,2 @@
|
||||
sshfs -o IdentityFile=/home/wayne/.ssh/id_rsa wayne@mail:/var/vmail/vmail1 /mnt/vm1 -o uid=1000 -o gid=2000
|
||||
sshfs -o IdentityFile=/home/wayne/.ssh/id_rsa wayne@www:/var/www/com.waynehayesdevelopment/nextcloud /mnt/nc -o uid=1000
|
||||
@ -53,4 +53,10 @@
|
||||
enableZshIntegration = true;
|
||||
enableBashIntegration = true;
|
||||
};
|
||||
|
||||
programs.cava = {
|
||||
enable = true;
|
||||
package = pkgs.cava;
|
||||
settings = {};
|
||||
};
|
||||
}
|
||||
@ -31,6 +31,10 @@
|
||||
plugins = [ "git" "aliases" "ansible" "common-aliases" "direnv" "zoxide" "bgnotify" "starship" "eza" "thefuck" "docker" "fzf" "rsync" "sublime" "sudo" "systemd" "tmux" ];
|
||||
theme = "";
|
||||
};
|
||||
localVariables = {
|
||||
# aider-chat
|
||||
LD_LIBRARY_PATH = "${pkgs.stdenv.cc.cc.lib}/lib:${pkgs.zlib}/lib";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@ -65,7 +65,7 @@
|
||||
"HYPRLAND_TRACE=1"
|
||||
|
||||
# "QT_STYLE_OVERRIDE=kvantum"
|
||||
"QT_QPA_PLATFORMTHEME = qt6ct" # qt5ct no display
|
||||
# "QT_QPA_PLATFORMTHEME = qt6ct" # qt5ct no display
|
||||
|
||||
];
|
||||
input = {
|
||||
@ -126,8 +126,9 @@
|
||||
"$mod, F, exec, firefox"
|
||||
"$mod, Z, exec, zen"
|
||||
"$mod, k, exec, kitty"
|
||||
"$mod+SHIFT_R, k, exec, pypr toggle term"
|
||||
"ALTSHIFT, K, exec, konsole"
|
||||
"$mod, G, exec, ghostty"
|
||||
# "$mod+SHIFT_R, k, exec, pypr toggle term"
|
||||
"$mod+Shift_R, K, exec, konsole"
|
||||
"$mod, S, exec, subl"
|
||||
# "CTRLSHIFT, K&B, exec, hyprctl dispatch exec keybase-gui %u"
|
||||
# ",XF86Search, exec, wofi --show drun"
|
||||
@ -226,7 +227,7 @@
|
||||
"dbus-daemon --session --address=unix:path=$XDG_RUNTIME_DIR/bus"
|
||||
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||
"systemctl --user start plasma-polkit-agent"
|
||||
"/nix/store/fj1n850329w79nfvqz22cm36vk4x1ypc-kwallet-pam-6.0.5/libexec/pam_kwallet_init --no-startup-id"
|
||||
"/nix/store/vgj704dz4i60cj70cvq988g1c6yg33l9-kwallet-pam-6.2.5/libexec/pam_kwallet_init --no-startup-id"
|
||||
"waybar &"
|
||||
# "hyprpaper &"
|
||||
"hypridle &"
|
||||
@ -234,15 +235,16 @@
|
||||
"udiskie &"
|
||||
"wl-paste --type text --watch cliphist store"
|
||||
"wl-paste --type image --watch cliphist store"
|
||||
# "${config.home.homeDirectory}/.config/hypr/scripts/start-in-tray.sh"
|
||||
"${config.home.homeDirectory}/.config/hypr/scripts/start-keybase-gui.sh"
|
||||
"${config.home.homeDirectory}/.config/hypr/scripts/start-in-tray.sh &"
|
||||
"${config.home.homeDirectory}/.config/hypr/scripts/start-keybase-gui.sh &"
|
||||
"input-remapper-control --command autoload &"
|
||||
|
||||
"[workspace 4 silent] remmina -c rdp://wayne@xeon.local"
|
||||
# "[workspace 4 silent] remmina -c rdp://wayne@xeon.local"
|
||||
|
||||
"[workspace 7 silent] sublime3"
|
||||
"[workspace 9 silent] keepassxc"
|
||||
"[workspace 9 silent] /home/wayne/.nix-profile/bin/nextcloud --background"
|
||||
"[workspace 9 silent] /nix/store/104jb5a21d1d338zkl1f07si6brsmrk2-keybase-gui-6.2.4/bin/keybase-gui %u &"
|
||||
"[workspace 9 silent] /home/wayne/.nix-profile/bin/keybase-gui %u &"
|
||||
|
||||
# "/nix/store/r3fdp5rlxcihmqhpcgy91sj918wnrmrc-pyprland-2.3.4/bin/pypr --debug ~/tmp/pypr.log"
|
||||
];
|
||||
@ -288,8 +290,8 @@
|
||||
|
||||
|
||||
windowrule = [
|
||||
"opacity 0.9 override 0.5 override 0.8 override, ^(.*)$" # set opacity to 1.0 active, 0.5 inactive and 0.8 fullscreen for kitty
|
||||
"opacity 1 override 0.9 override 0.9 override, ^(zen-alpha)$" # set opacity to 1.0 active, 0.5 inactive and 0.8 fullscreen for kitty
|
||||
# "opacity 0.9 override 0.5 override 0.8 override, ^(.*)$" # set opacity to 1.0 active, 0.5 inactive and 0.8 fullscreen for kitty
|
||||
# "opacity 1 override 0.9 override 0.9 override, ^(zen-alpha)$" # set opacity to 1.0 active, 0.5 inactive and 0.8 fullscreen for kitty
|
||||
# "opacity 1.0 override 0.5 override 0.8 override, ^(kitty)$" # set opacity to 1.0 active, 0.5 inactive and 0.8 fullscreen for kitty
|
||||
"move -50% -50%, float, ^(org.keepassxc.KeePassXC)$"
|
||||
"float, ^(Nextcloud)$"
|
||||
@ -299,7 +301,7 @@
|
||||
## "center,title:^(Save).*$"
|
||||
# "center,title:^(Confirm to replace files)$"
|
||||
# "center,title:^(File Operation Progress)$"
|
||||
"opacity 1.0 override 1 override 1 override, ^(REAPER)$"
|
||||
# "opacity 1.0 override 1 override 1 override, ^(REAPER)$"
|
||||
];
|
||||
|
||||
windowrulev2 = [
|
||||
|
||||
@ -1,23 +1,34 @@
|
||||
{
|
||||
"bluetooth": {
|
||||
"format": " {status}",
|
||||
"format-connected": " {device_alias}",
|
||||
"format-connected-battery": " {device_alias} {device_battery_percentage}%",
|
||||
// "format-device-preference": [ "device1", "device2" ], // preference list deciding the displayed device
|
||||
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
|
||||
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%"
|
||||
},
|
||||
|
||||
"cava": {
|
||||
"framerate": 30,
|
||||
"autosens": 1,
|
||||
"sensitivity": 100,
|
||||
"bars": 14,
|
||||
"lower_cutoff_freq": 50,
|
||||
"higher_cutoff_freq": 10000,
|
||||
"method": "pulse",
|
||||
"source": "auto",
|
||||
"stereo": true,
|
||||
"reverse": false,
|
||||
"bar_delimiter": 0,
|
||||
"monstercat": false,
|
||||
"waves": false,
|
||||
"noise_reduction": 0.77,
|
||||
"input_delay": 2,
|
||||
"format-icons" : ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█" ],
|
||||
"actions": {
|
||||
"on-click-right": "mode"
|
||||
"autosens": 1,
|
||||
// "sensitivity": 100,
|
||||
"bars": 7,
|
||||
"lower_cutoff_freq": 50,
|
||||
"higher_cutoff_freq": 10000,
|
||||
"method": "pipewire",
|
||||
"source": "auto",
|
||||
"stereo": true,
|
||||
"reverse": false,
|
||||
"bar_delimiter": 0,
|
||||
"monstercat": false,
|
||||
"waves": false,
|
||||
"noise_reduction": 0.77,
|
||||
"input_delay": 2,
|
||||
"format-icons" : ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█" ],
|
||||
"actions": {
|
||||
"on-click-right": "mode"
|
||||
}
|
||||
},
|
||||
|
||||
@ -51,6 +62,13 @@
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"custom/pavc": {
|
||||
"format": "",
|
||||
"tooltip-format": "Pulse Audio Controller",
|
||||
"on-click": "pavucontrol-qt",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"disk": {
|
||||
"interval": 30,
|
||||
"format": " {percentage_used}%",
|
||||
@ -114,7 +132,7 @@
|
||||
"pulseaudio/slider": {
|
||||
"min": 0,
|
||||
"max": 100,
|
||||
"orientation": "horizontal"
|
||||
"orientation": "horizontal",
|
||||
},
|
||||
|
||||
"systemd-failed-units": {
|
||||
|
||||
@ -19,7 +19,7 @@
|
||||
include = "~/system/pkgs/wm/waybar/default.json";
|
||||
modules-left = [ "custom/os_button" "hyprland/workspaces#roman" ];
|
||||
modules-center = [ "hyprland/window" "wlr/taskbar" ]; # replace wlr/taskbar
|
||||
modules-right = [ "pulseaudio/slider" "cpu" "temperature" "disk" "tray" "clock" "custom/exit" ];
|
||||
modules-right = [ "custom/pavc" "cava" "pulseaudio/slider" "cpu" "temperature" "disk" "bluetooth" "tray" "clock" "custom/exit" ];
|
||||
|
||||
"custom/os_button" = {
|
||||
"format" = "";
|
||||
|
||||
8
system.sublime-project
Normal file
8
system.sublime-project
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"folders":
|
||||
[
|
||||
{
|
||||
"path": "."
|
||||
}
|
||||
]
|
||||
}
|
||||
1133
system.sublime-workspace
Normal file
1133
system.sublime-workspace
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user