Merge pull request #75138 from mkg20001/feat/add-xapps-cinnamon

cinnamon.xapps: init at 1.6.8
This commit is contained in:
worldofpeace 2019-12-14 22:25:11 -05:00 committed by GitHub
commit bfcc281a27
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 174 additions and 9 deletions

View file

@ -0,0 +1,5 @@
{ pkgs, lib }:
lib.makeScope pkgs.newScope (self: with self; {
xapps = callPackage ./xapps {};
})

View file

@ -0,0 +1,104 @@
{ fetchFromGitHub
, fetchpatch
, glib
, gobject-introspection
, gtk3
, libgnomekbd
, gdk-pixbuf
, cairo
, xorg
, meson
, ninja
, pkgconfig
, python3
, stdenv
, vala
, wrapGAppsHook
, inxi
, mate
}:
stdenv.mkDerivation rec {
pname = "xapps";
version = "1.6.8";
outputs = [ "out" "dev" ];
src = fetchFromGitHub {
owner = "linuxmint";
repo = pname;
rev = version;
sha256 = "09f77vsydv8r6r43py8hrpq7pb4a1pfivy19zgijjy2241i7059v";
};
# TODO: https://github.com/NixOS/nixpkgs/issues/36468
NIX_CFLAGS_COMPILE = [
"-I${glib.dev}/include/gio-unix-2.0"
];
patches = [
(fetchpatch { # details see https://github.com/linuxmint/xapps/pull/65
url = "https://github.com/linuxmint/xapps/compare/d361d9cf357fade59b4bb68df2dcb2c0c39f90e1...2dfe82ec68981ea046345b2be349bd56293579f7.diff";
sha256 = "0sffclamvjas8ad57kxrg0vrgrd95xsk0xdl53dc3yivpxkfxrnk";
})
];
nativeBuildInputs = [
gobject-introspection
meson
ninja
pkgconfig
python3
vala
wrapGAppsHook
];
buildInputs = [
(python3.withPackages(ps: with ps; [
pygobject3
setproctitle # mate applet
]))
libgnomekbd
gdk-pixbuf
xorg.libxkbfile
python3.pkgs.pygobject3 # for .pc file
mate.mate-panel # for gobject-introspection
];
# Requires in xapp.pc
propagatedBuildInputs = [
gtk3
cairo
glib
];
mesonFlags = [
"-Dpy-overrides-dir=${placeholder "out"}/${python3.sitePackages}/gi/overrides"
];
postPatch = ''
chmod +x schemas/meson_install_schemas.py # patchShebangs requires executable file
# The fetchpatch hook removes the renames, so postPatch has to rename those files, remove once PR merged
mv files/usr/bin/pastebin scripts/pastebin
mv files/usr/bin/upload-system-info scripts/upload-system-info
mv files/usr/bin/xfce4-set-wallpaper scripts/xfce4-set-wallpaper
mv files/usr/share/icons/hicolor icons
patchShebangs \
libxapp/g-codegen.py \
schemas/meson_install_schemas.py
# Patch pastebin & inxi location
sed "s|/usr/bin/pastebin|$out/bin/pastebin|" -i scripts/upload-system-info
sed "s|'inxi'|'${inxi}/bin/inxi'|" -i scripts/upload-system-info
'';
meta = with stdenv.lib; {
homepage = "https://github.com/linuxmint/xapps";
description = "Cross-desktop libraries and common resources";
license = licenses.lgpl3;
platforms = platforms.linux;
maintainers = [ maintainers.mkg20001 ];
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, file, intltool, glib, gtk3, libxklavier, makeWrapper, gnome3 }:
{ stdenv, fetchurl, pkgconfig, file, intltool, glib, gtk3, libxklavier, wrapGAppsHook, gnome3 }:
stdenv.mkDerivation rec {
pname = "libgnomekbd";
@ -13,13 +13,19 @@ stdenv.mkDerivation rec {
updateScript = gnome3.updateScript { packageName = pname; };
};
nativeBuildInputs = [ pkgconfig file intltool makeWrapper ];
buildInputs = [ glib gtk3 libxklavier ];
nativeBuildInputs = [
file
intltool
pkgconfig
wrapGAppsHook
];
preFixup = ''
wrapProgram $out/bin/gkbd-keyboard-display \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
'';
# Requires in libgnomekbd.pc
propagatedBuildInputs = [
gtk3
libxklavier
glib
];
meta = with stdenv.lib; {
description = "Keyboard management library";

View file

@ -0,0 +1,43 @@
{ stdenv
, fetchFromGitHub
, buildPythonPackage
, psutil
, pygobject3
, gtk3
, gobject-introspection
, xapps
, polkit
}:
buildPythonPackage rec {
pname = "xapp";
version = "1.8.1";
src = fetchFromGitHub {
owner = "linuxmint";
repo = "python-xapp";
rev = version;
sha256 = "0vw3cn09nx75lv4d9idp5fdhd81xs279zhbyyilynq29cxxs2zil";
};
propagatedBuildInputs = [
psutil
pygobject3
gtk3
gobject-introspection
xapps
polkit
];
postPatch = ''
substituteInPlace "xapp/os.py" --replace "/usr/bin/pkexec" "${polkit}/bin/pkexec"
'';
meta = with stdenv.lib; {
homepage = "https://github.com/linuxmint/python-xapp";
description = "Cross-desktop libraries and common resources for python";
license = licenses.lgpl2;
platforms = platforms.linux;
maintainers = [ maintainers.mkg20001 ];
};
}

View file

@ -23345,6 +23345,8 @@ in
### DESKTOP ENVIRONMENTS
cinnamon = recurseIntoAttrs (callPackage ../desktops/cinnamon { });
deepin = recurseIntoAttrs (import ../desktops/deepin {
inherit pkgs libsForQt5;
inherit (lib) makeScope;

View file

@ -5422,6 +5422,11 @@ in {
xapian = callPackage ../development/python-modules/xapian { xapian = pkgs.xapian; };
xapp = callPackage ../development/python-modules/xapp {
inherit (pkgs) gtk3 gobject-introspection polkit;
inherit (pkgs.cinnamon) xapps;
};
xlwt = callPackage ../development/python-modules/xlwt { };
xxhash = callPackage ../development/python-modules/xxhash { };