{ config, lib, pkgs, ... }: let # window-screenshot = pkgs.writeTextFile "window-screenshot.nu" (builtins.readFile ../../other/scripts/desktop/window-screenshot.nu); window-screenshot = pkgs.writeShellScriptBin "window-screenshot.sh" (builtins.readFile ../../other/scripts/desktop/window-screenshot.sh); # desktop-ctl = pkgs.writeShellScriptBin "desktop-ctl.sh" (builtins.readFile ../scripts/desktop/desktop-ctl.sh); desktop-ctl = import ../../other/scripts/desktop/desktopctl.nix {inherit pkgs;}; # TODO: fix ocr screenshot script ocr-screenshot = pkgs.writeShellScriptBin "ocr-screenshot.sh" (builtins.readFile ../../other/scripts/desktop/ocr-screenshot.sh); # rofi calculator copied from https://github.com/barbuk/menu-qalc menu-qalc = pkgs.writeShellScriptBin "menu-qalc" (builtins.readFile ../../other/scripts/desktop/menu-qalc.sh); in with lib; { imports = [ ./audio.nix ./gaming.nix ./creative.nix # TODO: more fine grained choices, not every setup needs fspy or rawtherapee ./dunst.nix ./compositing.nix ./ios-compat.nix ./syncthing.nix ./kdeconnect.nix ./themeing.nix ./cloud.nix ./networking.nix ./polybar.nix ./social.nix ./mail.nix ./specific-hardware ./evremap.nix ./xmonad.nix ./firefox.nix ]; i18n.inputMethod = { enabled = "fcitx5"; fcitx5.addons = with pkgs; [ fcitx5-mozc fcitx5-gtk ]; }; programs.seahorse.enable = true; security.pam.services.jade.enableGnomeKeyring = true; virtualisation.libvirtd.enable = true; services = { printing.enable = true; gnome.gnome-keyring.enable = true; xserver = { enable = true; layout = "us"; xkbVariant = "altgr-intl"; libinput = { enable = true; }; desktopManager = { xterm.enable = false; }; displayManager = { defaultSession = "none+xmonad"; gdm.enable = true; }; windowManager.xmonad = { enable = true; }; }; }; programs.xss-lock = { enable = true; lockerCommand = "${pkgs.i3lock}/bin/i3lock"; }; services.illum.enable = true; services.avahi.enable = true; services.smartd = { enable = true; notifications.x11.enable = true; notifications.test = true; }; home-manager.users.jade = {pkgs, ...}: { programs.bat = { # TODO: more config enable = true; }; programs.rofi = { enable = true; theme = ../../other/rofi-themes/applauncher.rasi; }; home.packages = with pkgs; [ just bacon magic-wormhole-rs yt-dlp i3lock rofimoji feh xorg.xinput arandr flameshot tesseract5 imagemagick xclip xmacro xorg.xev syncplay # filemanager xfce.thunar xfce.tumbler xfce.thunar-archive-plugin gnome.file-roller # media/file viewers vlc mpv evince nomacs # from environment.systemPackages cleanup font-manager xdotool xorg.xwininfo gparted uhk-agent cool-retro-term xdg-desktop-portal-gtk obsidian zettlr virt-manager ddccontrol-db firebird-emu gitg gpick qdirstat ffmpeg_5 # external libnotify i3lock rofi rofimoji feh xorg.xinput arandr flameshot tesseract5 imagemagick xclip kitty xmacro brightnessctl drawing libqalculate # custom scripts window-screenshot desktop-ctl ocr-screenshot menu-qalc # meow oneko ]; xsession = { enable = true; }; }; }