{ pkgs, inputs, ... }: { imports = [ ./discord.nix ./java.nix ./fonts.nix ./firefox.nix ]; home.packages = with pkgs; [ # coding arduino arduino-cli # arduino android-studio jetbrains.idea-community bytecode-viewer maven gradle # java helix dbeaver-bin rustc cargo rustfmt clippy rust-analyzer geckodriver # firefox selenium typescript nodejs terser # ts/js hexedit ollama gftp # when pcmanfm die clang-tools multipath-tools # for pmbootstrap nil # nix lang server typescript-language-server jdt-language-server (python3.withPackages (lib: with lib; [ requests selenium pygame ollama discordpy prettytable colorama pyyaml beautifulsoup4 lxml rich websockets pyside6 shiboken6 psutil # extend this list as need ])) # cli killall usbutils sox jq sshpass spoofdpi zapret cowsay cbonsai rsclock pfetch neofetch fastfetch # i use nixos btw! librespeed-cli inputs.envfetch.packages.x86_64-linux.default (yt-dlp.overrideAttrs (oldAttrs: { buildInputs = oldAttrs.buildInputs or [] ++ [ pkgs.makeWrapper ]; postInstall = oldAttrs.postInstall or "" + '' wrapProgram $out/bin/yt-dlp \ --add-flags "--cookies-from-browser firefox --proxy socks5://127.0.0.1:1080" \ --set HTTP_PROXY "socks5://127.0.0.1:1080" \ --set HTTPS_PROXY "socks5://127.0.0.1:1080" ''; # makes yt-dlp using my proxy + cookies from firefox })) # desktop gimp blender blockbench kdePackages.kdenlive libreoffice davinci-resolve prismlauncher vitetris tetrio-desktop bibata-cursors xonotic openshot-qt shotcut sticky-notes kdePackages.kate ddnet easyeffects kdePackages.kdeconnect-kde gnome-text-editor baobab gnome-system-monitor vlc xarchiver osu-lazer-bin eog (pcmanfm.overrideAttrs (oldAttrs: { buildInputs = oldAttrs.buildInputs or [] ++ [ pkgs.makeWrapper ]; postInstall = oldAttrs.postInstall or "" + '' wrapProgram $out/bin/pcmanfm --add-flags "-n" # make pcmanfm start in new window ''; })) # internet spotify telegram-desktop (chromium.override { enableWideVine = true; }) revolt-desktop element-desktop surf mumble electrum tor-browser-bundle-bin inputs.bRAC.packages.x86_64-linux.default # sort later xdo libappindicator-gtk3 glib alsa-utils SDL2 sqlite gnumake nasm grub2 libisoburn qemu direnv go wineWowPackages.stable dconf patchelf numlockx tigervnc lxmenu-data shared-mime-info gparted pavucontrol p7zip ffmpeg unzip gcc ]; programs.vscode = { enable = true; profiles.default.extensions = with pkgs.vscode-extensions; [ rust-lang.rust-analyzer bbenoist.nix arrterian.nix-env-selector mkhl.direnv tamasfe.even-better-toml ]; package = pkgs.vscode.fhsWithPackages (ps: with ps; [ rustup pkg-config openssl gtk4 pango libnotify ]); }; programs.zed-editor = { enable = true; extensions = ["nix" "toml" "make"]; userSettings = { assistant = { enabled = false; }; lsp = { rust-analyzer = { binary = { path = "/run/current-system/sw/bin/rust-analyzer"; }; }; nix = { binary = { path_lookup = true; }; }; }; load_direnv = "shell_hook"; base_keymap = "VSCode"; theme = { mode = "dark"; light = "Catppuccin Mocha"; dark = "Catppuccin Mocha"; }; }; }; programs.git = { enable = true; lfs.enable = true; }; programs.kitty = { enable = true; enableGitIntegration = true; shellIntegration.enableBashIntegration = true; themeFile = "Hardcore"; settings = { confirm_os_window_close = 0; touch_scroll_multiplier = 3.0; wheel_scroll_multiplier = 3.0; background_opacity = 0.9; font_size = 11.0; }; keybindings = { "ctrl+c" = "copy_and_clear_or_interrupt"; "ctrl+v" = "paste_from_clipboard"; "ctrl+equal" = "increase_font_size"; "ctrl+minus" = "decrease_font_size"; }; }; xdg.mimeApps.defaultApplications = { "text/html" = "firefox.desktop"; "x-scheme-handler/http" = "firefox.desktop"; "x-scheme-handler/https" = "firefox.desktop"; "x-scheme-handler/about" = "firefox.desktop"; "x-scheme-handler/unknown" = "firefox.desktop"; }; services.flatpak.packages = [ "org.gimp.GIMP" "org.vinegarhq.Sober" "com.usebottles.bottles" "it.mijorus.smile" "org.gnome.Builder" "com.github.libresprite.LibreSprite" "net.sapples.LiveCaptions" "io.github.mrvladus.List" "app.zen_browser.zen" "io.github.Soundux" ]; }