nix-config/users/leyla/packages.nix

128 lines
3.3 KiB
Nix

{ lib, config, pkgs, inputs, ... }:
let
cfg = config.users.leyla;
in
{
imports = [
../../overlays/intellij.nix
../../overlays/vscodium.nix
];
nixpkgs = {
overlays = [
inputs.nix-vscode-extensions.overlays.default
];
};
programs = {
bash.shellAliases = lib.mkIf cfg.isFullUser {
code = "codium";
};
steam = lib.mkIf cfg.isFullUser {
enable = true;
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
};
noisetorch.enable = cfg.isFullUser;
adb.enable = cfg.isFullUser;
};
users.users.leyla.packages = lib.mkIf (cfg.isFullUser || cfg.isThinUser) (
lib.mkMerge [
(
with pkgs; [
# comand line tools
yt-dlp
ffmpeg
imagemagick
]
)
(
lib.mkIf (!cfg.isThinUser) (
with pkgs; [
#foss platforms
signal-desktop
bitwarden
firefox
ungoogled-chromium
libreoffice
inkscape
gimp
krita
freecad
# cura
kicad-small
makemkv
transmission_4-gtk
onionshare
easytag
# rhythmbox
(lib.mkIf cfg.hasGPU obs-studio)
# wireshark
# rpi-imager
# fritzing
# proprietary platforms
discord
obsidian
steam
(lib.mkIf cfg.hasGPU davinci-resolve)
# development tools
(vscode-with-extensions.override {
vscode = vscodium;
vscodeExtensions = with open-vsx; [
jeanp413.open-remote-ssh
] ++ (with vscode-marketplace; [
# vs code feel extensions
ms-vscode.atom-keybindings
akamud.vscode-theme-onedark
streetsidesoftware.code-spell-checker
streetsidesoftware.code-spell-checker-german
streetsidesoftware.code-spell-checker-italian
# nix extensions
pinage404.nix-extension-pack
jnoortheen.nix-ide
# html extensions
formulahendry.auto-rename-tag
ms-vscode.live-server
# js extensions
dsznajder.es7-react-js-snippets
dbaeumer.vscode-eslint
standard.vscode-standard
firsttris.vscode-jest-runner
stylelint.vscode-stylelint
tauri-apps.tauri-vscode
karyfoundation.nearley
# misc extensions
bungcip.better-toml
]);
})
androidStudioPackages.canary
jetbrains.idea-community
dbeaver-bin
bruno
# system tools
protonvpn-gui
openvpn
nextcloud-client
noisetorch
# hardware managment tools
(lib.mkIf cfg.hasPiperMouse piper)
(lib.mkIf cfg.hasOpenRGBHardware openrgb)
(lib.mkIf cfg.hasViaKeyboard via)
]
)
)
]
);
}