uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
147
pkgs/applications/display-managers/lightdm/default.nix
Normal file
147
pkgs/applications/display-managers/lightdm/default.nix
Normal file
|
|
@ -0,0 +1,147 @@
|
|||
{ lib, stdenv
|
||||
, fetchFromGitHub
|
||||
, nix-update-script
|
||||
, substituteAll
|
||||
, plymouth
|
||||
, pam
|
||||
, pkg-config
|
||||
, autoconf
|
||||
, automake
|
||||
, libtool
|
||||
, libxcb
|
||||
, glib
|
||||
, libXdmcp
|
||||
, itstool
|
||||
, intltool
|
||||
, libxklavier
|
||||
, libgcrypt
|
||||
, audit
|
||||
, busybox
|
||||
, polkit
|
||||
, accountsservice
|
||||
, gtk-doc
|
||||
, gnome
|
||||
, gobject-introspection
|
||||
, vala
|
||||
, fetchpatch
|
||||
, withQt4 ? false
|
||||
, qt4
|
||||
, withQt5 ? false
|
||||
, qtbase
|
||||
, yelp-tools
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lightdm";
|
||||
version = "1.30.0";
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "CanonicalLtd";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0i1yygmjbkdjnqdl9jn8zsa1mfs2l19qc4k2capd8q1ndhnjm2dx";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
automake
|
||||
yelp-tools
|
||||
gnome.yelp-xsl
|
||||
gobject-introspection
|
||||
gtk-doc
|
||||
intltool
|
||||
itstool
|
||||
libtool
|
||||
pkg-config
|
||||
vala
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
accountsservice
|
||||
audit
|
||||
glib
|
||||
libXdmcp
|
||||
libgcrypt
|
||||
libxcb
|
||||
libxklavier
|
||||
pam
|
||||
polkit
|
||||
] ++ optional withQt4 qt4
|
||||
++ optional withQt5 qtbase;
|
||||
|
||||
patches = [
|
||||
# Adds option to disable writing dmrc files
|
||||
(fetchpatch {
|
||||
url = "https://src.fedoraproject.org/rpms/lightdm/raw/4cf0d2bed8d1c68970b0322ccd5dbbbb7a0b12bc/f/lightdm-1.25.1-disable_dmrc.patch";
|
||||
sha256 = "06f7iabagrsiws2l75sx2jyljknr9js7ydn151p3qfi104d1541n";
|
||||
})
|
||||
|
||||
# Don't use etc/dbus-1/system.d
|
||||
(fetchpatch {
|
||||
url = "https://github.com/canonical/lightdm/commit/a99376f5f51aa147aaf81287d7ce70db76022c47.patch";
|
||||
sha256 = "1zyx1qqajrmqcf9hbsapd39gmdanswd9l78rq7q6rdy4692il3yn";
|
||||
})
|
||||
|
||||
# https://github.com/canonical/lightdm/pull/104
|
||||
(fetchpatch {
|
||||
url = "https://github.com/canonical/lightdm/commit/03f218981733e50d810767f9d04e42ee156f7feb.patch";
|
||||
sha256 = "07w18m2gpk29z6ym4y3lzsmg5dk3ffn39sq6lac26ap7narf4ma7";
|
||||
})
|
||||
|
||||
# Hardcode plymouth to fix transitions.
|
||||
# For some reason it can't find `plymouth`
|
||||
# even when it's in PATH in environment.systemPackages.
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
plymouth = "${plymouth}/bin/plymouth";
|
||||
})
|
||||
];
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
preConfigure = "NOCONFIGURE=1 ./autogen.sh";
|
||||
|
||||
configureFlags = [
|
||||
"--localstatedir=/var"
|
||||
"--sysconfdir=/etc"
|
||||
"--disable-tests"
|
||||
"--disable-dmrc"
|
||||
] ++ optional withQt4 "--enable-liblightdm-qt"
|
||||
++ optional withQt5 "--enable-liblightdm-qt5";
|
||||
|
||||
installFlags = [
|
||||
"sysconfdir=${placeholder "out"}/etc"
|
||||
"localstatedir=\${TMPDIR}"
|
||||
];
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace autogen.sh \
|
||||
--replace "which" "${busybox}/bin/which"
|
||||
|
||||
substituteInPlace src/shared-data-manager.c \
|
||||
--replace /bin/rm ${busybox}/bin/rm
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
rm -rf $out/etc/apparmor.d $out/etc/init $out/etc/pam.d
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script {
|
||||
attrPath = pname;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/CanonicalLtd/lightdm";
|
||||
description = "A cross-desktop display manager";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ ] ++ teams.pantheon.members;
|
||||
};
|
||||
}
|
||||
13
pkgs/applications/display-managers/lightdm/fix-paths.patch
Normal file
13
pkgs/applications/display-managers/lightdm/fix-paths.patch
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/src/plymouth.c b/src/plymouth.c
|
||||
index d1ed91f4..318f9409 100644
|
||||
--- a/src/plymouth.c
|
||||
+++ b/src/plymouth.c
|
||||
@@ -24,7 +24,7 @@ static gboolean has_active_vt = FALSE;
|
||||
static gboolean
|
||||
plymouth_run_command (const gchar *command, gint *exit_status)
|
||||
{
|
||||
- g_autofree gchar *command_line = g_strdup_printf ("plymouth %s", command);
|
||||
+ g_autofree gchar *command_line = g_strdup_printf ("@plymouth@ %s", command);
|
||||
g_autoptr(GError) error = NULL;
|
||||
gboolean result = g_spawn_command_line_sync (command_line, NULL, NULL, exit_status, &error);
|
||||
|
||||
79
pkgs/applications/display-managers/lightdm/gtk-greeter.nix
Normal file
79
pkgs/applications/display-managers/lightdm/gtk-greeter.nix
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
{ lib, stdenv
|
||||
, lightdm_gtk_greeter
|
||||
, fetchurl
|
||||
, lightdm
|
||||
, pkg-config
|
||||
, intltool
|
||||
, linkFarm
|
||||
, wrapGAppsHook
|
||||
, useGTK2 ? false
|
||||
, gtk2
|
||||
, gtk3 # gtk3 seems better supported
|
||||
, xfce4-dev-tools
|
||||
, at-spi2-core
|
||||
, librsvg
|
||||
, hicolor-icon-theme
|
||||
}:
|
||||
|
||||
#ToDo: bad icons with gtk2;
|
||||
# avatar icon is missing in standard hicolor theme, I don't know where gtk3 takes it from
|
||||
|
||||
let
|
||||
ver_branch = "2.0";
|
||||
version = "2.0.7";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lightdm-gtk-greeter";
|
||||
inherit version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/${ver_branch}/${version}/+download/${pname}-${version}.tar.gz";
|
||||
sha256 = "1g7wc3d3vqfa7mrdhx1w9ywydgjbffla6rbrxq9k3sc62br97qms";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config intltool xfce4-dev-tools wrapGAppsHook ];
|
||||
buildInputs = [ lightdm librsvg hicolor-icon-theme ]
|
||||
++ (if useGTK2 then [ gtk2 ] else [ gtk3 ]);
|
||||
|
||||
configureFlags = [
|
||||
"--localstatedir=/var"
|
||||
"--sysconfdir=/etc"
|
||||
"--disable-indicator-services-command"
|
||||
"--sbindir=${placeholder "out"}/bin" # for wrapGAppsHook to wrap automatically
|
||||
] ++ lib.optional useGTK2 "--with-gtk2";
|
||||
|
||||
postPatch = ''
|
||||
# exo-csource has been dropped from exo, and replaced by xdt-csource from xfce4-dev-tools
|
||||
for f in configure.ac src/Makefile.am; do
|
||||
substituteInPlace $f --replace exo-csource xdt-csource
|
||||
done
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
configureFlagsArray+=( --enable-at-spi-command="${at-spi2-core}/libexec/at-spi-bus-launcher --launch-immediately" )
|
||||
'';
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
|
||||
|
||||
installFlags = [
|
||||
"localstatedir=\${TMPDIR}"
|
||||
"sysconfdir=${placeholder "out"}/etc"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
substituteInPlace "$out/share/xgreeters/lightdm-gtk-greeter.desktop" \
|
||||
--replace "Exec=lightdm-gtk-greeter" "Exec=$out/bin/lightdm-gtk-greeter"
|
||||
'';
|
||||
|
||||
passthru.xgreeters = linkFarm "lightdm-gtk-greeter-xgreeters" [{
|
||||
path = "${lightdm_gtk_greeter}/share/xgreeters/lightdm-gtk-greeter.desktop";
|
||||
name = "lightdm-gtk-greeter.desktop";
|
||||
}];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://launchpad.net/lightdm-gtk-greeter";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue