Mate toplevel (#488488)
This commit is contained in:
@@ -316,6 +316,13 @@
|
||||
- nixos/modules/services/x11/desktop-managers/mate.nix
|
||||
- nixos/tests/mate.nix
|
||||
- pkgs/desktops/mate/**/*
|
||||
- pkgs/by-name/ca/caja/**/*
|
||||
- pkgs/by-name/ca/caja-*/**/*
|
||||
- pkgs/by-name/li/libmatekbd/**/*
|
||||
- pkgs/by-name/li/libmatemixer/**/*
|
||||
- pkgs/by-name/li/libmateweather/**/*
|
||||
- pkgs/by-name/ma/marco/**/*
|
||||
- pkgs/by-name/ma/mate-*/**/*
|
||||
|
||||
"6.topic: module system":
|
||||
- any:
|
||||
|
||||
@@ -102,6 +102,8 @@ of pulling the upstream container image from Docker Hub. If you want the old beh
|
||||
|
||||
- `services.desktopManager.gnome` no longer installs the Geary e-mail client since it is not part of the GNOME [core applications](https://apps.gnome.org/) list. Geary's position in the default favorite apps section has been replaced by GNOME Text Editor. To keep it installed, add `programs.geary.enable = true;` to your configuration.
|
||||
|
||||
- MATE packages have been moved to top level (e.g. if you previously added `pkgs.mate.caja` to `environment.systemPackages`, you will need to change it to `pkgs.caja`).
|
||||
|
||||
- `walker` has been updated to 2.0.0+, which is a complete rewrite in rust.
|
||||
|
||||
It now requires a running `elephant` application launcher backend service, which can be enabled using the new `services.elephpant.enable`.
|
||||
|
||||
@@ -186,12 +186,12 @@ in
|
||||
++ lib.optional config.networking.networkmanager.enable pkgs.networkmanagerapplet
|
||||
++ (utils.removePackagesByName [
|
||||
nemo
|
||||
mate.eom
|
||||
mate.pluma
|
||||
mate.atril
|
||||
mate.engrampa
|
||||
mate.mate-calc
|
||||
mate.mate-system-monitor
|
||||
eom
|
||||
pluma
|
||||
atril
|
||||
engrampa
|
||||
mate-calc
|
||||
mate-system-monitor
|
||||
vlc
|
||||
|
||||
# Supplemental tooling.
|
||||
|
||||
@@ -29,14 +29,14 @@ in
|
||||
|
||||
extraPanelApplets = mkOption {
|
||||
default = [ ];
|
||||
example = literalExpression "with pkgs.mate; [ mate-applets ]";
|
||||
example = literalExpression "with pkgs; [ mate-applets ]";
|
||||
type = types.listOf types.package;
|
||||
description = "Extra applets to add to mate-panel.";
|
||||
};
|
||||
|
||||
extraCajaExtensions = mkOption {
|
||||
default = [ ];
|
||||
example = lib.literalExpression "with pkgs.mate; [ caja-extensions ]";
|
||||
example = lib.literalExpression "with pkgs; [ caja-extensions ]";
|
||||
type = types.listOf types.package;
|
||||
description = "Extra extensions to add to caja.";
|
||||
};
|
||||
@@ -46,7 +46,7 @@ in
|
||||
|
||||
environment.mate.excludePackages = mkOption {
|
||||
default = [ ];
|
||||
example = literalExpression "[ pkgs.mate.mate-terminal pkgs.mate.pluma ]";
|
||||
example = literalExpression "[ pkgs.mate-terminal pkgs.pluma ]";
|
||||
type = types.listOf types.package;
|
||||
description = "Which MATE packages to exclude from the default environment";
|
||||
};
|
||||
@@ -56,7 +56,7 @@ in
|
||||
config = mkMerge [
|
||||
(mkIf (cfg.enable || cfg.enableWaylandSession) {
|
||||
services.displayManager.sessionPackages = [
|
||||
pkgs.mate.mate-session-manager
|
||||
pkgs.mate-session-manager
|
||||
];
|
||||
|
||||
environment.extraInit = lib.optionalString config.services.gnome.gcr-ssh-agent.enable ''
|
||||
@@ -70,24 +70,58 @@ in
|
||||
# Debugging
|
||||
environment.sessionVariables.MATE_SESSION_DEBUG = mkIf cfg.debug "1";
|
||||
|
||||
environment.systemPackages = utils.removePackagesByName (
|
||||
pkgs.mate.basePackages
|
||||
++ pkgs.mate.extraPackages
|
||||
++ [
|
||||
(pkgs.mate.caja-with-extensions.override {
|
||||
extensions = cfg.extraCajaExtensions;
|
||||
})
|
||||
(pkgs.mate.mate-panel-with-applets.override {
|
||||
applets = cfg.extraPanelApplets;
|
||||
})
|
||||
pkgs.desktop-file-utils
|
||||
pkgs.glib
|
||||
pkgs.gtk3.out
|
||||
pkgs.shared-mime-info
|
||||
pkgs.xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/
|
||||
pkgs.yelp # for 'Contents' in 'Help' menus
|
||||
]
|
||||
) config.environment.mate.excludePackages;
|
||||
environment.systemPackages = utils.removePackagesByName (with pkgs; [
|
||||
# Base packages.
|
||||
libmatekbd
|
||||
libmatemixer
|
||||
libmateweather
|
||||
marco
|
||||
mate-common
|
||||
mate-control-center
|
||||
mate-desktop
|
||||
mate-icon-theme
|
||||
mate-menus
|
||||
mate-notification-daemon
|
||||
mate-polkit
|
||||
mate-session-manager
|
||||
mate-settings-daemon
|
||||
mate-settings-daemon-wrapped
|
||||
mate-themes
|
||||
|
||||
# Extra packages.
|
||||
atril
|
||||
caja-extensions # for caja-sendto
|
||||
engrampa
|
||||
eom
|
||||
mate-applets
|
||||
mate-backgrounds
|
||||
mate-calc
|
||||
mate-indicator-applet
|
||||
mate-media
|
||||
mate-netbook
|
||||
mate-power-manager
|
||||
mate-screensaver
|
||||
mate-system-monitor
|
||||
mate-terminal
|
||||
mate-user-guide
|
||||
# mate-user-share
|
||||
mate-utils
|
||||
mozo
|
||||
pluma
|
||||
|
||||
(caja-with-extensions.override {
|
||||
extensions = cfg.extraCajaExtensions;
|
||||
})
|
||||
(mate-panel-with-applets.override {
|
||||
applets = cfg.extraPanelApplets;
|
||||
})
|
||||
desktop-file-utils
|
||||
glib
|
||||
gtk3.out
|
||||
shared-mime-info
|
||||
xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/
|
||||
yelp # for 'Contents' in 'Help' menus
|
||||
]) config.environment.mate.excludePackages;
|
||||
|
||||
programs.dconf.enable = true;
|
||||
# Shell integration for VTE terminals
|
||||
@@ -101,24 +135,24 @@ in
|
||||
services.gnome.glib-networking.enable = true;
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
services.gnome.gcr-ssh-agent.enable = mkDefault true;
|
||||
services.udev.packages = [ pkgs.mate.mate-settings-daemon ];
|
||||
services.udev.packages = [ pkgs.mate-settings-daemon ];
|
||||
services.gvfs.enable = true;
|
||||
services.upower.enable = config.powerManagement.enable;
|
||||
services.libinput.enable = mkDefault true;
|
||||
|
||||
security.pam.services.mate-screensaver.unixAuth = true;
|
||||
|
||||
xdg.portal.configPackages = mkDefault [ pkgs.mate.mate-desktop ];
|
||||
xdg.portal.configPackages = mkDefault [ pkgs.mate-desktop ];
|
||||
|
||||
environment.pathsToLink = [ "/share" ];
|
||||
})
|
||||
(mkIf cfg.enableWaylandSession {
|
||||
programs.wayfire.enable = true;
|
||||
|
||||
environment.sessionVariables.NIX_GSETTINGS_OVERRIDES_DIR = "${pkgs.mate.mate-gsettings-overrides}/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas";
|
||||
environment.sessionVariables.NIX_GSETTINGS_OVERRIDES_DIR = "${pkgs.mate-gsettings-overrides}/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas";
|
||||
|
||||
environment.systemPackages = [ pkgs.mate.mate-wayland-session ];
|
||||
services.displayManager.sessionPackages = [ pkgs.mate.mate-wayland-session ];
|
||||
environment.systemPackages = [ pkgs.mate-wayland-session ];
|
||||
services.displayManager.sessionPackages = [ pkgs.mate-wayland-session ];
|
||||
})
|
||||
];
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
cmd = "xargs --null --max-args=1 echo < /proc/$(pgrep -xf mate-panel)/environ"
|
||||
machine.succeed(f"{cmd} | grep 'XDG_SESSION_TYPE' | grep 'wayland'")
|
||||
machine.succeed(f"{cmd} | grep 'XDG_SESSION_DESKTOP' | grep 'MATE'")
|
||||
machine.succeed(f"{cmd} | grep 'MATE_PANEL_APPLETS_DIR' | grep '${pkgs.mate.mate-panel-with-applets.pname}'")
|
||||
machine.succeed(f"{cmd} | grep 'MATE_PANEL_APPLETS_DIR' | grep '${pkgs.mate-panel-with-applets.pname}'")
|
||||
# From the nixos/mate module
|
||||
machine.succeed(f"{cmd} | grep 'SSH_AUTH_SOCK' | grep 'gcr'")
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
with subtest("Check if various environment variables are set"):
|
||||
machine.succeed("xargs --null --max-args=1 echo < /proc/$(pgrep -xf marco)/environ | grep 'XDG_CURRENT_DESKTOP' | grep 'MATE'")
|
||||
# From mate-panel-with-applets packaging
|
||||
machine.succeed("xargs --null --max-args=1 echo < /proc/$(pgrep -xf mate-panel)/environ | grep 'MATE_PANEL_APPLETS_DIR' | grep '${pkgs.mate.mate-panel-with-applets.pname}'")
|
||||
machine.succeed("xargs --null --max-args=1 echo < /proc/$(pgrep -xf mate-panel)/environ | grep 'MATE_PANEL_APPLETS_DIR' | grep '${pkgs.mate-panel-with-applets.pname}'")
|
||||
# From the nixos/mate module
|
||||
machine.succeed("xargs --null --max-args=1 echo < /proc/$(pgrep -xf mate-panel)/environ | grep 'SSH_AUTH_SOCK' | grep 'gcr'")
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ let
|
||||
|
||||
lxterminal.pkg = p: p.lxterminal;
|
||||
|
||||
mate-terminal.pkg = p: p.mate.mate-terminal;
|
||||
mate-terminal.pkg = p: p.mate-terminal;
|
||||
mate-terminal.cmd = "SHELL=$command mate-terminal --disable-factory"; # factory mode uses dbus, and we don't have a proper dbus session set up
|
||||
|
||||
mlterm.pkg = p: p.mlterm;
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
librda,
|
||||
libsForQt5,
|
||||
lomiri,
|
||||
mate,
|
||||
marco,
|
||||
mate-settings-daemon,
|
||||
pkg-config,
|
||||
properties-cpp,
|
||||
python3,
|
||||
@@ -78,8 +79,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
lomiri-schemas # lomiri schema
|
||||
])
|
||||
++ [
|
||||
mate.marco # marco schema
|
||||
mate.mate-settings-daemon # mate mouse schema
|
||||
marco # marco schema
|
||||
mate-settings-daemon # mate mouse schema
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
libayatana-common,
|
||||
librda,
|
||||
lomiri,
|
||||
mate,
|
||||
mate-settings-daemon,
|
||||
pkg-config,
|
||||
systemd,
|
||||
wrapGAppsHook3,
|
||||
@@ -59,7 +59,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# is there a better way to give it access to DE-specific schemas as needed?
|
||||
# https://github.com/AyatanaIndicators/ayatana-indicator-session/blob/88846bad7ee0aa8e0bb122816d06f9bc887eb464/src/service.c#L1387-L1413
|
||||
gnome-settings-daemon
|
||||
mate.mate-settings-daemon
|
||||
mate-settings-daemon
|
||||
];
|
||||
|
||||
nativeCheckInputs = [ dbus ];
|
||||
|
||||
+2
-2
@@ -5,13 +5,13 @@
|
||||
wrapGAppsHook3,
|
||||
lndir,
|
||||
caja,
|
||||
cajaExtensions,
|
||||
caja-extensions,
|
||||
extensions ? [ ],
|
||||
useDefaultExtensions ? true,
|
||||
}:
|
||||
|
||||
let
|
||||
selectedExtensions = extensions ++ (lib.optionals useDefaultExtensions cajaExtensions);
|
||||
selectedExtensions = extensions ++ (lib.optionals useDefaultExtensions [ caja-extensions ]);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "${caja.pname}-with-extensions";
|
||||
+2
-2
@@ -4,7 +4,7 @@
|
||||
fetchurl,
|
||||
autoreconfHook,
|
||||
gtk3,
|
||||
mate,
|
||||
mate-icon-theme,
|
||||
hicolor-icon-theme,
|
||||
gitUpdater,
|
||||
}:
|
||||
@@ -24,7 +24,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
mate.mate-icon-theme
|
||||
mate-icon-theme
|
||||
hicolor-icon-theme
|
||||
];
|
||||
|
||||
+2
-2
@@ -8,7 +8,7 @@
|
||||
libwnck,
|
||||
libfakekey,
|
||||
libxtst,
|
||||
mate,
|
||||
mate-panel,
|
||||
wrapGAppsHook3,
|
||||
gitUpdater,
|
||||
}:
|
||||
@@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
libwnck
|
||||
libfakekey
|
||||
libxtst
|
||||
mate.mate-panel
|
||||
mate-panel
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
+20
-2
@@ -5,14 +5,32 @@
|
||||
wrapGAppsHook3,
|
||||
lndir,
|
||||
marco,
|
||||
mate-applets,
|
||||
mate-indicator-applet,
|
||||
mate-netbook,
|
||||
mate-notification-daemon,
|
||||
mate-media,
|
||||
mate-panel,
|
||||
panelApplets,
|
||||
mate-power-manager,
|
||||
mate-sensors-applet,
|
||||
mate-utils,
|
||||
applets ? [ ],
|
||||
useDefaultApplets ? true,
|
||||
}:
|
||||
|
||||
let
|
||||
selectedApplets = applets ++ (lib.optionals useDefaultApplets panelApplets);
|
||||
selectedApplets =
|
||||
applets
|
||||
++ (lib.optionals useDefaultApplets [
|
||||
mate-applets
|
||||
mate-indicator-applet
|
||||
mate-netbook
|
||||
mate-notification-daemon
|
||||
mate-media
|
||||
mate-power-manager
|
||||
mate-sensors-applet
|
||||
mate-utils
|
||||
]);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "${mate-panel.pname}-with-applets";
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
stdenv,
|
||||
mate-control-center,
|
||||
mate-settings-daemon,
|
||||
glib,
|
||||
wrapGAppsHook3,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "${mate-settings-daemon.pname}-wrapped";
|
||||
inherit (mate-settings-daemon) version outputs;
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapGAppsHook3
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
mate-control-center
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/etc/xdg/autostart
|
||||
cp ${mate-settings-daemon}/etc/xdg/autostart/mate-settings-daemon.desktop $out/etc/xdg/autostart
|
||||
|
||||
mkdir -p $out/share/man
|
||||
cp -r ${mate-settings-daemon.man}/share/man/* $out/share/man/
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
mkdir -p $out/libexec
|
||||
makeWrapper ${mate-settings-daemon}/libexec/mate-settings-daemon $out/libexec/mate-settings-daemon \
|
||||
"''${gappsWrapperArgs[@]}"
|
||||
substituteInPlace $out/etc/xdg/autostart/mate-settings-daemon.desktop \
|
||||
--replace-fail "${mate-settings-daemon}/libexec/mate-settings-daemon" "$out/libexec/mate-settings-daemon"
|
||||
'';
|
||||
|
||||
meta = mate-settings-daemon.meta // {
|
||||
priority = -10;
|
||||
};
|
||||
}
|
||||
@@ -3,7 +3,11 @@
|
||||
fetchFromGitHub,
|
||||
python3Packages,
|
||||
intltool,
|
||||
mate,
|
||||
mate-applets,
|
||||
mate-panel,
|
||||
marco,
|
||||
libmatekbd,
|
||||
mate-session-manager,
|
||||
libnotify,
|
||||
gtk3,
|
||||
gdk-pixbuf,
|
||||
@@ -37,11 +41,11 @@ python3Packages.buildPythonApplication rec {
|
||||
gdk-pixbuf
|
||||
libnotify
|
||||
glib
|
||||
mate.mate-applets
|
||||
mate.mate-panel
|
||||
mate.marco
|
||||
mate.libmatekbd
|
||||
mate.mate-session-manager
|
||||
mate-applets
|
||||
mate-panel
|
||||
marco
|
||||
libmatekbd
|
||||
mate-session-manager
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
-1
@@ -13,7 +13,6 @@
|
||||
libcanberra-gtk3,
|
||||
apacheHttpdPackages,
|
||||
hicolor-icon-theme,
|
||||
mate,
|
||||
wrapGAppsHook3,
|
||||
gitUpdater,
|
||||
}:
|
||||
@@ -18,7 +18,7 @@
|
||||
xfceSupport ? true,
|
||||
mateSupport ? true,
|
||||
gtk3,
|
||||
mate,
|
||||
marco,
|
||||
gtkNextSupport ? false,
|
||||
plankSupport ? false,
|
||||
steamSupport ? false,
|
||||
@@ -53,7 +53,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
]
|
||||
++ lib.optionals mateSupport [
|
||||
gtk3
|
||||
mate.marco
|
||||
marco
|
||||
]
|
||||
++ lib.optional telegramSupport zip;
|
||||
|
||||
|
||||
@@ -10,7 +10,8 @@
|
||||
glib,
|
||||
gnome,
|
||||
gtk3,
|
||||
mate,
|
||||
mate-desktop,
|
||||
mate-settings-daemon,
|
||||
python3,
|
||||
gsettings-desktop-schemas,
|
||||
python3Packages,
|
||||
@@ -44,8 +45,8 @@ python3Packages.buildPythonApplication (finalAttrs: {
|
||||
glib
|
||||
gnome.nixos-gsettings-overrides
|
||||
gtk3
|
||||
mate.mate-desktop
|
||||
mate.mate-settings-daemon
|
||||
mate-desktop
|
||||
mate-settings-daemon
|
||||
python3
|
||||
gsettings-desktop-schemas
|
||||
];
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
wrapGAppsHook3,
|
||||
file,
|
||||
inxi,
|
||||
mate,
|
||||
mate-panel,
|
||||
dbus,
|
||||
libdbusmenu-gtk3,
|
||||
}:
|
||||
@@ -63,7 +63,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
gdk-pixbuf
|
||||
libxkbfile
|
||||
python3.pkgs.pygobject3 # for .pc file
|
||||
mate.mate-panel # for gobject-introspection
|
||||
mate-panel # for gobject-introspection
|
||||
dbus
|
||||
libdbusmenu-gtk3
|
||||
];
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
glib,
|
||||
gtk3,
|
||||
gsettings-desktop-schemas,
|
||||
mate,
|
||||
mate-desktop,
|
||||
xapp,
|
||||
xdg-desktop-portal,
|
||||
}:
|
||||
@@ -38,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
glib
|
||||
gtk3
|
||||
gsettings-desktop-schemas # org.gnome.system.location
|
||||
mate.mate-desktop # org.mate.background
|
||||
mate-desktop # org.mate.background
|
||||
xapp # org.x.apps.portal
|
||||
xdg-desktop-portal
|
||||
];
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
gtk2,
|
||||
gtk3,
|
||||
gnome-panel,
|
||||
mate,
|
||||
mate-panel,
|
||||
libxfce4util,
|
||||
xfce4-panel,
|
||||
}:
|
||||
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
|
||||
]
|
||||
++ lib.optionals (desktopSupport == "mate") [
|
||||
gtk3
|
||||
mate.mate-panel
|
||||
mate-panel
|
||||
]
|
||||
++ lib.optionals (desktopSupport == "xfce4") [
|
||||
gtk2
|
||||
|
||||
+61
-122
@@ -1,124 +1,63 @@
|
||||
{ pkgs, lib }:
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
}:
|
||||
|
||||
let
|
||||
packages =
|
||||
self: with self; {
|
||||
lib.makeScope pkgs.newScope (
|
||||
self:
|
||||
{ }
|
||||
// lib.optionalAttrs config.allowAliases {
|
||||
basePackages = throw "‘mate.basePackages’ was removed. Please list the packages you need explicitly"; # Added on 2026-02-14
|
||||
cajaExtensions = throw "‘mate.cajaExtensions’ was removed. Please list the extensions you need explicitly"; # Added on 2026-02-14
|
||||
extraPackages = throw "‘mate.extraPackages’ was removed. Please list the packages you need explicitly"; # Added on 2026-02-14
|
||||
mateUpdateScript = throw "‘mate.mateUpdateScript’ was removed. Please use ‘pkgs.gitUpdater’ directly"; # Added on 2026-02-14
|
||||
panelApplets = throw "‘mate.panelApplets’ was removed. Please list the applets you need explicitly"; # Added on 2026-02-14
|
||||
|
||||
# Update script tailored to mate packages from git repository
|
||||
mateUpdateScript =
|
||||
{
|
||||
pname,
|
||||
odd-unstable ? true,
|
||||
rev-prefix ? "v",
|
||||
url ? null,
|
||||
}:
|
||||
pkgs.gitUpdater {
|
||||
inherit odd-unstable rev-prefix;
|
||||
url = if url == null then "https://git.mate-desktop.org/${pname}" else url;
|
||||
};
|
||||
|
||||
atril = callPackage ./atril { };
|
||||
caja = callPackage ./caja { };
|
||||
caja-dropbox = callPackage ./caja-dropbox { };
|
||||
caja-extensions = callPackage ./caja-extensions { };
|
||||
caja-with-extensions = callPackage ./caja/with-extensions.nix { };
|
||||
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-gsettings-overrides = callPackage ./mate-gsettings-overrides { };
|
||||
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-panel-with-applets = callPackage ./mate-panel/with-applets.nix { };
|
||||
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 { };
|
||||
mate-wayland-session = callPackage ./mate-wayland-session { };
|
||||
mozo = callPackage ./mozo { };
|
||||
pluma = callPackage ./pluma { };
|
||||
python-caja = callPackage ./python-caja { };
|
||||
|
||||
# Caja and mate-panel are managed in NixOS module.
|
||||
basePackages = [
|
||||
libmatekbd
|
||||
libmatemixer
|
||||
libmateweather
|
||||
marco
|
||||
mate-common
|
||||
mate-control-center
|
||||
mate-desktop
|
||||
mate-icon-theme
|
||||
mate-menus
|
||||
mate-notification-daemon
|
||||
mate-polkit
|
||||
mate-session-manager
|
||||
mate-settings-daemon
|
||||
mate-settings-daemon-wrapped
|
||||
mate-themes
|
||||
];
|
||||
|
||||
extraPackages = [
|
||||
atril
|
||||
caja-extensions # for caja-sendto
|
||||
engrampa
|
||||
eom
|
||||
mate-applets
|
||||
mate-backgrounds
|
||||
mate-calc
|
||||
mate-indicator-applet
|
||||
mate-media
|
||||
mate-netbook
|
||||
mate-power-manager
|
||||
mate-screensaver
|
||||
mate-system-monitor
|
||||
mate-terminal
|
||||
mate-user-guide
|
||||
# mate-user-share
|
||||
mate-utils
|
||||
mozo
|
||||
pluma
|
||||
];
|
||||
|
||||
cajaExtensions = [
|
||||
caja-extensions
|
||||
];
|
||||
|
||||
panelApplets = [
|
||||
mate-applets
|
||||
mate-indicator-applet
|
||||
mate-netbook
|
||||
mate-notification-daemon
|
||||
mate-media
|
||||
mate-power-manager
|
||||
mate-sensors-applet
|
||||
mate-utils
|
||||
];
|
||||
};
|
||||
|
||||
in
|
||||
lib.makeScope pkgs.newScope packages
|
||||
atril = lib.warnOnInstantiate "‘mate.atril’ was moved to top-level. Please use ‘pkgs.atril’ directly" pkgs.atril; # Added on 2026-02-08
|
||||
engrampa = lib.warnOnInstantiate "‘mate.engrampa’ was moved to top-level. Please use ‘pkgs.engrampa’ directly" pkgs.engrampa; # Added on 2026-02-08
|
||||
eom = lib.warnOnInstantiate "‘mate.eom’ was moved to top-level. Please use ‘pkgs.eom’ directly" pkgs.eom; # Added on 2026-02-08
|
||||
libmatekbd = lib.warnOnInstantiate "‘mate.libmatekbd’ was moved to top-level. Please use ‘pkgs.libmatekbd’ directly" pkgs.libmatekbd; # Added on 2026-02-08
|
||||
libmatemixer = lib.warnOnInstantiate "‘mate.libmatemixer’ was moved to top-level. Please use ‘pkgs.libmatemixer’ directly" pkgs.libmatemixer; # Added on 2026-02-08
|
||||
libmateweather = lib.warnOnInstantiate "‘mate.libmateweather’ was moved to top-level. Please use ‘pkgs.libmateweather’ directly" pkgs.libmateweather; # Added on 2026-02-08
|
||||
marco = lib.warnOnInstantiate "‘mate.marco’ was moved to top-level. Please use ‘pkgs.marco’ directly" pkgs.marco; # Added on 2026-02-08
|
||||
mate-applets = lib.warnOnInstantiate "‘mate.mate-applets’ was moved to top-level. Please use ‘pkgs.mate-applets’ directly" pkgs.mate-applets; # Added on 2026-02-08
|
||||
mate-backgrounds = lib.warnOnInstantiate "‘mate.mate-backgrounds’ was moved to top-level. Please use ‘pkgs.mate-backgrounds’ directly" pkgs.mate-backgrounds; # Added on 2026-02-08
|
||||
mate-calc = lib.warnOnInstantiate "‘mate.mate-calc’ was moved to top-level. Please use ‘pkgs.mate-calc’ directly" pkgs.mate-calc; # Added on 2026-02-08
|
||||
mate-common = lib.warnOnInstantiate "‘mate.mate-common’ was moved to top-level. Please use ‘pkgs.mate-common’ directly" pkgs.mate-common; # Added on 2026-02-08
|
||||
mate-control-center = lib.warnOnInstantiate "‘mate.mate-control-center’ was moved to top-level. Please use ‘pkgs.mate-control-center’ directly" pkgs.mate-control-center; # Added on 2026-02-08
|
||||
mate-desktop = lib.warnOnInstantiate "‘mate.mate-desktop’ was moved to top-level. Please use ‘pkgs.mate-desktop’ directly" pkgs.mate-desktop; # Added on 2026-02-08
|
||||
mate-gsettings-overrides = lib.warnOnInstantiate "‘mate.mate-gsettings-overrides’ was moved to top-level. Please use ‘pkgs.mate-gsettings-overrides’ directly" pkgs.mate-gsettings-overrides; # Added on 2026-02-08
|
||||
mate-icon-theme = lib.warnOnInstantiate "‘mate.mate-icon-theme’ was moved to top-level. Please use ‘pkgs.mate-icon-theme’ directly" pkgs.mate-icon-theme; # Added on 2026-02-08
|
||||
mate-icon-theme-faenza = lib.warnOnInstantiate "‘mate.mate-icon-theme-faenza’ was moved to top-level. Please use ‘pkgs.mate-icon-theme-faenza’ directly" pkgs.mate-icon-theme-faenza; # Added on 2026-02-08
|
||||
mate-indicator-applet = lib.warnOnInstantiate "‘mate.mate-indicator-applet’ was moved to top-level. Please use ‘pkgs.mate-indicator-applet’ directly" pkgs.mate-indicator-applet; # Added on 2026-02-08
|
||||
mate-media = lib.warnOnInstantiate "‘mate.mate-media’ was moved to top-level. Please use ‘pkgs.mate-media’ directly" pkgs.mate-media; # Added on 2026-02-08
|
||||
mate-menus = lib.warnOnInstantiate "‘mate.mate-menus’ was moved to top-level. Please use ‘pkgs.mate-menus’ directly" pkgs.mate-menus; # Added on 2026-02-08
|
||||
mate-netbook = lib.warnOnInstantiate "‘mate.mate-netbook’ was moved to top-level. Please use ‘pkgs.mate-netbook’ directly" pkgs.mate-netbook; # Added on 2026-02-08
|
||||
mate-notification-daemon = lib.warnOnInstantiate "‘mate.mate-notification-daemon’ was moved to top-level. Please use ‘pkgs.mate-notification-daemon’ directly" pkgs.mate-notification-daemon; # Added on 2026-02-08
|
||||
mate-polkit = lib.warnOnInstantiate "‘mate.mate-polkit’ was moved to top-level. Please use ‘pkgs.mate-polkit’ directly" pkgs.mate-polkit; # Added on 2026-02-08
|
||||
mate-power-manager = lib.warnOnInstantiate "‘mate.mate-power-manager’ was moved to top-level. Please use ‘pkgs.mate-power-manager’ directly" pkgs.mate-power-manager; # Added on 2026-02-08
|
||||
mate-screensaver = lib.warnOnInstantiate "‘mate.mate-screensaver’ was moved to top-level. Please use ‘pkgs.mate-screensaver’ directly" pkgs.mate-screensaver; # Added on 2026-02-08
|
||||
mate-sensors-applet = lib.warnOnInstantiate "‘mate.mate-sensors-applet’ was moved to top-level. Please use ‘pkgs.mate-sensors-applet’ directly" pkgs.mate-sensors-applet; # Added on 2026-02-08
|
||||
mate-session-manager = lib.warnOnInstantiate "‘mate.mate-session-manager’ was moved to top-level. Please use ‘pkgs.mate-session-manager’ directly" pkgs.mate-session-manager; # Added on 2026-02-08
|
||||
mate-system-monitor = lib.warnOnInstantiate "‘mate.mate-system-monitor’ was moved to top-level. Please use ‘pkgs.mate-system-monitor’ directly" pkgs.mate-system-monitor; # Added on 2026-02-08
|
||||
mate-terminal = lib.warnOnInstantiate "‘mate.mate-terminal’ was moved to top-level. Please use ‘pkgs.mate-terminal’ directly" pkgs.mate-terminal; # Added on 2026-02-08
|
||||
mate-themes = lib.warnOnInstantiate "‘mate.mate-themes’ was moved to top-level. Please use ‘pkgs.mate-themes’ directly" pkgs.mate-themes; # Added on 2026-02-08
|
||||
mate-tweak = lib.warnOnInstantiate "‘mate.mate-tweak’ was moved to top-level. Please use ‘pkgs.mate-tweak’ directly" pkgs.mate-tweak; # Added on 2026-02-08
|
||||
mate-user-guide = lib.warnOnInstantiate "‘mate.mate-user-guide’ was moved to top-level. Please use ‘pkgs.mate-user-guide’ directly" pkgs.mate-user-guide; # Added on 2026-02-08
|
||||
mate-user-share = lib.warnOnInstantiate "‘mate.mate-user-share’ was moved to top-level. Please use ‘pkgs.mate-user-share’ directly" pkgs.mate-user-share; # Added on 2026-02-08
|
||||
mate-utils = lib.warnOnInstantiate "‘mate.mate-utils’ was moved to top-level. Please use ‘pkgs.mate-utils’ directly" pkgs.mate-utils; # Added on 2026-02-08
|
||||
mate-wayland-session = lib.warnOnInstantiate "‘mate.mate-wayland-session’ was moved to top-level. Please use ‘pkgs.mate-wayland-session’ directly" pkgs.mate-wayland-session; # Added on 2026-02-08
|
||||
mozo = lib.warnOnInstantiate "‘mate.mozo’ was moved to top-level. Please use ‘pkgs.mozo’ directly" pkgs.mozo; # Added on 2026-02-08
|
||||
pluma = lib.warnOnInstantiate "‘mate.pluma’ was moved to top-level. Please use ‘pkgs.pluma’ directly" pkgs.pluma; # Added on 2026-02-08
|
||||
python-caja = lib.warnOnInstantiate "‘mate.python-caja’ was moved to top-level. Please use ‘pkgs.python-caja’ directly" pkgs.python-caja; # Added on 2026-02-08
|
||||
caja-dropbox = lib.warnOnInstantiate "‘mate.caja-dropbox’ was moved to top-level. Please use ‘pkgs.caja-dropbox’ directly" pkgs.caja-dropbox; # Added on 2026-02-08
|
||||
caja-extensions = lib.warnOnInstantiate "‘mate.caja-extensions’ was moved to top-level. Please use ‘pkgs.caja-extensions’ directly" pkgs.caja-extensions; # Added on 2026-02-08
|
||||
caja = lib.warnOnInstantiate "‘mate.caja’ was moved to top-level. Please use ‘pkgs.caja’ directly" pkgs.caja; # Added on 2026-02-08
|
||||
caja-with-extensions = lib.warnOnInstantiate "‘mate.caja-with-extensions’ was moved to top-level. Please use ‘pkgs.caja-with-extensions’ directly" pkgs.caja-with-extensions; # Added on 2026-02-08
|
||||
mate-panel = lib.warnOnInstantiate "‘mate.mate-panel’ was moved to top-level. Please use ‘pkgs.mate-panel’ directly" pkgs.mate-panel; # Added on 2026-02-08
|
||||
mate-panel-with-applets = lib.warnOnInstantiate "‘mate.mate-panel-with-applets’ was moved to top-level. Please use ‘pkgs.mate-panel-with-applets’ directly" pkgs.mate-panel-with-applets; # Added on 2026-02-08
|
||||
mate-settings-daemon = lib.warnOnInstantiate "‘mate.mate-settings-daemon’ was moved to top-level. Please use ‘pkgs.mate-settings-daemon’ directly" pkgs.mate-settings-daemon; # Added on 2026-02-08
|
||||
mate-settings-daemon-wrapped = lib.warnOnInstantiate "‘mate.mate-settings-daemon-wrapped’ was moved to top-level. Please use ‘pkgs.mate-settings-daemon-wrapped’ directly" pkgs.mate-settings-daemon-wrapped; # Added on 2026-02-08
|
||||
}
|
||||
)
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
{
|
||||
stdenv,
|
||||
mate,
|
||||
glib,
|
||||
wrapGAppsHook3,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "${mate.mate-settings-daemon.pname}-wrapped";
|
||||
inherit (mate.mate-settings-daemon) version outputs;
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapGAppsHook3
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
mate.mate-control-center
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/etc/xdg/autostart
|
||||
cp ${mate.mate-settings-daemon}/etc/xdg/autostart/mate-settings-daemon.desktop $out/etc/xdg/autostart
|
||||
|
||||
mkdir -p $out/share/man
|
||||
cp -r ${mate.mate-settings-daemon.man}/share/man/* $out/share/man/
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
mkdir -p $out/libexec
|
||||
makeWrapper ${mate.mate-settings-daemon}/libexec/mate-settings-daemon $out/libexec/mate-settings-daemon \
|
||||
"''${gappsWrapperArgs[@]}"
|
||||
substituteInPlace $out/etc/xdg/autostart/mate-settings-daemon.desktop \
|
||||
--replace-fail "${mate.mate-settings-daemon}/libexec/mate-settings-daemon" "$out/libexec/mate-settings-daemon"
|
||||
'';
|
||||
|
||||
meta = mate.mate-settings-daemon.meta // {
|
||||
priority = -10;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user