Compare commits

..

No commits in common. "19a6ccdf5cfecee1b8d3e4977ea7237fc21ec204" and "024e647f83af8d2eaac95f634415e2b2a5d3bab1" have entirely different histories.

81 changed files with 65 additions and 283 deletions

View file

@ -74,7 +74,6 @@
./systems/mars ./systems/mars
./profiles/user0 ./profiles/user0
./profiles/user1 ./profiles/user1
./profiles/user3
config.nixosModules.mars config.nixosModules.mars
config.nixosModules.core config.nixosModules.core
config.nixosModules.mantle config.nixosModules.mantle
@ -100,7 +99,6 @@
./systems/deimos ./systems/deimos
./profiles/user0 ./profiles/user0
./profiles/user1 ./profiles/user1
./profiles/user2
config.nixosModules.deimos config.nixosModules.deimos
config.nixosModules.core config.nixosModules.core
config.nixosModules.mantle config.nixosModules.mantle

View file

@ -4,16 +4,13 @@ let
sambaPermissions sambaPermissions
userIdForUser0 userIdForUser0
userIdForUser1 userIdForUser1
userIdForUser3
synologyIP synologyIP
; ;
user0 = "nick"; user0 = "nick";
user1 = "garnet"; user1 = "garnet";
user3 = "streaming";
user0Name = "Nick"; user0Name = "Nick";
user1Name = "Garnet"; user1Name = "Garnet";
user3Name = "Streaming";
synologyName = "synology"; synologyName = "synology";
in in
{ {
@ -44,10 +41,4 @@ in
device = "//${synologyIP}/homes/${user1Name}/Minecraft"; device = "//${synologyIP}/homes/${user1Name}/Minecraft";
options = sambaPermissions ++ userIdForUser1; options = sambaPermissions ++ userIdForUser1;
}; };
# Streaming Folder
folder3 = {
mount = "/mnt/media/${synologyName}/${user3}";
device = "//${synologyIP}/homes/${user0Name}";
options = sambaPermissions ++ userIdForUser3;
};
} }

View file

@ -31,9 +31,6 @@ let
userIdForUser1 = [ userIdForUser1 = [
"uid=1001" "uid=1001"
]; ];
userIdForUser3 = [
"uid=1002"
];
dummy = [ dummy = [
]; ];
ceresIP = "192.168.50.140"; ceresIP = "192.168.50.140";

View file

@ -1,20 +0,0 @@
{ user3 }:
let
inherit
user3
;
in
{
name = "Streaming";
aliases = {
};
email = {
address0 = "nick@upRootNutrition.com";
};
paths = {
path0 = "/home/${user3}/Files/Projects"; # Git path
};
sshKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBF9TmImDoYDpsW5VMFbOcuK3aH4TWRtx/xGxT3yUtEN nick@desktop"
];
}

View file

@ -4,19 +4,16 @@ let
user0 = "nick"; user0 = "nick";
user1 = "garnet"; user1 = "garnet";
user2 = "fallaryn"; user2 = "fallaryn";
user3 = "streaming";
in in
{ {
inherit inherit
user0 user0
user1 user1
user2 user2
user3
; ;
users = { users = {
"${user0}" = import (configPath + /user0.nix) { inherit user0; }; "${user0}" = import (configPath + /user0.nix) { inherit user0; };
"${user1}" = import (configPath + /user1.nix) { inherit user1; }; "${user1}" = import (configPath + /user1.nix) { inherit user1; };
"${user2}" = import (configPath + /user2.nix) { inherit user2; }; "${user2}" = import (configPath + /user2.nix) { inherit user2; };
"${user3}" = import (configPath + /user3.nix) { inherit user3; };
}; };
} }

View file

@ -5,12 +5,12 @@
{ {
home.packages = builtins.attrValues { home.packages = builtins.attrValues {
inherit (pkgs.elmPackages) inherit (pkgs.elmPackages)
elm # elm
elm-format # elm-format
elm-land # elm-land
elm-language-server # elm-language-server
elm-review # elm-review
elm-test # elm-test
; ;
}; };
} }

View file

@ -13,12 +13,7 @@ in
deimos deimos
ceres ceres
; ;
inherit (config.people) inherit (config.people) user0 user1 user2;
user0
user1
user2
user3
;
in in
{ {
"${mars.name}-${user0}" = { "${mars.name}-${user0}" = {
@ -40,6 +35,7 @@ in
zathura zathura
kolourPaint kolourPaint
imageViewing imageViewing
obsStudio
daVinci daVinci
mpv mpv
freetube freetube
@ -57,8 +53,8 @@ in
systemMonitor systemMonitor
usbImager usbImager
virtManager virtManager
# hypr hypr
# wayland wayland
theming theming
polychromatic polychromatic
dolphin dolphin
@ -86,30 +82,6 @@ in
; ;
}; };
}; };
"${mars.name}-${user3}" = {
imports = builtins.attrValues {
inherit (modules)
cli
floorp
ghostty
steam
zed
obsidian
okular
kolourPaint
imageViewing
obsStudio
mpv
freetube
vesktop
bitwarden
emote
flameshot
gnomeCalculator
theming
;
};
};
"${venus.name}-${user2}" = { "${venus.name}-${user2}" = {
imports = builtins.attrValues { imports = builtins.attrValues {
inherit (modules) inherit (modules)
@ -205,27 +177,6 @@ in
theming theming
; ;
}; };
};
"${deimos.name}-${user2}" = {
imports = builtins.attrValues {
inherit (modules)
cli
firefox
brave
code
ghostty
gaming
spotify
wpsOffice
obsidian
okular
images
videoPlaying
discord
signal
tools
;
};
}; };
"${charon.name}-${user1}" = { "${charon.name}-${user1}" = {
imports = builtins.attrValues { imports = builtins.attrValues {

View file

@ -32,9 +32,6 @@ in
"elmLS.disableElmLSDiagnostics" = true; "elmLS.disableElmLSDiagnostics" = true;
"elmLS.elmReviewDiagnostics" = "warning"; "elmLS.elmReviewDiagnostics" = "warning";
"elmLS.elmReviewPath" = "elmLS.elmReviewPath" =
"/nix/store/r19y19rx5b7l4dzapbx1g64d30yisby1-elm-review-2.10.3/bin/elm-review"; "/nix/store/ms3g9cnwjhd1adccxar3vxy1gj98zsba-elm-review-2.12.0/bin/elm-review";
"editor.formatOnSave" = true; "editor.formatOnSave" = true;
"[elm]" = {
"editor.defaultFormatter" = "elmTooling.elm-ls-vscode";
};
} }

View file

@ -7,7 +7,4 @@ builtins.attrValues {
wl-clipboard-rs wl-clipboard-rs
xsel xsel
; ;
inherit (pkgs.elmPackages)
elm-language-server
;
} }

View file

@ -35,13 +35,4 @@
}; };
}; };
}; };
"Elm" = {
language_servers = [ "elm-language-server" ];
format_on_save = {
external = {
command = "elm-review";
arguments = [ "--stdin" ];
};
};
};
} }

View file

@ -6,10 +6,12 @@
}: }:
let let
inherit (flake.config.aesthetics.themes) fonts; inherit (flake.config.aesthetics.themes) fonts;
inherit (flake.config.machines.devices) deimos;
hostname = osConfig.networking.hostName;
in in
{ {
confirm-close-surface = false; confirm-close-surface = false;
window-decoration = true; window-decoration = if hostname == deimos.name then true else false;
font-size = fonts.sizes.terminal.size0; font-size = fonts.sizes.terminal.size0;
font-family = fonts.names.name0; font-family = fonts.names.name0;
window-padding-x = 10; window-padding-x = 10;

View file

@ -5,11 +5,9 @@
enable = true; enable = true;
plugins = builtins.attrValues { plugins = builtins.attrValues {
inherit (pkgs.obs-studio-plugins) inherit (pkgs.obs-studio-plugins)
wlrobs
obs-tuna obs-tuna
obs-vkcapture obs-vkcapture
obs-multi-rtmp obs-multi-rtmp
obs-webkitgtk
; ;
}; };
}; };

View file

@ -8,7 +8,6 @@ let
user0 user0
user1 user1
user2 user2
user3
; ;
inherit (flake.config.machines) inherit (flake.config.machines)
devices devices
@ -31,7 +30,6 @@ let
[ [
user0 user0
user1 user1
user3
] ]
else if hostname == charon then else if hostname == charon then
[ user1 ] [ user1 ]

View file

@ -3,7 +3,7 @@
home-manager = { home-manager = {
useGlobalPkgs = true; useGlobalPkgs = true;
useUserPackages = true; useUserPackages = true;
backupFileExtension = "backup5"; backupFileExtension = "backup3";
extraSpecialArgs = { extraSpecialArgs = {
inherit inherit
flake flake

View file

@ -8,7 +8,9 @@ let
user0 user0
user1 user1
user2 user2
user3 ;
inherit (flake.config.people.users.${userLogic})
sshKeys
; ;
inherit (flake.config.machines) inherit (flake.config.machines)
devices devices
@ -20,39 +22,30 @@ let
venus = devices.venus.name; venus = devices.venus.name;
charon = devices.charon.name; charon = devices.charon.name;
# Helper function to get SSH keys for a specific user userLogic =
getUserKeys = user: flake.config.people.users.${user}.sshKeys; if
builtins.elem hostname [
mars
deimos
ceres
]
then
user0
else if hostname == charon then
user1
else if hostname == venus then
user2
else
"";
in in
{ {
users.users = users.users =
if hostname == charon then if hostname == charon then
{ } { }
else if hostname == mars then
{
${user0} = {
openssh.authorizedKeys.keys = getUserKeys user0;
};
${user3} = {
openssh.authorizedKeys.keys = getUserKeys user3;
};
}
else if
builtins.elem hostname [
deimos
ceres
]
then
{
${user0} = {
openssh.authorizedKeys.keys = getUserKeys user0;
};
}
else if hostname == venus then
{
${user2} = {
openssh.authorizedKeys.keys = getUserKeys user2;
};
}
else else
{ }; {
${userLogic} = {
openssh.authorizedKeys.keys = sshKeys;
};
};
} }

View file

@ -10,13 +10,11 @@ in
mullvad mullvad
syncthing syncthing
ollama ollama
# hypr hypr
searx searx
portals wayland
xserver xserver
flatpak flatpak
plasma
sddm
; ;
}; };
}; };

View file

@ -6,7 +6,6 @@
portal = { portal = {
enable = true; enable = true;
wlr.enable = true; wlr.enable = true;
config.common.default = "*";
xdgOpenUsePortal = true; xdgOpenUsePortal = true;
extraPortals = builtins.attrValues { extraPortals = builtins.attrValues {
inherit (pkgs) inherit (pkgs)

View file

@ -1,3 +1,3 @@
{ {
hardware.openrazer.enable = false; hardware.openrazer.enable = true;
} }

View file

@ -26,17 +26,15 @@ in
# sudo mastodon-tootctl accounts modify username --remove-role # sudo mastodon-tootctl accounts modify username --remove-role
# nixpkgs.overlays = [ # nixpkgs.overlays = [
# ( # (final: prev: {
# final: prev: { # mastodon = prev.mastodon.overrideAttrs (oldAttrs: {
# mastodon = prev.mastodon.overrideAttrs (oldAttrs: { # postPatch =
# postPatch = # (oldAttrs.postPatch or "")
# (oldAttrs.postPatch or "") # + ''
# + '' # patch -p1 < ${./config/chars.patch}
# patch -p1 < ${./chars.patch} # '';
# ''; # });
# }); # })
# }
# )
# ]; # ];
services = { services = {
@ -55,7 +53,7 @@ in
passwordFile = config.sops.secrets.mastodon-database.path; passwordFile = config.sops.secrets.mastodon-database.path;
}; };
extraConfig = { extraConfig = {
SINGLE_USER_MODE = "true"; SINGLE_USER_MODE = "false";
SMTP_AUTH_METHOD = "plain"; SMTP_AUTH_METHOD = "plain";
SMTP_DELIVERY_METHOD = "smtp"; SMTP_DELIVERY_METHOD = "smtp";
SMTP_ENABLE_STARTTLS_AUTO = "true"; SMTP_ENABLE_STARTTLS_AUTO = "true";

View file

@ -8,7 +8,6 @@ let
user0 user0
user1 user1
user2 user2
user3
; ;
inherit (flake.config.machines) inherit (flake.config.machines)
devices devices

View file

@ -1,91 +0,0 @@
{
config,
flake,
pkgs,
lib,
...
}:
let
inherit (flake) self;
inherit (flake.config.people) user3;
inherit (flake.config.machines) devices;
inherit (flake.config.people.users.${user3}) name paths;
hostname = config.networking.hostName;
in
{
users = {
users.${user3} = {
description = name;
name = user3;
isNormalUser = true;
shell = pkgs.nushell;
extraGroups = [
"adbusers"
"disk"
"libvirtd"
"netdev"
"networkmanager"
"plugdev"
"samba"
"vboxusers"
"wheel"
];
};
};
home-manager.users = {
${user3} = {
home = {
username = user3;
homeDirectory = "/home/${user3}";
file = {
"./.config/scripts/get_weather.sh" = {
source = ./files/get_weather.sh;
executable = true;
};
".config/wallpaper" = {
source = ./files/wallpaper;
recursive = true;
};
"./.config/vesktop/themes/macchiato-theme.css" = {
source = ./files/themes/vesktop/macchiato-theme.css;
};
};
sessionVariables = {
VISUAL = lib.getExe pkgs.zed-editor;
GTK_THEME = "catppuccin-macchiato-mauve-compact";
};
};
imports = [
{
home.stateVersion = config.system.stateVersion;
}
{
imports = [
self.homeModules."${devices.${hostname}.name}-${user3}"
];
}
];
};
};
systemd.tmpfiles = {
rules =
[
"d ${paths.path0} 0755 ${user3} users -"
]
++ (map (path: "d /home/${user3}/${path} 0755 ${user3} users -") [
"Files"
"Files/Scripts"
"Files/Games"
"Files/Screenshots"
])
++ (map (path: "R /home/${user3}/${path} 0755 ${user3} users - -") [
"Desktop"
"Documents"
"Music"
"Pictures"
"Public"
"Templates"
"Videos"
]);
};
}

View file

@ -1,19 +0,0 @@
#!/usr/bin/env bash
for i in {1..5}
do
text=$(curl -s "https://wttr.in/$1?format=1")
if [[ $? == 0 ]]
then
text=$(echo "$text" | sed -E "s/\s+/ /g")
tooltip=$(curl -s "https://wttr.in/$1?format=4")
if [[ $? == 0 ]]
then
tooltip=$(echo "$tooltip" | sed -E "s/\s+/ /g")
echo "{\"text\":\"$text\", \"tooltip\":\"$tooltip\"}"
exit
fi
fi
sleep 2
done
echo "{\"text\":\"error\", \"tooltip\":\"error\"}"

View file

@ -1 +0,0 @@
@import url("https://catppuccin.github.io/discord/dist/catppuccin-macchiato.theme.css");

Binary file not shown.

Before

Width:  |  Height:  |  Size: 772 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 578 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 886 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 808 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 578 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 632 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 460 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 833 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 467 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 257 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 261 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 501 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 252 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 646 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 422 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 552 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 366 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 747 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 665 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 869 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 302 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 457 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 876 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 529 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 258 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 568 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 323 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 720 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 289 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 405 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 787 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB

View file

@ -4,9 +4,20 @@
... ...
}: }:
let let
inherit (flake.config.people) user0 user1 user3; inherit (flake.config.people)
inherit (flake.config.machines.devices) mars ceres synology; user0
inherit (flake.config.services.instances) samba jellyfin audiobookshelf; user1
;
inherit (flake.config.machines.devices)
mars
ceres
synology
;
inherit (flake.config.services.instances)
samba
jellyfin
audiobookshelf
;
synologySecrets = config.sops.secrets."network/synology".path; synologySecrets = config.sops.secrets."network/synology".path;
ceresSecrets = config.sops.secrets."network/server".path; ceresSecrets = config.sops.secrets."network/server".path;
in in
@ -17,7 +28,6 @@ in
"folder0" "folder0"
"folder1" "folder1"
"folder2" "folder2"
"folder3"
]; ];
storageDrives = [ storageDrives = [
@ -89,7 +99,6 @@ in
systemd.tmpfiles.rules = [ systemd.tmpfiles.rules = [
"Z ${config.home-manager.users.${user0}.home.homeDirectory} 0755 ${user0} users -" "Z ${config.home-manager.users.${user0}.home.homeDirectory} 0755 ${user0} users -"
"Z ${config.home-manager.users.${user1}.home.homeDirectory} 0755 ${user1} users -" "Z ${config.home-manager.users.${user1}.home.homeDirectory} 0755 ${user1} users -"
"Z ${config.home-manager.users.${user3}.home.homeDirectory} 0755 ${user3} users -"
"Z ${mars.storage0.mount} 0755 ${user0} users -" "Z ${mars.storage0.mount} 0755 ${user0} users -"
"Z ${mars.storage1.mount} 0755 ${user0} users -" "Z ${mars.storage1.mount} 0755 ${user0} users -"
]; ];