refactor into modules
This commit is contained in:
18
home-manager/modules/overlays.nix
Normal file
18
home-manager/modules/overlays.nix
Normal file
@@ -0,0 +1,18 @@
|
||||
{ pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
system = pkgs.stdenv.hostPlatform.system;
|
||||
pinnedPkgs = inputs.nixpkgs-pre-ad01.legacyPackages.${system};
|
||||
in {
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
nixpkgs.overlays = [
|
||||
inputs.rust-overlay.overlays.default
|
||||
(final: prev: {
|
||||
gqrx = pinnedPkgs.gqrx;
|
||||
krita = pinnedPkgs.krita;
|
||||
})
|
||||
];
|
||||
|
||||
home.packages = [ pkgs.rustup ];
|
||||
}
|
||||
144
home-manager/modules/packages.nix
Normal file
144
home-manager/modules/packages.nix
Normal file
@@ -0,0 +1,144 @@
|
||||
{ pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
system = pkgs.stdenv.hostPlatform.system;
|
||||
in {
|
||||
home.packages = with pkgs; [
|
||||
# Window manager & desktop environment
|
||||
inputs.niri.packages.${system}.niri
|
||||
inputs.noctalia.packages.${system}.default
|
||||
inputs.quickshell.packages.${system}.default
|
||||
swayidle
|
||||
swww
|
||||
kanshi
|
||||
|
||||
# System utilities & monitoring
|
||||
btop
|
||||
htop
|
||||
fastfetch
|
||||
dua
|
||||
nh
|
||||
dconf
|
||||
gparted
|
||||
mission-center
|
||||
gnome-software
|
||||
|
||||
# CLI tools & utilities
|
||||
ripgrep
|
||||
fd
|
||||
jq
|
||||
entr
|
||||
mdcat
|
||||
sshpass
|
||||
exiftool
|
||||
|
||||
# File managers & compression tools
|
||||
yazi
|
||||
nautilus
|
||||
file-roller
|
||||
p7zip
|
||||
unzip
|
||||
zip
|
||||
unrar
|
||||
|
||||
# Media viewers & players
|
||||
loupe
|
||||
evince
|
||||
vlc
|
||||
mpv
|
||||
zathura
|
||||
|
||||
# SDR
|
||||
gqrx
|
||||
gnuradio
|
||||
gnuradioPackages.lora_sdr
|
||||
|
||||
# Media creation & editing
|
||||
gimp
|
||||
blender
|
||||
ffmpeg
|
||||
yt-dlp
|
||||
waifu2x-converter-cpp
|
||||
libheif
|
||||
upscayl
|
||||
inkscape
|
||||
|
||||
# Office & productivity
|
||||
libreoffice-fresh
|
||||
gnome-text-editor
|
||||
gnome-calculator
|
||||
obsidian
|
||||
simple-scan
|
||||
system-config-printer
|
||||
|
||||
# Development tools
|
||||
neovim
|
||||
vscode.fhs
|
||||
lazygit
|
||||
cargo-cross
|
||||
cargo-generate
|
||||
probe-rs-tools
|
||||
elf2uf2-rs
|
||||
dbeaver-bin
|
||||
gnome-boxes
|
||||
cutecom
|
||||
inputs.binaryninja.packages.${system}.binary-ninja-free-wayland
|
||||
helix
|
||||
|
||||
# AI development tools
|
||||
inputs.claude-code-nix.packages.${system}.default
|
||||
inputs.codex-cli-nix.packages.${system}.default
|
||||
gemini-cli
|
||||
|
||||
# Internet & networking
|
||||
firefox-bin
|
||||
filezilla
|
||||
qbittorrent
|
||||
tor-browser
|
||||
nmap
|
||||
gnome-network-displays
|
||||
|
||||
# Privacy & security
|
||||
gnupg
|
||||
pinentry-qt
|
||||
kdePackages.kleopatra
|
||||
monero-gui
|
||||
|
||||
# Python & AI
|
||||
python314
|
||||
openai-whisper
|
||||
|
||||
# Document processing
|
||||
tectonic
|
||||
mermaid-cli
|
||||
|
||||
# Astronomy
|
||||
stellarium
|
||||
kstars
|
||||
|
||||
# Wrap PrismLauncher to fix Minecraft GLFW Wayland issues
|
||||
(pkgs.symlinkJoin {
|
||||
name = "prismlauncher";
|
||||
paths = [ pkgs.prismlauncher ];
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/prismlauncher \
|
||||
--set SDL_VIDEODRIVER "x11"
|
||||
'';
|
||||
})
|
||||
|
||||
# Wrap Krita to work with XWayland (Krita doesn't support native Wayland)
|
||||
(pkgs.symlinkJoin {
|
||||
name = "krita";
|
||||
paths = [ pkgs.krita ];
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/krita \
|
||||
--set DISPLAY ":0" \
|
||||
--set QT_AUTO_SCREEN_SCALE_FACTOR "0" \
|
||||
--set QT_SCALE_FACTOR "2" \
|
||||
--set QT_FONT_DPI "96"
|
||||
'';
|
||||
})
|
||||
];
|
||||
}
|
||||
15
home-manager/modules/programs/git.nix
Normal file
15
home-manager/modules/programs/git.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.git = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user.name = "Lukrecja Pleskaczyńska";
|
||||
user.email = "lukrecjaaa@proton.me";
|
||||
credential.helper = "store";
|
||||
http."https://git.bgs.local:3000/" = {
|
||||
sslCAInfo = "/home/lusia/VSTech-vpn/bgs-git-ca.crt";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
9
home-manager/modules/programs/gpg-agent.nix
Normal file
9
home-manager/modules/programs/gpg-agent.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
services.gpg-agent = {
|
||||
enable = true;
|
||||
pinentry.package = pkgs.pinentry-qt;
|
||||
enableSshSupport = true;
|
||||
};
|
||||
}
|
||||
13
home-manager/modules/programs/obs-studio.nix
Normal file
13
home-manager/modules/programs/obs-studio.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.obs-studio = {
|
||||
enable = true;
|
||||
plugins = with pkgs.obs-studio-plugins; [
|
||||
wlrobs
|
||||
obs-backgroundremoval
|
||||
obs-pipewire-audio-capture
|
||||
obs-vaapi
|
||||
];
|
||||
};
|
||||
}
|
||||
62
home-manager/modules/theming.nix
Normal file
62
home-manager/modules/theming.nix
Normal file
@@ -0,0 +1,62 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
stylix = {
|
||||
enable = true;
|
||||
image = ../wallpaper;
|
||||
base16Scheme = ../colors.yaml;
|
||||
polarity = "dark";
|
||||
targets.qt.enable = true;
|
||||
};
|
||||
|
||||
dconf = {
|
||||
enable = true;
|
||||
settings = {
|
||||
"org/gnome/desktop/interface" = {
|
||||
color-scheme = "prefer-dark";
|
||||
};
|
||||
"org/gnome/nautilus/preferences" = {
|
||||
show-image-thumbnails = "always";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
|
||||
iconTheme = {
|
||||
name = "MoreWaita";
|
||||
package = pkgs.morewaita-icon-theme;
|
||||
};
|
||||
|
||||
cursorTheme = {
|
||||
name = "Adwaita";
|
||||
package = pkgs.adwaita-icon-theme;
|
||||
};
|
||||
|
||||
gtk3.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
|
||||
gtk4.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
};
|
||||
|
||||
home.pointerCursor = {
|
||||
name = "Adwaita";
|
||||
package = pkgs.adwaita-icon-theme;
|
||||
size = 24;
|
||||
gtk.enable = true;
|
||||
x11 = {
|
||||
enable = true;
|
||||
defaultCursor = "Adwaita";
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
pywal
|
||||
pywalfox-native
|
||||
morewaita-icon-theme
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user