{ 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 = [ ./gaming.nix ./creative.nix # TODO: more fine grained choices, not every setup needs fspy or rawtherapee ./ios-compat.nix ./syncthing.nix ./kdeconnect.nix ./themeing.nix ./cloud.nix ./networking.nix ./social.nix ./mail.nix ./fonts.nix ./firefox.nix ./x.nix ./obs.nix ]; programs.seahorse.enable = true; security.pam.services.jade.enableGnomeKeyring = true; virtualisation.libvirtd.enable = true; services = { printing = { enable = true; drivers = [ pkgs.gutenprint pkgs.gutenprintBin pkgs.hplip pkgs.brlaser pkgs.brgenml1lpr pkgs.brgenml1cupswrapper pkgs.ptouch-driver ]; }; gnome.gnome-keyring.enable = true; }; programs.xss-lock = { enable = true; lockerCommand = "${pkgs.i3lock}/bin/i3lock -c 1d2021"; }; services.illum.enable = true; services.avahi = { enable = true; nssmdns4 = true; openFirewall = true; }; services.smartd = { enable = true; notifications.test = true; }; home-manager.users.jade = {pkgs, ...}: { home.sessionVariables = { "S10E_JRNL_FILE_LOC" = "/home/jade/Docs/jrnl.md"; }; programs.ssh = { controlMaster = "yes"; }; 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 gscreenshot syncplay # filemanager xfce.thunar xfce.tumbler xfce.thunar-archive-plugin file-roller # media/file viewers vlc mpv evince nomacs jellyfin-media-player # from environment.systemPackages cleanup gparted xdg-desktop-portal-gtk virt-manager ddccontrol-db firebird-emu gitg gpick qdirstat ffmpeg_7-full # 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 plover.dev mupdf inotify-tools logseq ]; xsession = { enable = true; }; }; }