final: prev: let pySmartDL = prev.callPackage ./development/python/pySmartDL {}; cfscrape = prev.callPackage ./development/python/cfscrape {}; discord-system-electron = prev.callPackage ./applications/networking/instant-messengers/discord { # Wayland # NOTE: electron under Wayland has no window titlebars upstreamElectron = prev.electron_16; extraStartupArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland"; #extraStartupArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland --enable-features=WebRTCPipeWireCapturer"; }; wf-config_0_8 = prev.wf-config.overrideAttrs (old: { version = "0.8-git"; src = prev.fetchFromGitHub { owner = "wayfirewm"; repo = "wf-config"; rev = "e42a3870fb194842a505ad5a9671be1aebda0b0b"; sha256 = "0n6i3hizbqixxjh33950ya8avwqil5k94jbgff1pimcbh9ahpgrr"; }; }); wayfire-master = (prev.wayfireApplications-unwrapped.wayfire.overrideAttrs (old: { version = "0.8.0-20220526"; src = prev.fetchgit { url = "https://github.com/WayfireWM/wayfire.git"; rev = "5dbf0d0fd8ec46cf112f05fb63057f5b6d06b10d"; sha256 = "sha256-ZeaNSlDHoiLnRlHKk14meDbrizIz+nm3iYl90vvo2Ps="; fetchSubmodules = true; }; buildInputs = (map # Override wlroots with wlroots_0_15 (x: if (prev.lib.getName x) == "wlroots" then prev.wlroots_0_15 else x ) old.buildInputs) ++ [ prev.pango prev.libevdev prev.nlohmann_json ]; })).override { wf-config = wf-config_0_8; }; dfl-ipc = prev.libsForQt5.callPackage development/cpp/dfl-ipc {}; wayqt = prev.libsForQt5.callPackage development/cpp/wayqt {}; dfl-utils = prev.libsForQt5.callPackage development/cpp/dfl-utils {}; dfl-applications = prev.libsForQt5.callPackage development/cpp/dfl-app { inherit dfl-ipc; }; kpipewire = prev.libsForQt5.kpipewire.overrideAttrs (old: { src = prev.fetchFromGitLab { owner = "plasma"; repo = "kpipewire"; rev = "ed99b94be40bd8c5b7b2a2f17d0622f11b2ab7fb"; domain = "invent.kde.org"; sha256 = "sha256-KhmhlH7gaFGrvPaB3voQ57CKutnw5DlLOz7gy/3Mzms="; }; }); in { inherit discord-system-electron dfl-ipc dfl-applications dfl-utils wayqt; vfio-isolate = prev.callPackage ./tools/virtualisation/vfio-isolate {}; mopidy-funkwhale = prev.callPackage ./applications/audio/mopidy/funkwhale.nix {}; python3Packages = prev.python3Packages // { pySmartDL = pySmartDL; cfscrape = cfscrape; }; replaysorcery = prev.callPackage ./tools/games/replaysorcery {}; evdev-proxy = prev.callPackage ./tools/virtualisation/evdev-proxy {}; virtiofsd = prev.callPackage ./tools/virtualisation/virtiofsd {}; anime4k = prev.callPackage ./misc/video/anime4k {}; mpv-shader-pack = prev.callPackage ./misc/video/mpv-shader-pack {}; anime-dl = prev.callPackage ./tools/video/animedl { pySmartDL = pySmartDL; cfscrape = cfscrape; }; animdl = prev.callPackage ./misc/video/animdl {}; surface-control = prev.callPackage ./tools/system/surface-control {}; trackma = prev.callPackage ./tools/video/trackma {}; swaync = prev.callPackage ./tools/desktop/swaync {}; sound-gambit = prev.callPackage tools/audio/sound-gambit {}; ebu-norm = prev.callPackage tools/audio/ebu-norm {}; payload-dumper = prev.callPackage tools/system/payload-dumper {}; psst = prev.callPackage tools/audio/psst {}; wlrootsqt = prev.libsForQt5.callPackage ./wlrootsqt.nix {}; #spice-gtk = prev.callPackage temp/spice-gtk/default.nix {}; discord-app = prev.callPackage applications/networking/instant-messengers/discord-app { chromium = prev.ungoogled-chromium; }; zoom-vm = prev.callPackage scripts/zoom-vm {}; razer-cli = prev.callPackage tools/hardware/razer-cli {}; wayfire-firedecor = prev.callPackage applications/wayfire/firedecor { wayfire = wayfire-master; }; sddm-sugar-dark = prev.callPackage themes/sddm/sugar-dark {}; custom-apparmor-utils = prev.callPackage temp/apparmor-utils.nix {}; qtgreet = prev.libsForQt5.callPackage applications/desktop/qtgreet { inherit dfl-applications dfl-utils dfl-ipc wayqt; }; kpipewire = prev.libsForQt5.callPackage development/cpp/libkpipewire {}; xwaylandvideobridge = prev.libsForQt5.callPackage applications/desktop/xwaylandvideobridge { inherit kpipewire; }; #obs-websocket = prev.libsForQt5.callPackage obs/obs-websocket {}; obs-cli = prev.callPackage obs/obs-cli {}; rgb_keyboard = prev.callPackage ./applications/desktop/rgb_keyboard/default.nix {}; }