This repository has been archived on 2026-04-20. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
AsaJS/options/common/programs.nix

118 lines
3.2 KiB
Nix

{ lib, pkgs, ... }:
{
options.programs = {
wget = {
enable = lib.mkEnableOption "wget";
package = lib.mkPackageOption pkgs "wget" { };
};
tree = {
enable = lib.mkEnableOption "tree";
package = lib.mkPackageOption pkgs "tree" { };
};
ffmpeg = {
enable = lib.mkEnableOption "ffmpeg";
package = lib.mkPackageOption pkgs "ffmpeg-full" { };
};
nodejs = {
enable = lib.mkEnableOption "nodejs";
package = lib.mkPackageOption pkgs "nodejs" { };
};
bun = {
enable = lib.mkEnableOption "bun";
package = lib.mkPackageOption pkgs "bun" { };
};
brightnessctl = {
enable = lib.mkEnableOption "brightnessctl";
package = lib.mkPackageOption pkgs "brightnessctl" { };
};
php = {
enable = lib.mkEnableOption "php";
package = lib.mkPackageOption pkgs "php" { };
};
ntfs3g = {
enable = lib.mkEnableOption "ntfs3g";
package = lib.mkPackageOption pkgs "ntfs3g" { };
};
zip = {
enable = lib.mkEnableOption "zip";
package = lib.mkPackageOption pkgs "zip" { };
};
unzip = {
enable = lib.mkEnableOption "unzip";
package = lib.mkPackageOption pkgs "unzip" { };
};
python = {
enable = lib.mkEnableOption "python";
package = lib.mkPackageOption pkgs "python3" { };
};
jdk = {
enable = lib.mkEnableOption "jdk-25";
package = lib.mkPackageOption pkgs "jdk25" { };
};
nixfmt = {
enable = lib.mkEnableOption "nixfmt";
package = lib.mkPackageOption pkgs "nixfmt" { };
};
winepackages = {
enable = lib.mkEnableOption "Wine and Proton utilities";
packages = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = with pkgs; [
wine
wine64
winetricks
protontricks
];
};
};
quickshell = {
enable = lib.mkEnableOption "quickshell";
package = lib.mkPackageOption pkgs "quickshell" { };
};
papirus-icons = {
enable = lib.mkEnableOption "papirus-icon-theme";
package = lib.mkPackageOption pkgs "papirus-icon-theme" { };
};
kde-packages = {
enable = lib.mkEnableOption "KDE utility packages";
packages = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = with pkgs.kdePackages; [
kservice
dolphin
kate
qt5compat
qtdeclarative
qtimageformats
qtsvg
qtmultimedia
kde-gtk-config
kirigami
ksvg
qtbase
plasma5support
qttools
plasma-sdk
];
};
};
r-tensorflow = {
enable = lib.mkEnableOption "R tensorflow";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.rPackages.tensorflow;
};
};
hyprland-portals = {
enable = lib.mkEnableOption "XDGP for hyprland";
packages = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = with pkgs; [
xdg-desktop-portal
xdg-desktop-portal-wlr
xdg-desktop-portal-hyprland
];
};
};
};
}