Renamed home to programs, moved definition to user level
This commit is contained in:
@@ -81,13 +81,15 @@
|
|||||||
)
|
)
|
||||||
];
|
];
|
||||||
|
|
||||||
commonHomeManagerConfig = username: {
|
commonHomeManagerConfig =
|
||||||
|
{ username, monitorSetup }:
|
||||||
|
{
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
backupFileExtension = "backup";
|
backupFileExtension = "backup";
|
||||||
extraSpecialArgs = {
|
extraSpecialArgs = {
|
||||||
inherit inputs username;
|
inherit inputs username monitorSetup;
|
||||||
};
|
};
|
||||||
users.${username} = import ./users/${username}/home.nix;
|
users.${username} = import ./users/${username}/home.nix;
|
||||||
sharedModules = [
|
sharedModules = [
|
||||||
@@ -158,6 +160,7 @@
|
|||||||
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
# ISO Defaults
|
||||||
packages.x86_64-linux.iso = self.nixosConfigurations.iso.config.system.build.isoImage;
|
packages.x86_64-linux.iso = self.nixosConfigurations.iso.config.system.build.isoImage;
|
||||||
packages.x86_64-linux.default = self.packages.x86_64-linux.iso;
|
packages.x86_64-linux.default = self.packages.x86_64-linux.iso;
|
||||||
|
|
||||||
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
kdePackages.dolphin
|
|
||||||
libsForQt5.kio-extras
|
|
||||||
kio-fuse
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,11 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
krusader
|
|
||||||
krename
|
|
||||||
kdiff3
|
|
||||||
# kdePackages.kompare
|
|
||||||
xxdiff
|
|
||||||
];
|
|
||||||
|
|
||||||
}
|
|
@@ -1,4 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
progams.spacefm.enable = true;
|
|
||||||
}
|
|
@@ -1,4 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
@@ -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
|
|
||||||
];
|
|
||||||
}
|
|
@@ -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;
|
|
||||||
}
|
|
@@ -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;
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
}
|
|
@@ -1,9 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
niri
|
|
||||||
xwayland-satellite
|
|
||||||
];
|
|
||||||
|
|
||||||
xdg.configFile."niri/config.kdl".source = ./niri-config.kdl;
|
|
||||||
}
|
|
@@ -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;
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install sqlitebrowser (DB Browser for SQLite)
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
beekeeper-studio
|
|
||||||
];
|
|
||||||
}
|
|
@@ -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 = { };
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
imports = [
|
|
||||||
./git.nix
|
|
||||||
./neovim
|
|
||||||
./fstl.nix
|
|
||||||
./openscad.nix
|
|
||||||
./sqllite_browser.nix
|
|
||||||
./compilers.nix
|
|
||||||
./beekeeper-studio.nix
|
|
||||||
#./newelle.nix
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install fstl
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
fstl
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
home.packages = [ pkgs.gh ];
|
|
||||||
|
|
||||||
programs.git = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
# ... Other options ...
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install fstl
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
newelle
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install OpenSCAD
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
openscad
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install sqlitebrowser (DB Browser for SQLite)
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
sqlitebrowser
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,6 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
airshipper
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
itch
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
lutris
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
xonotic
|
|
||||||
# armagetron
|
|
||||||
# freeciv
|
|
||||||
# mindustry
|
|
||||||
# openra
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,18 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
steam
|
|
||||||
];
|
|
||||||
*/
|
|
||||||
programs.steam = {
|
|
||||||
enable = true;
|
|
||||||
remotePlay.openFirewall = true;
|
|
||||||
dedicatedServer.openFirewall = true;
|
|
||||||
localNetworkGameTransfers.openFirewall = true;
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,7 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
audacity
|
|
||||||
yt-dlp
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
# images
|
|
||||||
imv
|
|
||||||
];
|
|
||||||
|
|
||||||
}
|
|
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
# media - control and enjoy audio/video
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./audio.nix
|
|
||||||
./image.nix
|
|
||||||
./webcam.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
}
|
|
@@ -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
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
@@ -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; [ ];
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
@@ -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
|
|
||||||
# ];
|
|
||||||
}
|
|
@@ -1,4 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.programs.geary.enable = true;
|
|
||||||
}
|
|
@@ -1,13 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
let
|
|
||||||
logseq-patch = pkgs.logseq.override {
|
|
||||||
electron_27 = pkgs.electron_34;
|
|
||||||
};
|
|
||||||
in
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
logseq-patch
|
|
||||||
logseq
|
|
||||||
];
|
|
||||||
|
|
||||||
}
|
|
@@ -1,4 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [ notesnook ];
|
|
||||||
}
|
|
@@ -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";
|
|
||||||
# };
|
|
||||||
}
|
|
@@ -1,4 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.packages = [ pkgs.libsForQt5.okular ];
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install OnlyOffice Desktop Editors
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
onlyoffice-desktopeditors
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install Slic3r
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
slic3r
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,4 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
home.packages = [ pkgs.trilium-desktop ];
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install Element Desktop
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
element-desktop
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,9 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install Teamspeak Desktop
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
teamspeak3
|
|
||||||
# teamspeak6-client
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,9 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install Telegram Desktop
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
telegram-desktop
|
|
||||||
telegram-cli
|
|
||||||
];
|
|
||||||
}
|
|
@@ -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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Install Element Desktop
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
zapzap
|
|
||||||
];
|
|
||||||
}
|
|
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
programs.chromium = {
|
|
||||||
enable = true;
|
|
||||||
commandLineArgs = [ "--enable-features=TouchpadOverscrollHistoryNavigation" ];
|
|
||||||
extensions = [
|
|
||||||
# {id = "";} // extension id, query from chrome web store
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
username,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
programs.firefox = {
|
|
||||||
enable = false;
|
|
||||||
profiles.${username} = { };
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,9 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
|
|
||||||
imports = [
|
|
||||||
./qt.nix
|
|
||||||
# ./gtk.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
}
|
|
@@ -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";
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
@@ -1,6 +1,4 @@
|
|||||||
{
|
{
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
username,
|
username,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
Before Width: | Height: | Size: 9.2 MiB After Width: | Height: | Size: 9.2 MiB |
Before Width: | Height: | Size: 447 KiB After Width: | Height: | Size: 447 KiB |
32
programs/wm/common/waybar/default.nix
Normal file
32
programs/wm/common/waybar/default.nix
Normal file
@@ -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;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
@@ -1,5 +1,14 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
imports = [
|
||||||
|
./common/kitty.nix
|
||||||
|
./common/waybar
|
||||||
|
./common/cava.nix
|
||||||
|
./common/rofi
|
||||||
|
./xdg.nix
|
||||||
|
./common/neovim
|
||||||
|
./common/audio.nix
|
||||||
|
];
|
||||||
|
|
||||||
gtk = {
|
gtk = {
|
||||||
enable = true;
|
enable = true;
|
50
programs/wm/hyprland/default.nix
Normal file
50
programs/wm/hyprland/default.nix
Normal file
@@ -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;
|
||||||
|
};
|
||||||
|
}
|
@@ -11,36 +11,6 @@ let
|
|||||||
apps = "rofi -show window ${theme}";
|
apps = "rofi -show window ${theme}";
|
||||||
in
|
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 = [
|
systemd.user.targets.hyprland-sessionn.Unit.Wants = [
|
||||||
"xdg-desktop-autostart.target"
|
"xdg-desktop-autostart.target"
|
||||||
@@ -296,11 +266,4 @@ in
|
|||||||
"${super}, mouse:273, resizewindow"
|
"${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;
|
|
||||||
};
|
|
||||||
}
|
}
|
14
programs/wm/niri/default.nix
Normal file
14
programs/wm/niri/default.nix
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
# imports = [ ./niri-switcher.nix ];
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
niri
|
||||||
|
xwayland-satellite
|
||||||
|
];
|
||||||
|
|
||||||
|
xdg.configFile."niri/config.kdl".source = ./config.kdl;
|
||||||
|
}
|
6
programs/wm/niri/niri-switcher.nix
Normal file
6
programs/wm/niri/niri-switcher.nix
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
programs.niriswitcher = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
}
|
@@ -1,4 +1,8 @@
|
|||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
monitorSetup,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
@@ -9,36 +13,33 @@
|
|||||||
##################################################################################################################
|
##################################################################################################################
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
../../home/core.nix # Setup Home
|
../core.nix # Setup Home Manager
|
||||||
../../home/xdg.nix # Bindings
|
inputs.spicetify-nix.homeManagerModules.default
|
||||||
|
../../programs/wm
|
||||||
|
../../programs/wm/hyprland
|
||||||
|
../../programs/wm/niri
|
||||||
|
../../programs/webcam.nix
|
||||||
|
];
|
||||||
|
|
||||||
../../home/hyprland # Window Manager
|
home.packages = with pkgs; [
|
||||||
../../home/niri
|
audacity
|
||||||
|
blender
|
||||||
|
slic3r
|
||||||
|
okular
|
||||||
|
obsidian
|
||||||
|
element-desktop
|
||||||
|
zapzap
|
||||||
|
libsForQt5.okular
|
||||||
|
|
||||||
../../home/programs/dev # Dev Tools
|
onlyoffice-desktopeditors
|
||||||
|
openscad
|
||||||
../../home/programs/media/media.nix
|
fstl
|
||||||
../../home/programs/media/audacity.nix
|
sqlitebrowser
|
||||||
../../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
|
|
||||||
|
|
||||||
# Games
|
# Games
|
||||||
../../home/programs/games/itch.nix
|
lutris
|
||||||
../../home/programs/games/lutris.nix
|
airshipper
|
||||||
../../home/programs/games/opensource.nix
|
xonotic
|
||||||
../../home/programs/games/airshipper.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
catppuccin = {
|
catppuccin = {
|
||||||
@@ -46,10 +47,87 @@
|
|||||||
flavor = "mocha";
|
flavor = "mocha";
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.git = {
|
programs = {
|
||||||
|
git = {
|
||||||
|
enable = true;
|
||||||
userName = "DerGrumpf";
|
userName = "DerGrumpf";
|
||||||
userEmail = "p.keier@beyerstedt-it.de";
|
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;
|
home.file.".config/fastfetch/config.jsonc".source = ./config.jsonc;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user