nixos-config/packages/default.nix

63 lines
2.5 KiB
Nix

{ pkgs ? import <nixpkgs> {} }:
let
pySmartDL = pkgs.callPackage ./development/python/pySmartDL {};
cfscrape = pkgs.callPackage ./development/python/cfscrape {};
system_hotkey = pkgs.callPackage ./development/python/system_hotkey {};
buildFHSUserEnvBubblewrap = pkgs.callPackage ./build-support/build-fhs-userenv-bubblewrap {};
discord-system-electron = pkgs.callPackage ./applications/networking/instant-messengers/discord {
# Wayland
# NOTE: electron under Wayland has no window titlebars
#extraStartupArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland";
};
wrapInSandbox = pkgs.callPackage ./sandbox.nix {};
in {
gamemode = pkgs.callPackage ./tools/games/gamemode { };
key-mapper = pkgs.callPackage ./tools/games/key-mapper {};
vfio-isolate = pkgs.callPackage ./tools/virtualisation/vfio-isolate {};
mopidy-funkwhale = pkgs.callPackage ./applications/audio/mopidy/funkwhale.nix {};
# Not as clean as I hoped, but it works
gnomeExtensions = pkgs.gnomeExtensions // {
notification-timeout = pkgs.callPackage ./desktop/gnome/extensions/notification-timeout {};
windowisready-remover = pkgs.callPackage ./desktop/gnome/extensions/windowisready-remover {};
};
python3Packages = pkgs.python3Packages // {
pySmartDL = pySmartDL;
cfscrape = cfscrape;
system_hotkey = system_hotkey;
};
replaysorcery = pkgs.callPackage ./tools/games/replaysorcery {};
evdev-proxy = pkgs.callPackage ./tools/virtualisation/evdev-proxy {};
anime4k = pkgs.callPackage ./misc/video/anime4k {};
anime-dl = pkgs.callPackage ./tools/video/animedl {
pySmartDL = pySmartDL;
cfscrape = cfscrape;
};
superpaper = pkgs.callPackage ./applications/desktop/superpaper {
system_hotkey = system_hotkey;
};
discord-system-electron-wrapped = wrapInSandbox "${discord-system-electron}/bin/discord" {
name = "discord";
mountInHome = [ ".config/discord" ];
additionalBlacklist = [ "/mnt" ];
chdirTo = "/home/$USER";
pkg = discord-system-electron;
version = "1.0.1";
copyIntoSandbox = [ "share/pixmaps" ];
desktopFileArgs = {
name = "Discord (wrapped)";
#exec = "discord";
icon = "discord";
desktopName = "Discord (wrapped)";
genericName = "Instant Messenger";
categories = "Network;InstantMessaging;";
};
};
iptsd = pkgs.callPackage ./tools/daemons/iptsd {};
surface-control = pkgs.callPackage ./tools/system/surface-control {};
trackma = pkgs.callPackage ./tools/video/trackma {};
}