dotfiles/common/pkgs.nix

208 lines
4 KiB
Nix
Raw Permalink Normal View History

{ pkgs, config }:
let
cpkg = import ../customPackages { inherit pkgs; };
pinned = import ./pinned.nix { inherit pkgs config; };
in
{
dev = with pkgs;[
2024-10-28 19:57:27 -04:00
meson
deno
rustup
android-studio-tools
vscode-langservers-extracted
cmake
nodePackages_latest.typescript-language-server
lua
go
eslint_d
typescript
php
clang
gnumake
gradle
lazygit
linuxHeaders
2024-09-02 16:01:02 -04:00
eslint
nodePackages.nodemon
nodePackages.ts-node
nodePackages.pnpm
corepack_22
2024-09-02 16:01:02 -04:00
prisma
prisma-engines
nodePackages.live-server
gh
glib
glibc
2024-10-28 19:57:27 -04:00
(python312.withPackages (ps: with ps;[
pytesseract
pillow
pyzbar
pygobject3
nanoid
loguru
evdev
setuptools
xlib
]))
2024-05-27 14:09:56 -04:00
nodejs_22
];
gui = with pkgs;[
2024-10-28 19:57:27 -04:00
cpkg.frog
legcord
obsidian
bottles
parsec-bin
jadx
android-studio
wireshark
2024-09-17 21:24:54 -04:00
pinned.vscode
2024-10-28 19:57:27 -04:00
pinned.etcher
insomnia
teamviewer
davinci-resolve
warp-terminal
gnome.gnome-calculator
libsForQt5.kcolorchooser
python312Packages.openai-whisper
firefox-devedition
cinny-desktop
element-desktop
protonvpn-gui
xclicker
polychromatic
jellyfin-media-player
arrpc
filezilla
virt-manager
qemu_full
shotcut
pinta
gimp
inkscape
#OCR ENGINE
tesseract4
2024-08-14 18:12:06 -04:00
(pkgs.discord.override {
withVencord = true;
})
vesktop
xsel
spotify
pulseaudioFull
pavucontrol
2024-06-20 20:03:04 -04:00
# jetbrains.pycharm-community
2024-10-28 19:57:27 -04:00
jbeap.idea-ultimate
google-chrome
bitwarden
nerdfonts
2024-09-17 21:24:54 -04:00
# vscodium
kitty
rofi
thunderbird
vlc
jellyfin-web
obs-studio
tokyo-night-gtk
ksshaskpass
libsForQt5.kinit
];
general = with pkgs; [
imagemagick
2024-10-28 19:57:27 -04:00
onefetch
p7zip
dig
bat
2024-07-05 11:14:34 -04:00
usbutils
tree
ffmpeg
yt-dlp
neofetch
sops
hyfetch
fzf
zsh-powerlevel10k
zsh-syntax-highlighting
jq
unzip
btop
];
gaming = with pkgs; [
(prismlauncher.override {
jdks = [
jdk8
jdk17
jdk22
];
})
protontricks
lutris
];
scripts = [
(pkgs.writeShellScriptBin "paste" ''
command -v xsel > /dev/null
if [[ $? -eq 0 ]]; then
xsel -ob && exit 0
fi
command -v wslclip > /dev/null
if [[ $? -eq 0 ]]; then
wslclip -g && exit 0
fi
'')
2024-06-19 02:37:19 -04:00
(pkgs.writeShellScriptBin "http2ssh" ''
set -eo pipefail
2024-06-19 02:37:19 -04:00
if [[ -z $1 ]]; then
echo "You need to provide a remote name";
echo "Avilable remotes";
git remote -v;
exit 1;
fi
URL=''$(git remote get-url $1);
URL=''${URL/https:\/\//git@};
URL=''${URL/\//:};
git remote set-url $1 $URL;
2024-06-19 02:37:19 -04:00
''
)
(pkgs.writeShellScriptBin "copy" ''
command -v xsel > /dev/null
if [[ $? -eq 0 ]]; then
xsel -ib $@ && exit 0
fi
command -v wslclip > /dev/null
if [[ $? -eq 0 ]]; then
wslclip $@ && exit 0
fi
'')
(pkgs.writeShellScriptBin "git_fetchAll" ''
git branch -r | grep -v '\->' | sed "s,\x1B\[[0-9;]*[a-zA-Z],,g" | while read remote; do git branch --track "''${remote#origin/}" "$remote"; done
git fetch --all
git pull --all
'')
(pkgs.writeShellScriptBin "install_eslint" ''
set -x
cp /home/${config.home.username}/.config/.eslintrc.json .
pkgs=("@stylistic/eslint-plugin" "@typescript-eslint/eslint-plugin")
if [[ -z $1 ]]; then
echo please specify npm, pnpm, or yarn
exit 1
fi
for i in "''${pkgs[@]}"; do
`$1 i -D $i`
done
'')
(pkgs.writeShellScriptBin "math" ''
set -e
python3 -c "print($*)"
'')
(pkgs.writeShellScriptBin "ocr" ''
set -euo pipefail
TEMP=$(mktemp)
flameshot gui -s -r > $TEMP
(tesseract $TEMP --oem 1 -l eng | copy )|| copy "OCR RETUNRED NON-ZERO"
'')
];
wsl = with pkgs;[
wslu
];
}