Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: d4a95f016a20
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: deb6770eb3ea
Choose a head ref
  • 2 commits
  • 3 files changed
  • 2 contributors

Commits on Jan 21, 2020

  1. Copy the full SHA
    2e2b4d3 View commit details

Commits on Jan 22, 2020

  1. Merge pull request #78144 from mkg20001/pkg/csd

    cinnamon.cinnamon-settings-daemon: init at 4.4.0
    worldofpeace authored Jan 22, 2020
    Copy the full SHA
    deb6770 View commit details
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
From 6d71bf9764fb81d437678a603826167850bbf453 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Maciej=20Kr=C3=BCger?= <mkg20001@gmail.com>
Date: Tue, 21 Jan 2020 03:19:28 +0100
Subject: [PATCH] fix: use an impure path to csd-backlight-helper to fix
policy-reload bug

---
plugins/power/csd-power-manager.c | 4 ++--
.../org.cinnamon.settings-daemon.plugins.power.policy.in.in | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/plugins/power/csd-power-manager.c b/plugins/power/csd-power-manager.c
index b24c456..212c47e 100755
--- a/plugins/power/csd-power-manager.c
+++ b/plugins/power/csd-power-manager.c
@@ -2519,7 +2519,7 @@ backlight_helper_get_value (const gchar *argument, CsdPowerManager* manager,
#endif

/* get the data */
- command = g_strdup_printf (LIBEXECDIR "/csd-backlight-helper --%s %s",
+ command = g_strdup_printf ("/run/current-system/sw/bin/cinnamon-settings-daemon/csd-backlight-helper --%s %s",
argument,
manager->priv->backlight_helper_preference_args);
ret = g_spawn_command_line_sync (command,
@@ -2609,7 +2609,7 @@ backlight_helper_set_value (const gchar *argument,
#endif

/* get the data */
- command = g_strdup_printf ("pkexec " LIBEXECDIR "/csd-backlight-helper --%s %i %s",
+ command = g_strdup_printf ("pkexec " "/run/current-system/sw/bin/cinnamon-settings-daemon/csd-backlight-helper --%s %i %s",
argument, value,
manager->priv->backlight_helper_preference_args);
ret = g_spawn_command_line_sync (command,
diff --git a/plugins/power/org.cinnamon.settings-daemon.plugins.power.policy.in.in b/plugins/power/org.cinnamon.settings-daemon.plugins.power.policy.in.in
index 2c44e62..c0a2348 100755
--- a/plugins/power/org.cinnamon.settings-daemon.plugins.power.policy.in.in
+++ b/plugins/power/org.cinnamon.settings-daemon.plugins.power.policy.in.in
@@ -25,7 +25,7 @@
<allow_inactive>no</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
- <annotate key="org.freedesktop.policykit.exec.path">@libexecdir@/csd-backlight-helper</annotate>
+ <annotate key="org.freedesktop.policykit.exec.path">/run/current-system/sw/bin/cinnamon-settings-daemon/csd-backlight-helper</annotate>
</action>

</policyconfig>
--
2.24.1
111 changes: 111 additions & 0 deletions pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
{ fetchFromGitHub
, autoconf-archive
, autoreconfHook
, cinnamon-desktop
, colord
, glib
, gsettings-desktop-schemas
, gtk3
, intltool
, lcms2
, libcanberra-gtk3
, libgnomekbd
, libnotify
, libxklavier
, wrapGAppsHook
, pkgconfig
, pulseaudio
, stdenv
, systemd
, upower
, dconf
, cups
, polkit
, librsvg
, libwacom
, xf86_input_wacom
, xorg
, fontconfig
, tzdata
}:

stdenv.mkDerivation rec {
pname = "cinnamon-settings-daemon";
version = "4.4.0";

/* csd-power-manager.c:50:10: fatal error: csd-power-proxy.h: No such file or directory
#include "csd-power-proxy.h"
^~~~~~~~~~~~~~~~~~~
compilation terminated. */

# but this occurs only sometimes, so disabling parallel building
# also see https://github.com/linuxmint/cinnamon-settings-daemon/issues/248
enableParallelBuilding = false;

src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
sha256 = "1h74d68a7hx85vv6ak26b85jq0wr56ps9rzfvqsnxwk81zxw2n7q";
};

patches = [
./csd-backlight-helper-fix.patch
];

NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0"; # TODO: https://github.com/NixOS/nixpkgs/issues/36468

buildInputs = [
cinnamon-desktop
colord
gtk3
glib
gsettings-desktop-schemas
lcms2
libcanberra-gtk3
libgnomekbd
libnotify
libxklavier
pulseaudio
systemd
upower
dconf
cups
polkit
librsvg
libwacom
xf86_input_wacom
xorg.libXext
xorg.libX11
xorg.libXi
xorg.libXtst
xorg.libXfixes
fontconfig
];

nativeBuildInputs = [
autoconf-archive
autoreconfHook
wrapGAppsHook
intltool
pkgconfig
];

postPatch = ''
sed "s|/usr/share/zoneinfo|${tzdata}/share/zoneinfo|g" -i plugins/datetime/system-timezone.h
'';

# So the polkit policy can reference /run/current-system/sw/bin/cinnamon-settings-daemon/csd-backlight-helper
postFixup = ''
mkdir -p $out/bin/cinnamon-settings-daemon
ln -s $out/libexec/csd-backlight-helper $out/bin/cinnamon-settings-daemon/csd-backlight-helper
'';

meta = with stdenv.lib; {
homepage = "https://github.com/linuxmint/cinnamon-settings-daemon";
description = "The settings daemon for the Cinnamon desktop";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = [ maintainers.mkg20001 ];
};
}
1 change: 1 addition & 0 deletions pkgs/desktops/cinnamon/default.nix
Original file line number Diff line number Diff line change
@@ -4,6 +4,7 @@ lib.makeScope pkgs.newScope (self: with self; {
cinnamon-desktop = callPackage ./cinnamon-desktop { };
cinnamon-menus = callPackage ./cinnamon-menus { };
cinnamon-translations = callPackage ./cinnamon-translations { };
cinnamon-settings-daemon = callPackage ./cinnamon-settings-daemon { };
cjs = callPackage ./cjs { };
xapps = callPackage ./xapps { };
})