7e0d8135dd
MATE currently uses a scope, but it doesn't actually expose that scope to callers, which makes overriding packages in overlays quite difficult as you have to figure out where each package is plumbed through in the attrset. You end up with contrived expressions like: mate = super.mate // { # ... extraPackages = (self.lib.remove super.mate.whatever super.mate.extraPackages) ++ [ self.mate.whatever ]; }; This change exposes the scope so that we can use overrideScope' in overlays instead.
102 lines
3.5 KiB
Nix
102 lines
3.5 KiB
Nix
{ pkgs, lib }:
|
|
|
|
let
|
|
packages = self: with self; {
|
|
|
|
# Update script tailored to mate packages from git repository
|
|
mateUpdateScript = { pname, version, odd-unstable ? true, rev-prefix ? "v", url ? null }:
|
|
pkgs.gitUpdater {
|
|
inherit pname version odd-unstable rev-prefix;
|
|
url = if url == null then "https://git.mate-desktop.org/${pname}" else url;
|
|
attrPath = "mate.${pname}";
|
|
};
|
|
|
|
atril = callPackage ./atril { };
|
|
caja = callPackage ./caja { };
|
|
caja-dropbox = callPackage ./caja-dropbox { };
|
|
caja-extensions = callPackage ./caja-extensions { };
|
|
caja-with-extensions = callPackage ./caja-with-extensions { };
|
|
engrampa = callPackage ./engrampa { };
|
|
eom = callPackage ./eom { };
|
|
libmatekbd = callPackage ./libmatekbd { };
|
|
libmatemixer = callPackage ./libmatemixer { };
|
|
libmateweather = callPackage ./libmateweather { };
|
|
marco = callPackage ./marco { };
|
|
mate-applets = callPackage ./mate-applets { };
|
|
mate-backgrounds = callPackage ./mate-backgrounds { };
|
|
mate-calc = callPackage ./mate-calc { };
|
|
mate-common = callPackage ./mate-common { };
|
|
mate-control-center = callPackage ./mate-control-center { };
|
|
mate-desktop = callPackage ./mate-desktop { };
|
|
mate-icon-theme = callPackage ./mate-icon-theme { };
|
|
mate-icon-theme-faenza = callPackage ./mate-icon-theme-faenza { };
|
|
mate-indicator-applet = callPackage ./mate-indicator-applet { };
|
|
mate-media = callPackage ./mate-media { };
|
|
mate-menus = callPackage ./mate-menus { };
|
|
mate-netbook = callPackage ./mate-netbook { };
|
|
mate-notification-daemon = callPackage ./mate-notification-daemon { };
|
|
mate-panel = callPackage ./mate-panel { };
|
|
mate-polkit = callPackage ./mate-polkit { };
|
|
mate-power-manager = callPackage ./mate-power-manager { };
|
|
mate-sensors-applet = callPackage ./mate-sensors-applet { };
|
|
mate-session-manager = callPackage ./mate-session-manager { };
|
|
mate-settings-daemon = callPackage ./mate-settings-daemon { };
|
|
mate-settings-daemon-wrapped = callPackage ./mate-settings-daemon/wrapped.nix { };
|
|
mate-screensaver = callPackage ./mate-screensaver { };
|
|
mate-system-monitor = callPackage ./mate-system-monitor { };
|
|
mate-terminal = callPackage ./mate-terminal { };
|
|
mate-themes = callPackage ./mate-themes { };
|
|
mate-tweak = callPackage ./mate-tweak { };
|
|
mate-user-guide = callPackage ./mate-user-guide { };
|
|
mate-user-share = callPackage ./mate-user-share { };
|
|
mate-utils = callPackage ./mate-utils { };
|
|
mozo = callPackage ./mozo { };
|
|
pluma = callPackage ./pluma { inherit (pkgs.gnome) adwaita-icon-theme; };
|
|
python-caja = callPackage ./python-caja { };
|
|
|
|
basePackages = [
|
|
caja
|
|
libmatekbd
|
|
libmatemixer
|
|
libmateweather
|
|
marco
|
|
mate-common
|
|
mate-control-center
|
|
mate-desktop
|
|
mate-icon-theme
|
|
mate-menus
|
|
mate-notification-daemon
|
|
mate-panel
|
|
mate-polkit
|
|
mate-session-manager
|
|
mate-settings-daemon
|
|
mate-settings-daemon-wrapped
|
|
mate-themes
|
|
];
|
|
|
|
extraPackages = [
|
|
atril
|
|
caja-extensions
|
|
engrampa
|
|
eom
|
|
mate-applets
|
|
mate-backgrounds
|
|
mate-calc
|
|
mate-indicator-applet
|
|
mate-media
|
|
mate-netbook
|
|
mate-power-manager
|
|
mate-screensaver
|
|
mate-sensors-applet
|
|
mate-system-monitor
|
|
mate-terminal
|
|
mate-user-guide
|
|
# mate-user-share
|
|
mate-utils
|
|
mozo
|
|
pluma
|
|
];
|
|
|
|
};
|
|
|
|
in lib.makeScope pkgs.newScope packages
|