# # General Home-manager configuration # # flake.nix # ├─ ./hosts # │ └─ home.nix * # └─ ./modules # ├─ ./programs # │ └─ default.nix # └─ ./services # └─ default.nix # { config, lib, pkgs, unstable, user, location, ... }: { imports = # Home Manager Modules (import ../modules/programs/home.nix) ++ (import ../modules/shell/home.nix) ++ (import ../modules/editors/home.nix) ++ (import ../modules/services/home.nix); home = { username = "${user}"; homeDirectory = "/home/${user}"; packages = with pkgs; [ # Terminal gtop # Resource Manager htop # Resource Manager ranger # File Manager tldr # Helper lazygit # Git tool # Video/Audio feh # Image Viewer mpv # Media Player pavucontrol # Audio Control vlc # Media Player # Apps firefox # Browser chromium # Browser # File Management zathura # PDF Viewer evince # PDF Viewer rsync # Syncer - $ rsync -r dir1/ dir2/ unzip # Zip Files unrar # Rar Files zip # Zip # General configuration alsa-utils # Audio Commands git # Repositories #jq # JSON processor procps # Stop Applications #pciutils # Computer Utility Info pipewire # Sound #usbutils # USB Utility Info wacomtablet # Wacom Tablet wget # Downloader #socat # Data Transfer #thunar # File Manager #zsh # Shell # # General home-manager alacritty # Terminal Emulator #dunst # Notifications #libnotify # Dependency for Dunst #neovim # Text Editor #rofi # Menu #rofi-power-menu # Power Menu #udiskie # Auto Mounting vim # Text Editor # # Xorg configuration #xclip # Console Clipboard #xorg.xev # Input Viewer #xorg.xkill # Kill Applications #xorg.xrandr # Screen Settings #xterm # Terminal # # Xorg home-manager flameshot # Screenshot picom # Compositer # # Wayland configuration #autotiling # Tiling Script #eww-wayland # Bar #grim # Image Grabber #slurp # Region Selector #swappy # Screenshot Editor #swayidle # Idle Management Daemon #waybar # Bar #wev # Input Viewer #wl-clipboard # Console Clipboard #wlr-randr # Screen Settings #xwayland # X for Wayland # # Wayland home-manager #pamixer # Pulse Audio Mixer #swaylock-fancy # Screen Locker # # Desktop #ansible # Automation blueman # Bluetooth #deluge # Torrents discord # Chat telegram-desktop # Chat unstable.cinny-desktop # Chat ffmpeg # Video Support (dslr) #gmtp # Mount MTP (GoPro) #gphoto2 # Digital Photography #handbrake # Encoder #heroic # Game Launcher #hugo # Static Website Builder #lutris # Game Launcher #mkvtoolnix # Matroska Tool #nvtop # Videocard Top #plex-media-player# Media Player #prismlauncher # MC Launcher #steam # Games #simple-scan # Scanning #sshpass # Ansible dependency # # Laptop #cbatticon # Battery Notifications #blueman # Bluetooth #light # Display Brightness #libreoffice # Office Tools #simple-scan # Scanning # # Flatpak obs-studio # Recording/Live Streaming thunderbird # email client spotify obsidian # Text Editor ]; file.".config/wall".source = ../modules/themes/wall; pointerCursor = { # This will set cursor system-wide so applications can not choose their own gtk.enable = true; #name = "Dracula-cursors"; name = "Catppuccin-Mocha-Dark-Cursors"; #package = pkgs.dracula-theme; package = pkgs.catppuccin-cursors.mochaDark; size = 16; }; stateVersion = "23.05"; }; programs = { home-manager.enable = true; }; gtk = { # Theming enable = true; theme = { #name = "Dracula"; name = "Catppuccin-Mocha-Compact-Blue-Dark"; #package = pkgs.dracula-theme; package = pkgs.catppuccin-gtk.override { accents = ["blue"]; size = "compact"; variant = "mocha"; }; }; iconTheme = { name = "Papirus-Dark"; package = pkgs.papirus-icon-theme; }; font = { #name = "JetBrains Mono Medium"; name = "FiraCode Nerd Font Mono Medium"; }; # Cursor is declared under home.pointerCursor }; systemd.user.targets.tray = { # Tray.target can not be found when xsession is not enabled. This fixes the issue. Unit = { Description = "Home Manager System Tray"; Requires = [ "graphical-session-pre.target" ]; }; }; }