Merge pull request #319091 from bobby285271/upd/cinnamon

Cinnamon 6.2
This commit is contained in:
Bobby Rong 2024-06-30 20:47:37 +08:00 committed by GitHub
commit 4b2a0b20e6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
15 changed files with 47 additions and 128 deletions

View File

@ -156,6 +156,11 @@
The derivation now installs "impl" headers selectively instead of by a wildcard.
Use `imgui.src` if you just want to access the unpacked sources.
- Cinnamon has been updated to 6.2.
- Following Mint 22 defaults, the Cinnamon module no longer ships geary and hexchat by default.
- Nemo is now built with gtk-layer-shell support, note that for now it will be expected to see nemo-desktop
listed as a regular entry in Cinnamon Wayland session's window list applet.
- Support for *runner registration tokens* has been [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/380872)
in `gitlab-runner` 15.6 and is expected to be removed in `gitlab-runner` 18.0. Configuration of existing runners
should be changed to using *runner authentication tokens* by configuring

View File

@ -9,7 +9,6 @@
, cjs
, evolution-data-server
, fetchFromGitHub
, fetchpatch
, gdk-pixbuf
, gettext
, libgnomekbd
@ -72,25 +71,18 @@ let
in
stdenv.mkDerivation rec {
pname = "cinnamon-common";
version = "6.0.4";
version = "6.2.2";
src = fetchFromGitHub {
owner = "linuxmint";
repo = "cinnamon";
rev = version;
hash = "sha256-I0GJv2lcl5JlKPIiWoKMXTf4OLkznS5MpiOIvZ76bJQ=";
hash = "sha256-iivrPSzmvhImfrOD2Ec6BjbtRpHAQs71N/UDSPoZwTE=";
};
patches = [
./use-sane-install-dir.patch
./libdir.patch
# Switch to GNOME Online Accounts GTK
(fetchpatch {
url = "https://github.com/linuxmint/cinnamon/commit/d22f889c376734f0ca5d904885c2772e790fbadc.patch";
includes = [ "files/usr/share/cinnamon/cinnamon-settings/cinnamon-settings.py" ];
hash = "sha256-xutJqxtzk3/BUQGZY/tnBkRyAfZZY7AckaGC6b7Sfn8=";
})
];
buildInputs = [
@ -166,6 +158,7 @@ stdenv.mkDerivation rec {
--replace-fail 'subprocess.run(["/usr/bin/' 'subprocess.run(["' \
--replace-fail "msgfmt" "${gettext}/bin/msgfmt"
substituteInPlace ./modules/cs_info.py --replace-fail "lspci" "${pciutils}/bin/lspci"
substituteInPlace ./modules/cs_keyboard.py --replace-fail "/usr/bin/cinnamon-dbus-command" "$out/bin/cinnamon-dbus-command"
substituteInPlace ./modules/cs_themes.py --replace-fail "$out/share/cinnamon/styles.d" "/run/current-system/sw/share/cinnamon/styles.d"
popd
@ -178,17 +171,6 @@ stdenv.mkDerivation rec {
postInstall = ''
# Use locales from cinnamon-translations.
ln -s ${cinnamon-translations}/share/locale $out/share/locale
# Do not install online accounts module, with a -Donlineaccounts=false c-c-c
# this just shows an empty page.
rm -f $out/share/cinnamon/cinnamon-settings/modules/cs_online_accounts.py
# g-o-a-gtk already provides its own desktop item.
rm -f $out/share/applications/cinnamon-settings-online-accounts.desktop
# Actually removes Adwaita and HighContrast from Cinnamon styles with mint-artwork 1.8.2.
# https://github.com/linuxmint/cinnamon/commit/13b1ad104e88197f6c4e2d02ab2674c07254b8e8
rm -r $out/share/cinnamon/styles.d
'';
preFixup = ''

View File

@ -35,13 +35,13 @@
stdenv.mkDerivation rec {
pname = "cinnamon-control-center";
version = "6.0.1";
version = "6.2.0";
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-AYnI+k6CzpWUutusCSDR5KhOmv5FWoChotAbCJXTh4I=";
hash = "sha256-Blod69RzPTE3DztRo0PK0MKCE+vq0HWrcJcC/1e8eRI=";
};
buildInputs = [
@ -83,8 +83,6 @@ stdenv.mkDerivation rec {
mesonFlags = [
# use locales from cinnamon-translations
"--localedir=${cinnamon-translations}/share/locale"
# https://github.com/linuxmint/cinnamon-control-center/issues/326
"-Donlineaccounts=false"
];
nativeBuildInputs = [

View File

@ -19,13 +19,13 @@
stdenv.mkDerivation rec {
pname = "cinnamon-desktop";
version = "6.0.0";
version = "6.2.0";
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-Ay9JyPBsE345dBwQHChkaGuoXiB2nPyvCNhWWphL8kY=";
hash = "sha256-9uewZh0GHQAenTcZpLchgFXSt3vOhxLbaepsJIkjTdI=";
};
outputs = [ "out" "dev" ];

View File

@ -11,13 +11,13 @@
stdenv.mkDerivation rec {
pname = "cinnamon-menus";
version = "6.0.0";
version = "6.2.0";
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-zP1jA5Fwxh6QrM5YwJo7SFPWaxkJsv1D84dhIDP5xuI=";
hash = "sha256-HOipeUV9daPSsJ+SHPlsyEAg2SwKQkZBm1JUoNtDZAY=";
};
buildInputs = [

View File

@ -28,13 +28,13 @@
stdenv.mkDerivation rec {
pname = "cinnamon-screensaver";
version = "6.0.3";
version = "6.2.0";
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-ncYE2dCIAQxCMCe/5zrDU9iHTIkw+iO/IQl8+pfTvLI=";
hash = "sha256-hXgDTQnOlskzyOogvk7BQ9iJ3oXRtgUUX5bXtgD+gFo=";
};
nativeBuildInputs = [

View File

@ -16,10 +16,10 @@ index d8428dc..1f15115 100644
]
+dbus_glib = dependency('dbus-glib-1')
executable('cinnamon-session',
executable('cinnamon-session-binary',
cinnamon_session_sources,
dependencies: [
@@ -74,7 +75,7 @@ executable('cinnamon-session',
@@ -74,7 +75,7 @@ executable('cinnamon-session-binary',
xext,
xrender,
xtest,

View File

@ -1,76 +0,0 @@
From 174d14edcbb401aa2bfb77932b214512befb486c Mon Sep 17 00:00:00 2001
From: Bobby Rong <rjl931189261@126.com>
Date: Sat, 23 Dec 2023 23:24:59 +0800
Subject: [PATCH] cinnamon-session: make sure wayland sessions get a login
shell
Users expect their shell profiles to get sourced at startup, which
doesn't happen with wayland sessions.
This commit brings back that feature, by making the cinnamon-session
wrapper script run a login shell.
ref: https://gitlab.gnome.org/GNOME/gnome-session/-/commit/7e307f8ddb91db5d4051c4c792519a660ba67f35
---
cinnamon-session/cinnamon-session.in | 16 ++++++++++++++++
cinnamon-session/meson.build | 14 +++++++++++++-
2 files changed, 29 insertions(+), 1 deletion(-)
create mode 100755 cinnamon-session/cinnamon-session.in
diff --git a/cinnamon-session/cinnamon-session.in b/cinnamon-session/cinnamon-session.in
new file mode 100755
index 0000000..d9d7cb2
--- /dev/null
+++ b/cinnamon-session/cinnamon-session.in
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
+ [ "x$XDG_SESSION_CLASS" != "xgreeter" ] &&
+ [ -n "$SHELL" ] &&
+ grep -q "$SHELL" /etc/shells &&
+ ! (echo "$SHELL" | grep -q "false") &&
+ ! (echo "$SHELL" | grep -q "nologin"); then
+ if [ "$1" != '-l' ]; then
+ exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
+ else
+ shift
+ fi
+fi
+
+exec @libexecdir@/cinnamon-session-binary "$@"
diff --git a/cinnamon-session/meson.build b/cinnamon-session/meson.build
index 10092ee..3d32fdc 100644
--- a/cinnamon-session/meson.build
+++ b/cinnamon-session/meson.build
@@ -54,7 +54,7 @@ cinnamon_session_sources = [
]
dbus_glib = dependency('dbus-glib-1')
-executable('cinnamon-session',
+executable('cinnamon-session-binary',
cinnamon_session_sources,
dependencies: [
cinnamon_desktop,
@@ -76,6 +76,18 @@ executable('cinnamon-session',
],
include_directories: [ rootInclude ],
install: true,
+ install_dir: get_option('libexecdir'),
+)
+
+script_conf = configuration_data()
+script_conf.set('libexecdir', get_option('prefix') / get_option('libexecdir'))
+
+configure_file(
+ input: 'cinnamon-session.in',
+ output: 'cinnamon-session',
+ install: true,
+ install_dir: get_option('bindir'),
+ configuration: script_conf
)
units = [
--
2.42.0

View File

@ -32,18 +32,17 @@ let
in
stdenv.mkDerivation rec {
pname = "cinnamon-session";
version = "6.0.4";
version = "6.2.0";
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-GtaoqzcnpKbiP4OqhnLkNWzZTUqX/KgVE6JImNMkdGo=";
hash = "sha256-2KQJNUc/uvbXnqqV0Yt3cltTHNbCo+wK67NXlid02Sk=";
};
patches = [
./0001-Use-dbus_glib-instead-of-elogind.patch
./0002-Use-login-shell-for-wayland-session.patch
];
buildInputs = [

View File

@ -32,13 +32,13 @@
stdenv.mkDerivation rec {
pname = "cinnamon-settings-daemon";
version = "6.0.0";
version = "6.2.0";
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-bT6NetCBo3J9IiiJ9Hs4iC1N3n/AP9Q+6wZciuKA4i4=";
hash = "sha256-OAG5Tes+0bi+vKqm77Y7OykTpUkMdRaXIJYLuomIDMo=";
};
patches = [

View File

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "cinnamon-translations";
version = "6.0.2";
version = "6.2.1";
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-kLZ0niamPV5Kaq6ZBTp1SMAl6dKMkcC+rodtAoH5+Go=";
hash = "sha256-U/3+njVctLbu+n/HQ+YuGdGhNN7eWU5u9OEFOz4T69o=";
};
nativeBuildInputs = [

View File

@ -6,8 +6,10 @@
, cairo
, glib
, readline
, spidermonkey_102
, libsysprof-capture
, spidermonkey_115
, meson
, mesonEmulatorHook
, dbus
, ninja
, which
@ -16,13 +18,13 @@
stdenv.mkDerivation rec {
pname = "cjs";
version = "6.0.0";
version = "6.2.0";
src = fetchFromGitHub {
owner = "linuxmint";
repo = "cjs";
rev = version;
hash = "sha256-oSqEAZWEVb8NxFTScl8s5Mb04tCGDyVVslYW00s4YYk=";
hash = "sha256-/74E10txRjwN9RkjVB8M0MPYakJ659yJWanc4DC09wg=";
};
outputs = [ "out" "dev" ];
@ -33,21 +35,24 @@ stdenv.mkDerivation rec {
pkg-config
which # for locale detection
libxml2 # for xml-stripblanks
dbus # for dbus-run-session
gobject-introspection
] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
mesonEmulatorHook
];
buildInputs = [
cairo
readline
spidermonkey_102
dbus # for dbus-run-session
libsysprof-capture
spidermonkey_115
];
propagatedBuildInputs = [
glib
];
mesonFlags = [
mesonFlags = lib.optionals stdenv.hostPlatform.isMusl [
"-Dprofiler=disabled"
];

View File

@ -40,7 +40,7 @@
stdenv.mkDerivation rec {
pname = "muffin";
version = "6.0.1";
version = "6.2.0";
outputs = [ "out" "dev" "man" ];
@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-yd23naaPIa6xrdf7ipOvVZKqkr7/CMxNqDZ3CQ2QH+Y=";
hash = "sha256-k8hUYA4/OzL2TB8s5DJpa2nFXV2U9eY09TLkqBDq9WE=";
};
patches = [

View File

@ -4,12 +4,12 @@ rec {
# When you bump this, you should make sure all nemo-extensions
# are actually using this file since we try to deal with tags
# like nemo-fileroller-5.6.1 according to upstream's wishes.
version = "6.0.1";
version = "6.2.0";
src = fetchFromGitHub {
owner = "linuxmint";
repo = "nemo-extensions";
rev = version;
sha256 = "sha256-zuE0SO5VJ2kKjK7JgsSf+wJgfyffTHhfICslEoPKK8Q=";
sha256 = "sha256-qghGgd+OWYiXvcGUfgiQT6rR4mJPAOfOtYB3lWLg4iA=";
};
}

View File

@ -13,6 +13,8 @@
, cinnamon-desktop
, xapp
, libexif
, json-glib
, gtk-layer-shell
, exempi
, intltool
, shared-mime-info
@ -22,13 +24,13 @@
stdenv.mkDerivation rec {
pname = "nemo";
version = "6.0.2";
version = "6.2.1";
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
sha256 = "sha256-vSLFp0sgqGsZtcXdv82PVH0HcBbmcxrMySLFCBrLJpA=";
sha256 = "sha256-c6asFiDpFctNn+ap0cRptdFbjv5blTaJqDuzZ1Je+3I=";
};
patches = [
@ -49,6 +51,8 @@ stdenv.mkDerivation rec {
exempi
gvfs
libgsf
json-glib
gtk-layer-shell
];
nativeBuildInputs = [
@ -64,6 +68,8 @@ stdenv.mkDerivation rec {
mesonFlags = [
# use locales from cinnamon-translations
"--localedir=${cinnamon-translations}/share/locale"
# enabled by default in Mint packaging (see debian/rules)
"-Dgtk_layer_shell=true"
];
postInstall = ''