2025-08-29 01:32:43 +03:00

254 lines
5.2 KiB
Nix

{ pkgs, inputs, ... }:
{
imports = [
./discord.nix
./java.nix
./fonts.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
firefox
telegram-desktop
(chromium.override { enableWideVine = true; })
revolt-desktop
element-desktop
surf
mumble
electrum
tor-browser-bundle-bin
# 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";
};
};
# # declarative firefox installation
#
# programs.firefox = {
# enable = true;
# profiles.default = {
# isDefault = true;
# name = "default";
# search.default = "ddg";
# search.privateDefault = "ddg";
# };
# };
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"
];
}