From 03aebab782f4449bb8bd22abb8a9ffe43809094d Mon Sep 17 00:00:00 2001
From: DerGrumpf
Date: Mon, 22 Sep 2025 23:35:57 +0200
Subject: [PATCH] Renamed home to programs, moved definition to user level
---
flake.nix | 31 ++--
home/file_manager/dolphin.nix | 8 -
home/file_manager/krusader.nix | 11 --
home/file_manager/spacefm.nix | 4 -
home/file_manager/thunar.nix | 4 -
home/hyprland/alacritty.nix | 48 ------
home/hyprland/default.nix | 34 -----
home/hyprland/waybar/default.nix | 35 -----
home/niri/default.nix | 9 --
home/programs/common.nix | 58 --------
home/programs/dev/beekeeper-studio.nix | 8 -
home/programs/dev/compilers.nix | 24 ---
home/programs/dev/default.nix | 12 --
home/programs/dev/fstl.nix | 8 -
home/programs/dev/git.nix | 13 --
home/programs/dev/newelle.nix | 8 -
home/programs/dev/openscad.nix | 8 -
home/programs/dev/sqllite_browser.nix | 8 -
home/programs/games/airshipper.nix | 6 -
home/programs/games/itch.nix | 10 --
home/programs/games/lutris.nix | 10 --
home/programs/games/opensource.nix | 14 --
home/programs/games/steam.nix | 18 ---
home/programs/media/audacity.nix | 7 -
home/programs/media/image.nix | 12 --
home/programs/media/media.nix | 14 --
home/programs/media/obs.nix | 14 --
home/programs/media/spicetify.nix | 39 -----
home/programs/productivity/blender.nix | 21 ---
home/programs/productivity/geary.nix | 4 -
home/programs/productivity/logseq.nix | 13 --
home/programs/productivity/notesnook.nix | 4 -
home/programs/productivity/obsidian.nix | 16 --
home/programs/productivity/okular.nix | 4 -
home/programs/productivity/onlyoffice.nix | 8 -
home/programs/productivity/slicer.nix | 8 -
home/programs/productivity/trilium.nix | 4 -
home/programs/social/element.nix | 8 -
home/programs/social/teamspeak.nix | 9 --
home/programs/social/telegram.nix | 9 --
home/programs/social/vesktop.nix | 33 -----
home/programs/social/zapzap.nix | 8 -
home/programs/web/chromium.nix | 14 --
home/programs/web/firefox.nix | 12 --
home/themes/dark/default.nix | 9 --
home/themes/dark/qt.nix | 19 ---
{home/programs/media => programs}/webcam.nix | 0
.../media => programs/wm/common}/audio.nix | 1 -
.../hyprland => programs/wm/common}/cava.nix | 0
.../web => programs/wm/common}/floorp.nix | 2 -
.../hyprland => programs/wm/common}/kitty.nix | 0
.../wm/common}/neovim/config.lua | 0
.../wm/common}/neovim/default.nix | 0
.../wm/common}/neovim/default.nix.back1 | 0
.../wm/common/notifier}/mako.nix | 0
.../wm/common/notifier}/swaync.nix | 0
.../wm/common}/rofi/configs/background.png | Bin
.../rofi/configs/catppuccin-default.rasi | 0
.../rofi/configs/catppuccin-mocha.rasi | 0
.../wm/common}/rofi/configs/custom.rasi | 0
.../wm/common}/rofi/configs/power.jpg | Bin
.../wm/common}/rofi/configs/power.rasi | 0
.../wm/common}/rofi/default.nix | 0
.../wm/common/wallpaper}/hyprpaper.nix | 0
.../wm/common/wallpaper}/swww.nix | 0
.../wm/common/wallpaper}/wpaperd.nix | 0
.../wm/common}/waybar/common.nix | 0
.../wm/common}/waybar/configs/cava.sh | 0
.../wm/common}/waybar/configs/mocha.css | 0
.../wm/common}/waybar/configs/side.css | 0
.../wm/common}/waybar/configs/style.css | 0
programs/wm/common/waybar/default.nix | 32 ++++
.../wm/common}/waybar/dual.nix | 0
.../wm/common}/waybar/side.nix | 0
.../wm/common}/waybar/single.nix | 0
.../wm/common}/waybar/wm.nix | 0
.../dark/gtk.nix => programs/wm/default.nix | 9 ++
.../wm}/hyprland/configs/mocha.conf | 0
programs/wm/hyprland/default.nix | 50 +++++++
{home => programs/wm}/hyprland/hypridle.nix | 0
{home => programs/wm}/hyprland/hyprland.nix | 37 -----
{home => programs/wm}/hyprland/hyprlock.nix | 0
.../wm/niri/config.kdl | 0
programs/wm/niri/default.nix | 14 ++
programs/wm/niri/niri-switcher.nix | 6 +
{home => programs/wm}/xdg.nix | 0
{home => users}/core.nix | 0
users/phil/home.nix | 138 ++++++++++++++----
88 files changed, 236 insertions(+), 731 deletions(-)
delete mode 100644 home/file_manager/dolphin.nix
delete mode 100644 home/file_manager/krusader.nix
delete mode 100644 home/file_manager/spacefm.nix
delete mode 100644 home/file_manager/thunar.nix
delete mode 100644 home/hyprland/alacritty.nix
delete mode 100644 home/hyprland/default.nix
delete mode 100644 home/hyprland/waybar/default.nix
delete mode 100644 home/niri/default.nix
delete mode 100644 home/programs/common.nix
delete mode 100644 home/programs/dev/beekeeper-studio.nix
delete mode 100644 home/programs/dev/compilers.nix
delete mode 100644 home/programs/dev/default.nix
delete mode 100644 home/programs/dev/fstl.nix
delete mode 100644 home/programs/dev/git.nix
delete mode 100644 home/programs/dev/newelle.nix
delete mode 100644 home/programs/dev/openscad.nix
delete mode 100644 home/programs/dev/sqllite_browser.nix
delete mode 100644 home/programs/games/airshipper.nix
delete mode 100644 home/programs/games/itch.nix
delete mode 100644 home/programs/games/lutris.nix
delete mode 100644 home/programs/games/opensource.nix
delete mode 100644 home/programs/games/steam.nix
delete mode 100644 home/programs/media/audacity.nix
delete mode 100644 home/programs/media/image.nix
delete mode 100644 home/programs/media/media.nix
delete mode 100644 home/programs/media/obs.nix
delete mode 100644 home/programs/media/spicetify.nix
delete mode 100644 home/programs/productivity/blender.nix
delete mode 100644 home/programs/productivity/geary.nix
delete mode 100644 home/programs/productivity/logseq.nix
delete mode 100644 home/programs/productivity/notesnook.nix
delete mode 100644 home/programs/productivity/obsidian.nix
delete mode 100644 home/programs/productivity/okular.nix
delete mode 100644 home/programs/productivity/onlyoffice.nix
delete mode 100644 home/programs/productivity/slicer.nix
delete mode 100644 home/programs/productivity/trilium.nix
delete mode 100644 home/programs/social/element.nix
delete mode 100644 home/programs/social/teamspeak.nix
delete mode 100644 home/programs/social/telegram.nix
delete mode 100644 home/programs/social/vesktop.nix
delete mode 100644 home/programs/social/zapzap.nix
delete mode 100644 home/programs/web/chromium.nix
delete mode 100644 home/programs/web/firefox.nix
delete mode 100644 home/themes/dark/default.nix
delete mode 100644 home/themes/dark/qt.nix
rename {home/programs/media => programs}/webcam.nix (100%)
rename {home/programs/media => programs/wm/common}/audio.nix (94%)
rename {home/hyprland => programs/wm/common}/cava.nix (100%)
rename {home/programs/web => programs/wm/common}/floorp.nix (85%)
rename {home/hyprland => programs/wm/common}/kitty.nix (100%)
rename {home/programs/dev => programs/wm/common}/neovim/config.lua (100%)
rename {home/programs/dev => programs/wm/common}/neovim/default.nix (100%)
rename {home/programs/dev => programs/wm/common}/neovim/default.nix.back1 (100%)
rename {home/hyprland => programs/wm/common/notifier}/mako.nix (100%)
rename {home/hyprland => programs/wm/common/notifier}/swaync.nix (100%)
rename {home/hyprland => programs/wm/common}/rofi/configs/background.png (100%)
rename {home/hyprland => programs/wm/common}/rofi/configs/catppuccin-default.rasi (100%)
rename {home/hyprland => programs/wm/common}/rofi/configs/catppuccin-mocha.rasi (100%)
rename {home/hyprland => programs/wm/common}/rofi/configs/custom.rasi (100%)
rename {home/hyprland => programs/wm/common}/rofi/configs/power.jpg (100%)
rename {home/hyprland => programs/wm/common}/rofi/configs/power.rasi (100%)
rename {home/hyprland => programs/wm/common}/rofi/default.nix (100%)
rename {home/hyprland => programs/wm/common/wallpaper}/hyprpaper.nix (100%)
rename {home/hyprland => programs/wm/common/wallpaper}/swww.nix (100%)
rename {home/hyprland => programs/wm/common/wallpaper}/wpaperd.nix (100%)
rename {home/hyprland => programs/wm/common}/waybar/common.nix (100%)
rename {home/hyprland => programs/wm/common}/waybar/configs/cava.sh (100%)
rename {home/hyprland => programs/wm/common}/waybar/configs/mocha.css (100%)
rename {home/hyprland => programs/wm/common}/waybar/configs/side.css (100%)
rename {home/hyprland => programs/wm/common}/waybar/configs/style.css (100%)
create mode 100644 programs/wm/common/waybar/default.nix
rename {home/hyprland => programs/wm/common}/waybar/dual.nix (100%)
rename {home/hyprland => programs/wm/common}/waybar/side.nix (100%)
rename {home/hyprland => programs/wm/common}/waybar/single.nix (100%)
rename {home/hyprland => programs/wm/common}/waybar/wm.nix (100%)
rename home/themes/dark/gtk.nix => programs/wm/default.nix (65%)
rename {home => programs/wm}/hyprland/configs/mocha.conf (100%)
create mode 100644 programs/wm/hyprland/default.nix
rename {home => programs/wm}/hyprland/hypridle.nix (100%)
rename {home => programs/wm}/hyprland/hyprland.nix (89%)
rename {home => programs/wm}/hyprland/hyprlock.nix (100%)
rename home/niri/niri-config.kdl => programs/wm/niri/config.kdl (100%)
create mode 100644 programs/wm/niri/default.nix
create mode 100644 programs/wm/niri/niri-switcher.nix
rename {home => programs/wm}/xdg.nix (100%)
rename {home => users}/core.nix (100%)
diff --git a/flake.nix b/flake.nix
index 84a05ff..4f3f94b 100644
--- a/flake.nix
+++ b/flake.nix
@@ -81,22 +81,24 @@
)
];
- commonHomeManagerConfig = username: {
- home-manager = {
- useGlobalPkgs = true;
- useUserPackages = true;
- backupFileExtension = "backup";
- extraSpecialArgs = {
- inherit inputs username;
+ commonHomeManagerConfig =
+ { username, monitorSetup }:
+ {
+ home-manager = {
+ useGlobalPkgs = true;
+ useUserPackages = true;
+ backupFileExtension = "backup";
+ extraSpecialArgs = {
+ inherit inputs username monitorSetup;
+ };
+ users.${username} = import ./users/${username}/home.nix;
+ sharedModules = [
+ inputs.catppuccin.homeModules.catppuccin
+ inputs.nixcord.homeModules.nixcord
+ inputs.nixvim.homeManagerModules.nixvim
+ ];
};
- users.${username} = import ./users/${username}/home.nix;
- sharedModules = [
- inputs.catppuccin.homeModules.catppuccin
- inputs.nixcord.homeModules.nixcord
- inputs.nixvim.homeManagerModules.nixvim
- ];
};
- };
# System Builder for NixOS
mkSystem =
@@ -158,6 +160,7 @@
in
{
+ # ISO Defaults
packages.x86_64-linux.iso = self.nixosConfigurations.iso.config.system.build.isoImage;
packages.x86_64-linux.default = self.packages.x86_64-linux.iso;
diff --git a/home/file_manager/dolphin.nix b/home/file_manager/dolphin.nix
deleted file mode 100644
index 7bcf4b5..0000000
--- a/home/file_manager/dolphin.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [
- kdePackages.dolphin
- libsForQt5.kio-extras
- kio-fuse
- ];
-}
diff --git a/home/file_manager/krusader.nix b/home/file_manager/krusader.nix
deleted file mode 100644
index b9845f3..0000000
--- a/home/file_manager/krusader.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [
- krusader
- krename
- kdiff3
- # kdePackages.kompare
- xxdiff
- ];
-
-}
diff --git a/home/file_manager/spacefm.nix b/home/file_manager/spacefm.nix
deleted file mode 100644
index b98c91c..0000000
--- a/home/file_manager/spacefm.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{ pkgs, ... }:
-{
- progams.spacefm.enable = true;
-}
diff --git a/home/file_manager/thunar.nix b/home/file_manager/thunar.nix
deleted file mode 100644
index c62047c..0000000
--- a/home/file_manager/thunar.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{ pkgs, ... }:
-{
-
-}
diff --git a/home/hyprland/alacritty.nix b/home/hyprland/alacritty.nix
deleted file mode 100644
index a8eba47..0000000
--- a/home/hyprland/alacritty.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ pkgs, ... }:
-{
- programs.alacritty = {
- enable = true;
- settings = {
- # Font
- font = {
- normal = {
- family = "FiraCode Nerd Font Mono"; # Change to your preferred Nerd Font
- style = "Regular";
- };
- bold = {
- family = "FiraCode Nerd Font Mono";
- style = "Bold";
- };
- italic = {
- family = "FiraCode Nerd Font Mono";
- style = "Italic";
- };
- size = 11;
- };
- window = {
- opacity = 0.6; # Adjust between 0.0 (fully transparent) and 1.0 (opaque)
- padding = {
- x = 10;
- y = 10;
- };
- decorations = "full"; # none, transparent, full, buttonless
- title = "Alacritty";
- dynamic_title = true;
- };
-
- };
- };
-
- fonts = {
- fontconfig = {
- enable = true;
- defaultFonts = {
- monospace = [ "FiraCode Nerd Font Mono" ];
- };
- };
- };
-
- home.packages = with pkgs; [
- fira-code-nerdfont
- ];
-}
diff --git a/home/hyprland/default.nix b/home/hyprland/default.nix
deleted file mode 100644
index 727bde8..0000000
--- a/home/hyprland/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ monitorSetup, ... }:
-{
- imports = [
- ./kitty.nix # Terminal
- ./hyprland.nix
- ./hypridle.nix
- ./hyprlock.nix
- #./hyprpaper.nix
- #./wpaperd.nix
- ./swww.nix
- ./rofi # App Launcher
- ./mako.nix # Notifyer
- ./cava.nix # Music Visualizer
- #./swaync.nix
- ];
-
- programs.waybar =
- if monitorSetup == "single" then
- import ../../home/hyprland/waybar/single.nix
- else if monitorSetup == "dual" then
- import ../../home/hyprland/waybar/dual.nix
- else if monitorSetup == "side" then
- import ../../home/hyprland/waybar/side.nix
- else
- { };
-
- home.file.".config/waybar" = {
- source = ./waybar/configs;
- # copy the scripts directory recursively
- recursive = true;
- };
-
- home.file.".config/hypr/hyprland.conf".enable = false;
-}
diff --git a/home/hyprland/waybar/default.nix b/home/hyprland/waybar/default.nix
deleted file mode 100644
index 756d64a..0000000
--- a/home/hyprland/waybar/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- pkgs,
- monitorSetup,
- ...
-}:
-{
- programs.waybar = {
- enable = true;
- package = pkgs.waybar;
- };
-
- home.file.".config/waybar/style.css" =
- if monitorSetup == "side" then
- {
- source = ./configs/side.css;
- }
- else
- {
- source = ./configs/style.css;
- };
- home.file.".config/waybar/cava.sh".source = ./configs/cava.sh;
- home.file.".config/waybar/mocha.css".source = ./configs/mocha.css;
-
- /*
- home.file.".config/waybar" = {
- source = ./configs;
- # copy the scripts directory recursively
- recursive = true;
- };
-
- home.file.".config/waybar/style.css" = lib.mkIf (monitorSetup == "side") {
- source = ./configs/side.css;
- };
- */
-}
diff --git a/home/niri/default.nix b/home/niri/default.nix
deleted file mode 100644
index e25a574..0000000
--- a/home/niri/default.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [
- niri
- xwayland-satellite
- ];
-
- xdg.configFile."niri/config.kdl".source = ./niri-config.kdl;
-}
diff --git a/home/programs/common.nix b/home/programs/common.nix
deleted file mode 100644
index 4c105c0..0000000
--- a/home/programs/common.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- lib,
- pkgs,
- catppuccin-bat,
- ...
-}:
-{
- home.packages = with pkgs; [
-
- ];
-
- programs = {
- tmux = {
- enable = true;
- clock24 = true;
- keyMode = "vi";
- extraConfig = "mouse on";
- };
-
- bat = {
- enable = true;
- config = {
- pager = "less -FR";
- theme = "catppuccin-mocha";
- };
- themes = {
- # https://raw.githubusercontent.com/catppuccin/bat/main/Catppuccin-mocha.tmTheme
- catppuccin-mocha = {
- src = catppuccin-bat;
- file = "Catppuccin-mocha.tmTheme";
- };
- };
- };
-
- btop.enable = true; # replacement of htop/nmon
- eza.enable = true; # A modern replacement for ‘ls’
- jq.enable = true; # A lightweight and flexible command-line JSON processor
- ssh.enable = true;
- aria2.enable = true;
-
- skim = {
- enable = true;
- enableZshIntegration = true;
- defaultCommand = "rg --files --hidden";
- changeDirWidgetOptions = [
- "--preview 'exa --icons --git --color always -T -L 3 {} | head -200'"
- "--exact"
- ];
- };
- };
-
- services = {
- #syncthing.enable = true;
-
- # auto mount usb drives
- udiskie.enable = true;
- };
-}
diff --git a/home/programs/dev/beekeeper-studio.nix b/home/programs/dev/beekeeper-studio.nix
deleted file mode 100644
index 2bbedc4..0000000
--- a/home/programs/dev/beekeeper-studio.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install sqlitebrowser (DB Browser for SQLite)
- home.packages = with pkgs; [
- beekeeper-studio
- ];
-}
diff --git a/home/programs/dev/compilers.nix b/home/programs/dev/compilers.nix
deleted file mode 100644
index cc9ed50..0000000
--- a/home/programs/dev/compilers.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [
- # C / C++
- clang
- #gcc
- lua
-
- # Rust
- cargo
- rustc
-
- # Zig
- zig
-
- #python
- python314
- ];
-
- programs.go = {
- enable = true;
- packages = { };
- };
-}
diff --git a/home/programs/dev/default.nix b/home/programs/dev/default.nix
deleted file mode 100644
index aecb4ef..0000000
--- a/home/programs/dev/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- imports = [
- ./git.nix
- ./neovim
- ./fstl.nix
- ./openscad.nix
- ./sqllite_browser.nix
- ./compilers.nix
- ./beekeeper-studio.nix
- #./newelle.nix
- ];
-}
diff --git a/home/programs/dev/fstl.nix b/home/programs/dev/fstl.nix
deleted file mode 100644
index 30e78fe..0000000
--- a/home/programs/dev/fstl.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install fstl
- home.packages = with pkgs; [
- fstl
- ];
-}
diff --git a/home/programs/dev/git.nix b/home/programs/dev/git.nix
deleted file mode 100644
index b92e1aa..0000000
--- a/home/programs/dev/git.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- pkgs,
- ...
-}:
-{
- home.packages = [ pkgs.gh ];
-
- programs.git = {
- enable = true;
-
- # ... Other options ...
- };
-}
diff --git a/home/programs/dev/newelle.nix b/home/programs/dev/newelle.nix
deleted file mode 100644
index f7a4ad6..0000000
--- a/home/programs/dev/newelle.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install fstl
- home.packages = with pkgs; [
- newelle
- ];
-}
diff --git a/home/programs/dev/openscad.nix b/home/programs/dev/openscad.nix
deleted file mode 100644
index 6d7b407..0000000
--- a/home/programs/dev/openscad.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install OpenSCAD
- home.packages = with pkgs; [
- openscad
- ];
-}
diff --git a/home/programs/dev/sqllite_browser.nix b/home/programs/dev/sqllite_browser.nix
deleted file mode 100644
index b58ad3d..0000000
--- a/home/programs/dev/sqllite_browser.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install sqlitebrowser (DB Browser for SQLite)
- home.packages = with pkgs; [
- sqlitebrowser
- ];
-}
diff --git a/home/programs/games/airshipper.nix b/home/programs/games/airshipper.nix
deleted file mode 100644
index fc304af..0000000
--- a/home/programs/games/airshipper.nix
+++ /dev/null
@@ -1,6 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [
- airshipper
- ];
-}
diff --git a/home/programs/games/itch.nix b/home/programs/games/itch.nix
deleted file mode 100644
index cd06d8d..0000000
--- a/home/programs/games/itch.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- pkgs,
- config,
- ...
-}:
-{
- home.packages = with pkgs; [
- itch
- ];
-}
diff --git a/home/programs/games/lutris.nix b/home/programs/games/lutris.nix
deleted file mode 100644
index c6588c5..0000000
--- a/home/programs/games/lutris.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- pkgs,
- config,
- ...
-}:
-{
- home.packages = with pkgs; [
- lutris
- ];
-}
diff --git a/home/programs/games/opensource.nix b/home/programs/games/opensource.nix
deleted file mode 100644
index 485a154..0000000
--- a/home/programs/games/opensource.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- pkgs,
- config,
- ...
-}:
-{
- home.packages = with pkgs; [
- xonotic
- # armagetron
- # freeciv
- # mindustry
- # openra
- ];
-}
diff --git a/home/programs/games/steam.nix b/home/programs/games/steam.nix
deleted file mode 100644
index ed35e3d..0000000
--- a/home/programs/games/steam.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- pkgs,
- config,
- ...
-}:
-{
- /*
- home.packages = with pkgs; [
- steam
- ];
- */
- programs.steam = {
- enable = true;
- remotePlay.openFirewall = true;
- dedicatedServer.openFirewall = true;
- localNetworkGameTransfers.openFirewall = true;
- };
-}
diff --git a/home/programs/media/audacity.nix b/home/programs/media/audacity.nix
deleted file mode 100644
index 4bb7244..0000000
--- a/home/programs/media/audacity.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [
- audacity
- yt-dlp
- ];
-}
diff --git a/home/programs/media/image.nix b/home/programs/media/image.nix
deleted file mode 100644
index aae75e8..0000000
--- a/home/programs/media/image.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- pkgs,
- config,
- ...
-}:
-{
- home.packages = with pkgs; [
- # images
- imv
- ];
-
-}
diff --git a/home/programs/media/media.nix b/home/programs/media/media.nix
deleted file mode 100644
index 9ceb7c1..0000000
--- a/home/programs/media/media.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- pkgs,
- config,
- ...
-}:
-# media - control and enjoy audio/video
-{
- imports = [
- ./audio.nix
- ./image.nix
- ./webcam.nix
- ];
-
-}
diff --git a/home/programs/media/obs.nix b/home/programs/media/obs.nix
deleted file mode 100644
index 63c991f..0000000
--- a/home/programs/media/obs.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ pkgs, ... }:
-
-{
- programs.obs-studio = {
- enable = true;
- #enableVirtualCamera = true;
- plugins = with pkgs.obs-studio-plugins; [
- wlrobs
- obs-vkcapture
- obs-backgroundremoval
- obs-pipewire-audio-capture
- ];
- };
-}
diff --git a/home/programs/media/spicetify.nix b/home/programs/media/spicetify.nix
deleted file mode 100644
index 6c6db79..0000000
--- a/home/programs/media/spicetify.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ pkgs, inputs, ... }:
-{
- imports = [
- inputs.spicetify-nix.homeManagerModules.default
- ];
-
- programs.spicetify =
- let
- spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
- in
- {
- enable = true;
- spotifyPackage = pkgs.spotify;
- theme = spicePkgs.themes.catppuccin;
- colorScheme = "mocha";
-
- enabledExtensions = with spicePkgs.extensions; [
- bookmark
- fullAppDisplay
- keyboardShortcut
- popupLyrics
- shuffle
- autoVolume
- betterGenres
- adblock
- wikify
- songStats
- ];
-
- enabledCustomApps = with spicePkgs.apps; [
- lyricsPlus
- newReleases
- marketplace
- ];
-
- #enabledSnippets = with spicePkgs.snippets; [ ];
-
- };
-}
diff --git a/home/programs/productivity/blender.nix b/home/programs/productivity/blender.nix
deleted file mode 100644
index 66d3962..0000000
--- a/home/programs/productivity/blender.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install Blender
- home.packages = with pkgs; [
- blender
- ];
-
- # Optional: Install specific versions of Blender (e.g., LTS)
- # home.packages = with pkgs; [
- # blender-bin # Latest stable release
- # blender-lts
- # ];
-
- # Optional: Install Blender plugins
- # home.packages = with pkgs; [
- # blender
- # blender-addons.io-scene-gltf2 # Example GLTF exporter/importer
- # # Add other Blender addons here
- # ];
-}
diff --git a/home/programs/productivity/geary.nix b/home/programs/productivity/geary.nix
deleted file mode 100644
index b7602e0..0000000
--- a/home/programs/productivity/geary.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{ pkgs, ... }:
-{
- home.programs.geary.enable = true;
-}
diff --git a/home/programs/productivity/logseq.nix b/home/programs/productivity/logseq.nix
deleted file mode 100644
index 907e87a..0000000
--- a/home/programs/productivity/logseq.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ pkgs, ... }:
-let
- logseq-patch = pkgs.logseq.override {
- electron_27 = pkgs.electron_34;
- };
-in
-{
- home.packages = with pkgs; [
- logseq-patch
- logseq
- ];
-
-}
diff --git a/home/programs/productivity/notesnook.nix b/home/programs/productivity/notesnook.nix
deleted file mode 100644
index 34b2aca..0000000
--- a/home/programs/productivity/notesnook.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [ notesnook ];
-}
diff --git a/home/programs/productivity/obsidian.nix b/home/programs/productivity/obsidian.nix
deleted file mode 100644
index 34ece9f..0000000
--- a/home/programs/productivity/obsidian.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install Obsidian
- home.packages = with pkgs; [
- obsidian
- ];
-
- # Optional: You might want to configure Obsidian's data directory.
- # By default, Obsidian stores its data in ~/Obsidian.
- # You can change this using environment variables, but it's less common to manage this declaratively.
- # Example (you might not need this):
- # environment.variables = {
- # OBSIDIAN_VAULT_PATH = "/path/to/your/vaults";
- # };
-}
diff --git a/home/programs/productivity/okular.nix b/home/programs/productivity/okular.nix
deleted file mode 100644
index 8945e82..0000000
--- a/home/programs/productivity/okular.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = [ pkgs.libsForQt5.okular ];
-}
diff --git a/home/programs/productivity/onlyoffice.nix b/home/programs/productivity/onlyoffice.nix
deleted file mode 100644
index 05ae3c0..0000000
--- a/home/programs/productivity/onlyoffice.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install OnlyOffice Desktop Editors
- home.packages = with pkgs; [
- onlyoffice-desktopeditors
- ];
-}
diff --git a/home/programs/productivity/slicer.nix b/home/programs/productivity/slicer.nix
deleted file mode 100644
index a0a7e37..0000000
--- a/home/programs/productivity/slicer.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install Slic3r
- home.packages = with pkgs; [
- slic3r
- ];
-}
diff --git a/home/programs/productivity/trilium.nix b/home/programs/productivity/trilium.nix
deleted file mode 100644
index 3af8504..0000000
--- a/home/programs/productivity/trilium.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = [ pkgs.trilium-desktop ];
-}
diff --git a/home/programs/social/element.nix b/home/programs/social/element.nix
deleted file mode 100644
index 6db1176..0000000
--- a/home/programs/social/element.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install Element Desktop
- home.packages = with pkgs; [
- element-desktop
- ];
-}
diff --git a/home/programs/social/teamspeak.nix b/home/programs/social/teamspeak.nix
deleted file mode 100644
index 5b04f8c..0000000
--- a/home/programs/social/teamspeak.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install Teamspeak Desktop
- home.packages = with pkgs; [
- teamspeak3
- # teamspeak6-client
- ];
-}
diff --git a/home/programs/social/telegram.nix b/home/programs/social/telegram.nix
deleted file mode 100644
index 5e9fa1c..0000000
--- a/home/programs/social/telegram.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install Telegram Desktop
- home.packages = with pkgs; [
- telegram-desktop
- telegram-cli
- ];
-}
diff --git a/home/programs/social/vesktop.nix b/home/programs/social/vesktop.nix
deleted file mode 100644
index 4e0d309..0000000
--- a/home/programs/social/vesktop.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib, ... }:
-{
- programs.nixcord = {
- enable = true;
- discord = lib.mkForce { enable = false; };
- vesktop.enable = true;
-
- config = {
- useQuickCss = true;
- themeLinks = [
- "https://raw.githubusercontent.com/catppuccin/discord/refs/heads/main/themes/mocha.theme.css"
- ];
- frameless = true;
- plugins = {
- betterFolders.enable = true;
- betterRoleContext.enable = true;
- mentionAvatars.enable = true;
- copyUserURLs.enable = true;
- fakeNitro.enable = true;
- decor.enable = true;
- #accountPanelServerProfile = true;
- copyFileContents.enable = true;
- fakeProfileThemes.enable = true;
- friendsSince.enable = true;
- implicitRelationships.enable = true;
- noTrack.enable = true;
- permissionsViewer.enable = true;
- serverInfo.enable = true;
- translate.enable = true;
- };
- };
- };
-}
diff --git a/home/programs/social/zapzap.nix b/home/programs/social/zapzap.nix
deleted file mode 100644
index e537b56..0000000
--- a/home/programs/social/zapzap.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install Element Desktop
- home.packages = with pkgs; [
- zapzap
- ];
-}
diff --git a/home/programs/web/chromium.nix b/home/programs/web/chromium.nix
deleted file mode 100644
index 7164b26..0000000
--- a/home/programs/web/chromium.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- pkgs,
- config,
- ...
-}:
-{
- programs.chromium = {
- enable = true;
- commandLineArgs = [ "--enable-features=TouchpadOverscrollHistoryNavigation" ];
- extensions = [
- # {id = "";} // extension id, query from chrome web store
- ];
- };
-}
diff --git a/home/programs/web/firefox.nix b/home/programs/web/firefox.nix
deleted file mode 100644
index 4441d37..0000000
--- a/home/programs/web/firefox.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- pkgs,
- config,
- username,
- ...
-}:
-{
- programs.firefox = {
- enable = false;
- profiles.${username} = { };
- };
-}
diff --git a/home/themes/dark/default.nix b/home/themes/dark/default.nix
deleted file mode 100644
index 12ca330..0000000
--- a/home/themes/dark/default.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ pkgs, ... }:
-{
-
- imports = [
- ./qt.nix
- # ./gtk.nix
- ];
-
-}
diff --git a/home/themes/dark/qt.nix b/home/themes/dark/qt.nix
deleted file mode 100644
index 27a7112..0000000
--- a/home/themes/dark/qt.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ pkgs, ... }:
-{
-
- home.packages = with pkgs.libsForQt5; [
- qt5ct
- qtstyleplugin-kvantum
- ];
-
- qt = {
- enable = true;
- platformTheme.name = "qtct";
- style.name = "kvantum";
- };
-
- xdg.configFile = {
- "Kvantum/ArcDark".source = "${pkgs.arc-kde-theme}/share/Kvantum/ArcDark";
- "Kvantum/kvantum.kvconfig".text = "[General]\ntheme=ArcDark";
- };
-}
diff --git a/home/programs/media/webcam.nix b/programs/webcam.nix
similarity index 100%
rename from home/programs/media/webcam.nix
rename to programs/webcam.nix
diff --git a/home/programs/media/audio.nix b/programs/wm/common/audio.nix
similarity index 94%
rename from home/programs/media/audio.nix
rename to programs/wm/common/audio.nix
index 9799c6a..f8aec8f 100644
--- a/home/programs/media/audio.nix
+++ b/programs/wm/common/audio.nix
@@ -1,6 +1,5 @@
{
pkgs,
- config,
...
}:
{
diff --git a/home/hyprland/cava.nix b/programs/wm/common/cava.nix
similarity index 100%
rename from home/hyprland/cava.nix
rename to programs/wm/common/cava.nix
diff --git a/home/programs/web/floorp.nix b/programs/wm/common/floorp.nix
similarity index 85%
rename from home/programs/web/floorp.nix
rename to programs/wm/common/floorp.nix
index f7999e7..803c859 100644
--- a/home/programs/web/floorp.nix
+++ b/programs/wm/common/floorp.nix
@@ -1,6 +1,4 @@
{
- pkgs,
- config,
username,
...
}:
diff --git a/home/hyprland/kitty.nix b/programs/wm/common/kitty.nix
similarity index 100%
rename from home/hyprland/kitty.nix
rename to programs/wm/common/kitty.nix
diff --git a/home/programs/dev/neovim/config.lua b/programs/wm/common/neovim/config.lua
similarity index 100%
rename from home/programs/dev/neovim/config.lua
rename to programs/wm/common/neovim/config.lua
diff --git a/home/programs/dev/neovim/default.nix b/programs/wm/common/neovim/default.nix
similarity index 100%
rename from home/programs/dev/neovim/default.nix
rename to programs/wm/common/neovim/default.nix
diff --git a/home/programs/dev/neovim/default.nix.back1 b/programs/wm/common/neovim/default.nix.back1
similarity index 100%
rename from home/programs/dev/neovim/default.nix.back1
rename to programs/wm/common/neovim/default.nix.back1
diff --git a/home/hyprland/mako.nix b/programs/wm/common/notifier/mako.nix
similarity index 100%
rename from home/hyprland/mako.nix
rename to programs/wm/common/notifier/mako.nix
diff --git a/home/hyprland/swaync.nix b/programs/wm/common/notifier/swaync.nix
similarity index 100%
rename from home/hyprland/swaync.nix
rename to programs/wm/common/notifier/swaync.nix
diff --git a/home/hyprland/rofi/configs/background.png b/programs/wm/common/rofi/configs/background.png
similarity index 100%
rename from home/hyprland/rofi/configs/background.png
rename to programs/wm/common/rofi/configs/background.png
diff --git a/home/hyprland/rofi/configs/catppuccin-default.rasi b/programs/wm/common/rofi/configs/catppuccin-default.rasi
similarity index 100%
rename from home/hyprland/rofi/configs/catppuccin-default.rasi
rename to programs/wm/common/rofi/configs/catppuccin-default.rasi
diff --git a/home/hyprland/rofi/configs/catppuccin-mocha.rasi b/programs/wm/common/rofi/configs/catppuccin-mocha.rasi
similarity index 100%
rename from home/hyprland/rofi/configs/catppuccin-mocha.rasi
rename to programs/wm/common/rofi/configs/catppuccin-mocha.rasi
diff --git a/home/hyprland/rofi/configs/custom.rasi b/programs/wm/common/rofi/configs/custom.rasi
similarity index 100%
rename from home/hyprland/rofi/configs/custom.rasi
rename to programs/wm/common/rofi/configs/custom.rasi
diff --git a/home/hyprland/rofi/configs/power.jpg b/programs/wm/common/rofi/configs/power.jpg
similarity index 100%
rename from home/hyprland/rofi/configs/power.jpg
rename to programs/wm/common/rofi/configs/power.jpg
diff --git a/home/hyprland/rofi/configs/power.rasi b/programs/wm/common/rofi/configs/power.rasi
similarity index 100%
rename from home/hyprland/rofi/configs/power.rasi
rename to programs/wm/common/rofi/configs/power.rasi
diff --git a/home/hyprland/rofi/default.nix b/programs/wm/common/rofi/default.nix
similarity index 100%
rename from home/hyprland/rofi/default.nix
rename to programs/wm/common/rofi/default.nix
diff --git a/home/hyprland/hyprpaper.nix b/programs/wm/common/wallpaper/hyprpaper.nix
similarity index 100%
rename from home/hyprland/hyprpaper.nix
rename to programs/wm/common/wallpaper/hyprpaper.nix
diff --git a/home/hyprland/swww.nix b/programs/wm/common/wallpaper/swww.nix
similarity index 100%
rename from home/hyprland/swww.nix
rename to programs/wm/common/wallpaper/swww.nix
diff --git a/home/hyprland/wpaperd.nix b/programs/wm/common/wallpaper/wpaperd.nix
similarity index 100%
rename from home/hyprland/wpaperd.nix
rename to programs/wm/common/wallpaper/wpaperd.nix
diff --git a/home/hyprland/waybar/common.nix b/programs/wm/common/waybar/common.nix
similarity index 100%
rename from home/hyprland/waybar/common.nix
rename to programs/wm/common/waybar/common.nix
diff --git a/home/hyprland/waybar/configs/cava.sh b/programs/wm/common/waybar/configs/cava.sh
similarity index 100%
rename from home/hyprland/waybar/configs/cava.sh
rename to programs/wm/common/waybar/configs/cava.sh
diff --git a/home/hyprland/waybar/configs/mocha.css b/programs/wm/common/waybar/configs/mocha.css
similarity index 100%
rename from home/hyprland/waybar/configs/mocha.css
rename to programs/wm/common/waybar/configs/mocha.css
diff --git a/home/hyprland/waybar/configs/side.css b/programs/wm/common/waybar/configs/side.css
similarity index 100%
rename from home/hyprland/waybar/configs/side.css
rename to programs/wm/common/waybar/configs/side.css
diff --git a/home/hyprland/waybar/configs/style.css b/programs/wm/common/waybar/configs/style.css
similarity index 100%
rename from home/hyprland/waybar/configs/style.css
rename to programs/wm/common/waybar/configs/style.css
diff --git a/programs/wm/common/waybar/default.nix b/programs/wm/common/waybar/default.nix
new file mode 100644
index 0000000..36868e8
--- /dev/null
+++ b/programs/wm/common/waybar/default.nix
@@ -0,0 +1,32 @@
+{
+ pkgs,
+ monitorSetup,
+ ...
+}:
+{
+ programs.waybar =
+ {
+ enable = true;
+ package = pkgs.waybar;
+ }
+ // (
+ if monitorSetup == "single" then
+ import ./single.nix
+ else if monitorSetup == "dual" then
+ import ./dual.nix
+ else if monitorSetup == "side" then
+ import ./side.nix
+ else
+ { }
+ );
+
+ home.file.".config/waybar/cava.sh".source = ./configs/cava.sh;
+ home.file.".config/waybar/mocha.css".source = ./configs/mocha.css;
+
+ home.file.".config/waybar" = {
+ source = ./configs;
+ # copy the scripts directory recursively
+ recursive = true;
+ };
+
+}
diff --git a/home/hyprland/waybar/dual.nix b/programs/wm/common/waybar/dual.nix
similarity index 100%
rename from home/hyprland/waybar/dual.nix
rename to programs/wm/common/waybar/dual.nix
diff --git a/home/hyprland/waybar/side.nix b/programs/wm/common/waybar/side.nix
similarity index 100%
rename from home/hyprland/waybar/side.nix
rename to programs/wm/common/waybar/side.nix
diff --git a/home/hyprland/waybar/single.nix b/programs/wm/common/waybar/single.nix
similarity index 100%
rename from home/hyprland/waybar/single.nix
rename to programs/wm/common/waybar/single.nix
diff --git a/home/hyprland/waybar/wm.nix b/programs/wm/common/waybar/wm.nix
similarity index 100%
rename from home/hyprland/waybar/wm.nix
rename to programs/wm/common/waybar/wm.nix
diff --git a/home/themes/dark/gtk.nix b/programs/wm/default.nix
similarity index 65%
rename from home/themes/dark/gtk.nix
rename to programs/wm/default.nix
index a0127f1..23bef30 100644
--- a/home/themes/dark/gtk.nix
+++ b/programs/wm/default.nix
@@ -1,5 +1,14 @@
{ pkgs, ... }:
{
+ imports = [
+ ./common/kitty.nix
+ ./common/waybar
+ ./common/cava.nix
+ ./common/rofi
+ ./xdg.nix
+ ./common/neovim
+ ./common/audio.nix
+ ];
gtk = {
enable = true;
diff --git a/home/hyprland/configs/mocha.conf b/programs/wm/hyprland/configs/mocha.conf
similarity index 100%
rename from home/hyprland/configs/mocha.conf
rename to programs/wm/hyprland/configs/mocha.conf
diff --git a/programs/wm/hyprland/default.nix b/programs/wm/hyprland/default.nix
new file mode 100644
index 0000000..6cf3e99
--- /dev/null
+++ b/programs/wm/hyprland/default.nix
@@ -0,0 +1,50 @@
+{
+ pkgs,
+ ...
+}:
+{
+ imports = [
+ ./hyprland.nix
+ ./hypridle.nix
+ ./hyprlock.nix
+ ];
+ home.packages = with pkgs; [
+ grim
+ slurp
+ wl-clipboard
+ ];
+
+ home.file.".config/hypr" = {
+ source = ./configs;
+ # copy the scripts directory recursively
+ recursive = true;
+ };
+
+ home.file.".config/hypr/avatar" = {
+ source = ../../../avatar;
+ recursive = true;
+ };
+
+ home.file = {
+ "Pictures/Avatar" = {
+ source = ../../../avatar;
+ recursive = true;
+ };
+ };
+
+ home.pointerCursor = {
+ gtk.enable = true;
+ package = pkgs.bibata-cursors;
+ name = "Bibata-Modern-Classic";
+ size = 16;
+ };
+
+ home.file.".config/hypr/hyprland.conf".enable = false;
+
+ # NOTE: this executable is used by greetd to start a wayland session when system boot up
+ # with such a vendor-no-locking script, we can switch to another wayland compositor without modifying greetd's config in NixOS module
+ home.file.".wayland-session" = {
+ source = "${pkgs.hyprland}/bin/Hyprland";
+ executable = true;
+ };
+}
diff --git a/home/hyprland/hypridle.nix b/programs/wm/hyprland/hypridle.nix
similarity index 100%
rename from home/hyprland/hypridle.nix
rename to programs/wm/hyprland/hypridle.nix
diff --git a/home/hyprland/hyprland.nix b/programs/wm/hyprland/hyprland.nix
similarity index 89%
rename from home/hyprland/hyprland.nix
rename to programs/wm/hyprland/hyprland.nix
index 8bdefcd..c82eec6 100644
--- a/home/hyprland/hyprland.nix
+++ b/programs/wm/hyprland/hyprland.nix
@@ -11,36 +11,6 @@ let
apps = "rofi -show window ${theme}";
in
{
- home.packages = with pkgs; [
- grim
- slurp
- wl-clipboard
- ];
-
- home.file.".config/hypr" = {
- source = ./configs;
- # copy the scripts directory recursively
- recursive = true;
- };
-
- home.file.".config/hypr/avatar" = {
- source = ../../avatar;
- recursive = true;
- };
-
- home.file = {
- "Pictures/Avatar" = {
- source = ../../avatar;
- recursive = true;
- };
- };
-
- home.pointerCursor = {
- gtk.enable = true;
- package = pkgs.bibata-cursors;
- name = "Bibata-Modern-Classic";
- size = 16;
- };
systemd.user.targets.hyprland-sessionn.Unit.Wants = [
"xdg-desktop-autostart.target"
@@ -296,11 +266,4 @@ in
"${super}, mouse:273, resizewindow"
];
};
-
- # NOTE: this executable is used by greetd to start a wayland session when system boot up
- # with such a vendor-no-locking script, we can switch to another wayland compositor without modifying greetd's config in NixOS module
- home.file.".wayland-session" = {
- source = "${package}/bin/Hyprland";
- executable = true;
- };
}
diff --git a/home/hyprland/hyprlock.nix b/programs/wm/hyprland/hyprlock.nix
similarity index 100%
rename from home/hyprland/hyprlock.nix
rename to programs/wm/hyprland/hyprlock.nix
diff --git a/home/niri/niri-config.kdl b/programs/wm/niri/config.kdl
similarity index 100%
rename from home/niri/niri-config.kdl
rename to programs/wm/niri/config.kdl
diff --git a/programs/wm/niri/default.nix b/programs/wm/niri/default.nix
new file mode 100644
index 0000000..d48e836
--- /dev/null
+++ b/programs/wm/niri/default.nix
@@ -0,0 +1,14 @@
+{
+ pkgs,
+ ...
+}:
+{
+ # imports = [ ./niri-switcher.nix ];
+
+ home.packages = with pkgs; [
+ niri
+ xwayland-satellite
+ ];
+
+ xdg.configFile."niri/config.kdl".source = ./config.kdl;
+}
diff --git a/programs/wm/niri/niri-switcher.nix b/programs/wm/niri/niri-switcher.nix
new file mode 100644
index 0000000..d117cc8
--- /dev/null
+++ b/programs/wm/niri/niri-switcher.nix
@@ -0,0 +1,6 @@
+{ ... }:
+{
+ programs.niriswitcher = {
+ enable = true;
+ };
+}
diff --git a/home/xdg.nix b/programs/wm/xdg.nix
similarity index 100%
rename from home/xdg.nix
rename to programs/wm/xdg.nix
diff --git a/home/core.nix b/users/core.nix
similarity index 100%
rename from home/core.nix
rename to users/core.nix
diff --git a/users/phil/home.nix b/users/phil/home.nix
index 4deff9c..0819b66 100644
--- a/users/phil/home.nix
+++ b/users/phil/home.nix
@@ -1,4 +1,8 @@
{
+ pkgs,
+ lib,
+ inputs,
+ monitorSetup,
...
}:
{
@@ -9,36 +13,33 @@
##################################################################################################################
imports = [
- ../../home/core.nix # Setup Home
- ../../home/xdg.nix # Bindings
+ ../core.nix # Setup Home Manager
+ inputs.spicetify-nix.homeManagerModules.default
+ ../../programs/wm
+ ../../programs/wm/hyprland
+ ../../programs/wm/niri
+ ../../programs/webcam.nix
+ ];
- ../../home/hyprland # Window Manager
- ../../home/niri
+ home.packages = with pkgs; [
+ audacity
+ blender
+ slic3r
+ okular
+ obsidian
+ element-desktop
+ zapzap
+ libsForQt5.okular
- ../../home/programs/dev # Dev Tools
-
- ../../home/programs/media/media.nix
- ../../home/programs/media/audacity.nix
- ../../home/programs/media/obs.nix
- ../../home/programs/media/spicetify.nix
-
- ../../home/programs/productivity/blender.nix
- ../../home/programs/productivity/slicer.nix
- ../../home/programs/productivity/okular.nix
- ../../home/programs/productivity/obsidian.nix
-
- ../../home/programs/social/element.nix
- ../../home/programs/social/zapzap.nix
- #../../home/programs/social/teamspeak.nix
- ../../home/programs/social/vesktop.nix
-
- ../../home/programs/web/floorp.nix
+ onlyoffice-desktopeditors
+ openscad
+ fstl
+ sqlitebrowser
# Games
- ../../home/programs/games/itch.nix
- ../../home/programs/games/lutris.nix
- ../../home/programs/games/opensource.nix
- ../../home/programs/games/airshipper.nix
+ lutris
+ airshipper
+ xonotic
];
catppuccin = {
@@ -46,10 +47,87 @@
flavor = "mocha";
};
- programs.git = {
- userName = "DerGrumpf";
- userEmail = "p.keier@beyerstedt-it.de";
- };
+ programs = {
+ git = {
+ enable = true;
+ userName = "DerGrumpf";
+ userEmail = "p.keier@beyerstedt-it.de";
+ };
+ nixcord = {
+ enable = true;
+ discord = lib.mkForce { enable = false; };
+ vesktop.enable = true;
+
+ config = {
+ useQuickCss = true;
+ themeLinks = [
+ "https://raw.githubusercontent.com/catppuccin/discord/refs/heads/main/themes/mocha.theme.css"
+ ];
+ frameless = true;
+ plugins = {
+ betterFolders.enable = true;
+ betterRoleContext.enable = true;
+ mentionAvatars.enable = true;
+ copyUserURLs.enable = true;
+ fakeNitro.enable = true;
+ decor.enable = true;
+ #accountPanelServerProfile = true;
+ copyFileContents.enable = true;
+ fakeProfileThemes.enable = true;
+ friendsSince.enable = true;
+ implicitRelationships.enable = true;
+ noTrack.enable = true;
+ permissionsViewer.enable = true;
+ serverInfo.enable = true;
+ translate.enable = true;
+ };
+ };
+ };
+
+ obs-studio = {
+ enable = true;
+ #enableVirtualCamera = true;
+ plugins = with pkgs.obs-studio-plugins; [
+ wlrobs
+ obs-vkcapture
+ obs-backgroundremoval
+ obs-pipewire-audio-capture
+ ];
+ };
+
+ spicetify =
+ let
+ spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
+ in
+ {
+ enable = true;
+ spotifyPackage = pkgs.spotify;
+ theme = spicePkgs.themes.catppuccin;
+ colorScheme = "mocha";
+
+ enabledExtensions = with spicePkgs.extensions; [
+ bookmark
+ fullAppDisplay
+ keyboardShortcut
+ popupLyrics
+ shuffle
+ autoVolume
+ betterGenres
+ adblock
+ wikify
+ songStats
+ ];
+
+ enabledCustomApps = with spicePkgs.apps; [
+ lyricsPlus
+ newReleases
+ marketplace
+ ];
+
+ #enabledSnippets = with spicePkgs.snippets; [ ];
+
+ };
+ };
home.file.".config/fastfetch/config.jsonc".source = ./config.jsonc;
}