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:
Anton Arapov 2021-04-03 12:58:10 +02:00 committed by Alan Daniels
commit 56de2bcd43
30691 changed files with 3076956 additions and 0 deletions

View file

@ -0,0 +1,74 @@
{ lib
, fetchurl
, pkg-config
, gnome
, gtk3
, wrapGAppsHook
, gobject-introspection
, itstool
, libxml2
, python3
, at-spi2-core
, dbus
, gettext
, libwnck
, adwaita-icon-theme
}:
python3.pkgs.buildPythonApplication rec {
pname = "accerciser";
version = "3.38.0";
format = "other";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0fd9vv2abd2if2qj4nlfy7mpd7rc4sx18zhmxd5ijlnfhkpggbp5";
};
nativeBuildInputs = [
gettext
gobject-introspection # For setup hook
itstool
libxml2
pkg-config
dbus
wrapGAppsHook
];
buildInputs = [
adwaita-icon-theme
at-spi2-core
gtk3
libwnck
];
propagatedBuildInputs = with python3.pkgs; [
ipython
pyatspi
pycairo
pygobject3
setuptools
xlib
];
# Strict deps breaks accerciser
# and https://github.com/NixOS/nixpkgs/issues/56943
strictDeps = false;
passthru = {
updateScript = gnome.updateScript {
packageName = "accerciser";
attrPath = "gnome.accerciser";
versionPolicy = "odd-unstable";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Accerciser";
description = "Interactive Python accessibility explorer";
maintainers = teams.gnome.members;
license = licenses.bsd3;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,114 @@
{ lib
, stdenv
, gettext
, fetchurl
, wrapGAppsHook
, gnome-video-effects
, libcanberra-gtk3
, pkg-config
, gtk3
, glib
, clutter-gtk
, clutter-gst
, gst_all_1
, itstool
, vala
, docbook_xml_dtd_43
, docbook-xsl-nons
, appstream-glib
, libxslt
, gtk-doc
, adwaita-icon-theme
, librsvg
, totem
, gdk-pixbuf
, gnome
, gnome-desktop
, libxml2
, meson
, ninja
, dbus
, python3
, pipewire
}:
stdenv.mkDerivation rec {
pname = "cheese";
version = "41.1";
outputs = [ "out" "man" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/cheese/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "UilgyihzD/ZkOQcLBEGMngpLtVVg11v+CLIY2ixn5Uc=";
};
nativeBuildInputs = [
appstream-glib
docbook_xml_dtd_43
docbook-xsl-nons
gettext
gtk-doc
itstool
libxml2
libxslt # for xsltproc
meson
ninja
pkg-config
python3
vala
wrapGAppsHook
glib # for glib-compile-schemas
];
buildInputs = [
adwaita-icon-theme
clutter-gst
clutter-gtk
dbus
gdk-pixbuf
glib
gnome-desktop
gnome-video-effects
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gstreamer
gtk3
libcanberra-gtk3
librsvg
pipewire # PipeWire provides a gstreamer plugin for using PipeWire for video
];
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
'';
preFixup = ''
gappsWrapperArgs+=(
# Effects
--prefix XDG_DATA_DIRS : "${gnome-video-effects}/share"
# vp8enc preset
--prefix GST_PRESET_PATH : "${gst_all_1.gst-plugins-good}/share/gstreamer-1.0/presets"
# Thumbnailers
--prefix XDG_DATA_DIRS : "${gdk-pixbuf}/share"
--prefix XDG_DATA_DIRS : "${totem}/share"
)
'';
passthru = {
updateScript = gnome.updateScript {
packageName = "cheese";
attrPath = "gnome.cheese";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Cheese";
description = "Take photos and videos with your webcam, with fun graphical effects";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,93 @@
{ lib
, stdenv
, fetchurl
, desktop-file-utils
, gettext
, glibcLocales
, itstool
, libxml2
, meson
, ninja
, pkg-config
, python3
, wrapGAppsHook
, cpio
, file
, glib
, gnome
, gtk3
, libhandy
, json-glib
, libarchive
, libnotify
, nautilus
, unzip
}:
stdenv.mkDerivation rec {
pname = "file-roller";
version = "3.42.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "HEOObVPsEP9PLrWyLXu/KKfCqElXq2SnUcHN88UjAsc=";
};
LANG = "en_US.UTF-8"; # postinstall.py
nativeBuildInputs = [
desktop-file-utils
gettext
glibcLocales
itstool
libxml2
meson
ninja
pkg-config
python3
wrapGAppsHook
];
buildInputs = [
cpio
file
glib
gnome.adwaita-icon-theme
gtk3
libhandy
json-glib
libarchive
libnotify
nautilus
];
PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0";
postPatch = ''
chmod +x postinstall.py # patchShebangs requires executable file
patchShebangs postinstall.py
patchShebangs data/set-mime-type-entry.py
'';
preFixup = ''
# Workaround because of https://gitlab.gnome.org/GNOME/file-roller/issues/40
gappsWrapperArgs+=(
--prefix PATH : ${lib.makeBinPath [ unzip ]}
)
'';
passthru = {
updateScript = gnome.updateScript {
packageName = "file-roller";
attrPath = "gnome.file-roller";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/FileRoller";
description = "Archive manager for the GNOME desktop environment";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = teams.gnome.members ++ teams.pantheon.members;
};
}

View file

@ -0,0 +1,13 @@
diff --git a/gedit/meson.build b/gedit/meson.build
index a8683e61a..fc48669f7 100644
--- a/gedit/meson.build
+++ b/gedit/meson.build
@@ -191,7 +191,7 @@ libgedit_shared_lib = shared_library(
c_args: libgedit_c_args,
link_args: libgedit_link_args,
install: true,
- install_dir: get_option('libdir') / 'gedit',
+ install_dir: get_option('prefix') / get_option('libdir') / 'gedit',
)
# GObject Introspection

View file

@ -0,0 +1,91 @@
{ stdenv
, lib
, meson
, fetchurl
, python3
, pkg-config
, gtk3
, gtk-mac-integration
, glib
, adwaita-icon-theme
, libpeas
, libxml2
, gtksourceview4
, gsettings-desktop-schemas
, wrapGAppsHook
, ninja
, libsoup
, gnome
, gspell
, perl
, itstool
, desktop-file-utils
, vala
}:
stdenv.mkDerivation rec {
pname = "gedit";
version = "42.1";
src = fetchurl {
url = "mirror://gnome/sources/gedit/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "fx/UPfURDUw33mVBmT9B8PvD78eQkA6SBTR5ugaZIOk=";
};
patches = [
# We patch gobject-introspection and meson to store absolute paths to libraries in typelibs
# but that requires the install_dir is an absolute path.
./correct-gir-lib-path.patch
];
nativeBuildInputs = [
desktop-file-utils
itstool
libxml2
meson
ninja
perl
pkg-config
python3
vala
wrapGAppsHook
];
buildInputs = [
adwaita-icon-theme
glib
gsettings-desktop-schemas
gspell
gtk3
gtksourceview4
libpeas
libsoup
] ++ lib.optionals stdenv.isDarwin [
gtk-mac-integration
];
postPatch = ''
chmod +x build-aux/meson/post_install.py
chmod +x plugins/externaltools/scripts/gedit-tool-merge.pl
patchShebangs build-aux/meson/post_install.py
patchShebangs plugins/externaltools/scripts/gedit-tool-merge.pl
'';
# Reliably fails to generate gedit-file-browser-enum-types.h in time
enableParallelBuilding = false;
passthru = {
updateScript = gnome.updateScript {
packageName = "gedit";
attrPath = "gnome.gedit";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Gedit";
description = "Official text editor of the GNOME desktop environment";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,81 @@
{ stdenv
, lib
, fetchurl
, pkg-config
, gi-docgen
, meson
, ninja
, gnome
, desktop-file-utils
, appstream-glib
, gettext
, itstool
, libxml2
, gtk4
, glib
, atk
, gobject-introspection
, wrapGAppsHook4
}:
stdenv.mkDerivation rec {
pname = "ghex";
version = "42.2";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/ghex/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "Rd6Oa4ofMd5amRC+GMB/CaMo2HU434BAOuxa+IF8ljE=";
};
nativeBuildInputs = [
desktop-file-utils
gettext
itstool
meson
ninja
pkg-config
gi-docgen
gobject-introspection
wrapGAppsHook4
];
buildInputs = [
gtk4
atk
glib
];
checkInputs = [
appstream-glib
desktop-file-utils
];
mesonFlags = [
"-Dgtk_doc=true"
] ++ lib.optionals stdenv.isDarwin [
# mremap does not exist on darwin
"-Dmmap-buffer-backend=false"
];
postFixup = ''
# Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
moveToOutput "share/doc" "$devdoc"
'';
passthru = {
updateScript = gnome.updateScript {
packageName = "ghex";
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Ghex";
description = "Hex editor for GNOME desktop environment";
platforms = platforms.unix;
license = licenses.gpl2Plus;
maintainers = teams.gnome.members;
};
}

View file

@ -0,0 +1,97 @@
{ stdenv
, lib
, meson
, ninja
, gettext
, fetchurl
, fetchpatch
, evince
, gjs
, pkg-config
, gtk3
, glib
, tracker
, tracker-miners
, libxslt
, webkitgtk
, gnome-desktop
, libgepub
, gnome
, gdk-pixbuf
, gsettings-desktop-schemas
, adwaita-icon-theme
, docbook-xsl-nons
, docbook_xml_dtd_42
, desktop-file-utils
, python3
, gobject-introspection
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "gnome-books";
version = "40.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "0c41l8m2di8h39bmk2fnhpwglwp6qhljmwqqbihzp4ay9976zrc5";
};
patches = [
# Fix build with meson 0.61
# https://gitlab.gnome.org/GNOME/gnome-books/-/merge_requests/62
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-books/-/commit/2663dcdaaaa71f067a4c2d0005eecc0fdf940bf5.patch";
sha256 = "v2mLzrxSWrkJ0N6seR8jNXX14FsneEPuE9ELLVUe6+E=";
})
];
nativeBuildInputs = [
meson
ninja
pkg-config
gettext
libxslt
desktop-file-utils
docbook-xsl-nons
docbook_xml_dtd_42
wrapGAppsHook
python3
];
buildInputs = [
gtk3
glib
gsettings-desktop-schemas
gdk-pixbuf
adwaita-icon-theme
evince
webkitgtk
gjs
gobject-introspection
tracker
tracker-miners
gnome-desktop
libgepub
];
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
passthru = {
updateScript = gnome.updateScript {
packageName = "gnome-books";
attrPath = "gnome.gnome-books";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Books";
description = "An e-book manager application for GNOME";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,154 @@
{ lib, stdenv
, fetchurl
, meson
, ninja
, wrapGAppsHook
, pkg-config
, gettext
, itstool
, libvirt-glib
, glib
, gobject-introspection
, libxml2
, gtk3
, gtksourceview4
, gtk-vnc
, freerdp
, libvirt
, spice-gtk
, python3
, appstream-glib
, spice-protocol
, libhandy
, libsoup
, libosinfo
, systemd
, tracker
, tracker-miners
, vala
, libcap
, yajl
, gmp
, gdbm
, cyrus_sasl
, gnome
, librsvg
, desktop-file-utils
, mtools
, cdrkit
, libcdio
, libusb1
, libarchive
, acl
, libgudev
, libsecret
, libcap_ng
, numactl
, libapparmor
, json-glib
, webkitgtk
, vte
, glib-networking
, qemu-utils
, qemu
}:
stdenv.mkDerivation rec {
pname = "gnome-boxes";
version = "42.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "lvXQEbdQjbVhvw0WbA6p6LEhgFxA5dnzYRkkXBUXIIA=";
};
patches = [
# Fix path to libgovf-0.1.so (and libgtk-frdp-0.1.so when enabling rdp meson option)
# in the gir file. We patch gobject-introspection to hardcode absolute paths but
# our Meson patch will only pass the info when install_dir is absolute as well.
./fix-gir-lib-path.patch
];
doCheck = true;
nativeBuildInputs = [
appstream-glib # for appstream-util
desktop-file-utils
gettext
gobject-introspection
itstool
meson
ninja
pkg-config
python3
vala
wrapGAppsHook
];
# Required for USB redirection PolicyKit rules file
propagatedUserEnvPkgs = [
spice-gtk
];
buildInputs = [
acl
cyrus_sasl
freerdp
gdbm
glib
glib-networking
gmp
gnome.adwaita-icon-theme
gtk-vnc
gtk3
gtksourceview4
json-glib
libapparmor
libarchive
libcap
libcap_ng
libgudev
libhandy
libosinfo
librsvg
libsecret
libsoup
libusb1
libvirt
libvirt-glib
libxml2
numactl
spice-gtk
spice-protocol
systemd
tracker
tracker-miners
vte
webkitgtk
yajl
];
preFixup = ''
gappsWrapperArgs+=(--prefix PATH : "${lib.makeBinPath [ mtools cdrkit libcdio qemu-utils qemu ]}")
'';
postPatch = ''
chmod +x build-aux/post_install.py # patchShebangs requires executable file
patchShebangs build-aux/post_install.py
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
description = "Simple GNOME 3 application to access remote or virtual systems";
homepage = "https://wiki.gnome.org/Apps/Boxes";
license = licenses.lgpl2Plus;
platforms = platforms.linux;
maintainers = teams.gnome.members;
};
}

View file

@ -0,0 +1,22 @@
--- a/subprojects/libovf-glib/govf/meson.build
+++ b/subprojects/libovf-glib/govf/meson.build
@@ -39,7 +39,7 @@ govf_lib = shared_library('govf-' + api_version,
govf_sources,
dependencies: govf_deps,
install: true,
- install_dir: libdir
+ install_dir: get_option ('prefix') / libdir
)
govf_dep = declare_dependency(
--- a/subprojects/gtk-frdp/src/meson.build
+++ b/subprojects/gtk-frdp/src/meson.build
@@ -50,7 +50,7 @@ gtk_frdp_lib = shared_library('gtk-frdp-' + api_version,
gtk_frdp_sources,
dependencies: gtk_frdp_deps,
install: true,
- install_dir: libdir
+ install_dir: get_option ('prefix') / libdir
)
gtk_frdp_dep = declare_dependency(

View file

@ -0,0 +1,68 @@
{ stdenv
, lib
, fetchurl
, meson
, ninja
, pkg-config
, wrapGAppsHook4
, libgweather
, geoclue2
, geocode-glib
, gettext
, libxml2
, gnome
, gtk4
, evolution-data-server
, libical
, libsoup
, glib
, gsettings-desktop-schemas
, libadwaita
}:
stdenv.mkDerivation rec {
pname = "gnome-calendar";
version = "42.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "0SKBy78a+GxyN1/mrZNG7Q4sLziKHq6FjOzmQGCm66g=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
gettext
libxml2
wrapGAppsHook4
];
buildInputs = [
gtk4
evolution-data-server # waiting for GTK4 port
libical
libsoup
glib
libgweather
geoclue2
geocode-glib
gsettings-desktop-schemas
libadwaita
];
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Calendar";
description = "Simple and beautiful calendar application for GNOME";
maintainers = teams.gnome.members;
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,88 @@
{ lib
, stdenv
, fetchurl
, meson
, ninja
, pkg-config
, gettext
, gnome
, glib
, gtk4
, pango
, wrapGAppsHook4
, python3
, desktop-file-utils
, gobject-introspection
, gjs
, libunistring
, libadwaita
, gsettings-desktop-schemas
, gnome-desktop
}:
stdenv.mkDerivation rec {
pname = "gnome-characters";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-characters/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "XaD/uBb4prRPMDdEyoJ6NAgBGMHJONjXmvF7f+Z5gPg=";
};
nativeBuildInputs = [
gettext
gobject-introspection
meson
ninja
pkg-config
python3
desktop-file-utils
wrapGAppsHook4
];
buildInputs = [
gjs
glib
gnome-desktop # for typelib
gsettings-desktop-schemas
gtk4
libunistring
libadwaita
pango
];
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
# https://gitlab.gnome.org/GNOME/gnome-characters/-/merge_requests/70
substituteInPlace meson_post_install.py \
--replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
'';
dontWrapGApps = true;
postFixup = ''
# Fixes https://github.com/NixOS/nixpkgs/issues/31168
file="$out/share/org.gnome.Characters/org.gnome.Characters"
sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \
-i $file
wrapGApp "$file"
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Characters";
description = "Simple utility application to find and insert unusual characters";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,86 @@
{ stdenv
, lib
, fetchurl
, meson
, ninja
, gettext
, pkg-config
, wrapGAppsHook
, itstool
, desktop-file-utils
, vala_0_56
, gobject-introspection
, libxml2
, gtk4
, glib
, gsound
, sound-theme-freedesktop
, gsettings-desktop-schemas
, gnome-desktop
, geocode-glib
, gnome
, gdk-pixbuf
, geoclue2
, libgweather
, libadwaita
}:
stdenv.mkDerivation rec {
pname = "gnome-clocks";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-clocks/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "DnEY20oDLjzqMhLZjLuCjWt88i/gXgxfyLORxqPdb+A=";
};
nativeBuildInputs = [
vala_0_56
meson
ninja
pkg-config
gettext
itstool
wrapGAppsHook
desktop-file-utils
libxml2
gobject-introspection # for finding vapi files
];
buildInputs = [
gtk4
glib
gsettings-desktop-schemas
gdk-pixbuf
gnome-desktop
geocode-glib
geoclue2
libgweather
gsound
libadwaita
];
preFixup = ''
gappsWrapperArgs+=(
# Fallback sound theme
--prefix XDG_DATA_DIRS : "${sound-theme-freedesktop}/share"
)
'';
doCheck = true;
passthru = {
updateScript = gnome.updateScript {
packageName = "gnome-clocks";
attrPath = "gnome.gnome-clocks";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Clocks";
description = "Clock application designed for GNOME 3";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,75 @@
{ lib
, stdenv
, fetchurl
, meson
, ninja
, pkg-config
, vala_0_56
, gettext
, itstool
, python3
, appstream-glib
, desktop-file-utils
, wrapGAppsHook
, glib
, gtk3
, libhandy
, libsecret
, libxml2
, gtk-vnc
, gtk-frdp
, gnome
}:
stdenv.mkDerivation rec {
pname = "gnome-connections";
version = "42.1.2";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
hash = "sha256-2ObnJ0EJHYkt/IQoH2JVUdBWjNSC1I21ik7bivoTd7Y=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
vala_0_56
gettext
itstool
python3
appstream-glib
desktop-file-utils
glib # glib-compile-resources
wrapGAppsHook
];
buildInputs = [
glib
gtk-vnc
gtk3
libhandy
libsecret
libxml2
gtk-frdp
];
postPatch = ''
chmod +x build-aux/meson/postinstall.py
patchShebangs build-aux/meson/postinstall.py
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
};
};
meta = with lib; {
homepage = "https://gitlab.gnome.org/GNOME/connections";
description = "A remote desktop client for the GNOME desktop environment";
maintainers = teams.gnome.members;
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,127 @@
{ lib, stdenv
, meson
, ninja
, gettext
, fetchurl
, fetchpatch
, evince
, gjs
, pkg-config
, gtk3
, glib
, tracker
, tracker-miners
, itstool
, libxslt
, webkitgtk
, libgdata
, gnome-desktop
, libzapojit
, libgepub
, gnome
, gdk-pixbuf
, libsoup
, docbook_xsl
, docbook_xml_dtd_42
, gobject-introspection
, inkscape
, poppler_utils
, desktop-file-utils
, wrapGAppsHook
, python3
, appstream-glib
, gsettings-desktop-schemas
}:
stdenv.mkDerivation rec {
pname = "gnome-documents";
version = "3.34.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-documents/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1qph567mapg3s1a26k7b8y57g9bklhj2mh8xm758z9zkms20xafq";
};
patches = [
# Fix inkscape 1.0 usage
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-documents/commit/0f55a18c40a61e6ae4ec4652604775f139892350.diff";
sha256 = "1yrisq69dl1dn7639drlbza20a5ic6xg04ksr9iq4sxdx3xj3d8s";
})
];
nativeBuildInputs = [
meson
ninja
pkg-config
gettext
itstool
libxslt
desktop-file-utils
docbook_xsl
docbook_xml_dtd_42
wrapGAppsHook
python3
appstream-glib
# building getting started
inkscape
poppler_utils
];
buildInputs = [
gtk3
glib
gsettings-desktop-schemas
gdk-pixbuf
gnome.adwaita-icon-theme
evince
libsoup
webkitgtk
gjs
gobject-introspection
tracker
tracker-miners
libgdata
gnome-desktop
libzapojit
libgepub
];
doCheck = true;
mesonFlags = [
"-Dgetting_started=true"
];
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
preFixup = ''
substituteInPlace $out/bin/gnome-documents --replace gapplication "${glib.bin}/bin/gapplication"
'';
preConfigure =
# To silence inkscape warnings regarding profile directory
''
export INKSCAPE_PROFILE_DIR="$(mktemp -d)"
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
broken = true; # Tracker 3 not supported and it cannot start Tracker 2.
homepage = "https://wiki.gnome.org/Apps/Documents";
description = "Document manager application designed to work with GNOME 3";
maintainers = teams.gnome.members;
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,79 @@
{ stdenv
, lib
, fetchurl
, meson
, ninja
, pkg-config
, gnome
, glib
, gtk3
, wrapGAppsHook
, gettext
, itstool
, libhandy
, libxml2
, libxslt
, docbook_xsl
, docbook_xml_dtd_43
, systemd
, python3
, gsettings-desktop-schemas
}:
stdenv.mkDerivation rec {
pname = "gnome-logs";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-logs/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "TV5FFp1r9DkC16npoHk8kW65LaumuoWzXI629nLNq9c=";
};
nativeBuildInputs = [
python3
meson
ninja
pkg-config
wrapGAppsHook
gettext
itstool
libxml2
libxslt
docbook_xsl
docbook_xml_dtd_43
];
buildInputs = [
glib
gtk3
libhandy
systemd
gsettings-desktop-schemas
];
mesonFlags = [
"-Dman=true"
];
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
'';
doCheck = true;
passthru = {
updateScript = gnome.updateScript {
packageName = "gnome-logs";
attrPath = "gnome.gnome-logs";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Logs";
description = "A log viewer for the systemd journal";
maintainers = teams.gnome.members;
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,104 @@
{ stdenv
, lib
, fetchurl
, meson
, ninja
, gettext
, python3
, pkg-config
, gnome
, gtk3
, gobject-introspection
, gdk-pixbuf
, librest
, librsvg
, libgweather
, geoclue2
, wrapGAppsHook
, folks
, libchamplain
, libsoup
, gsettings-desktop-schemas
, webkitgtk
, gjs
, libgee
, libhandy
, geocode-glib
, evolution-data-server
, gnome-online-accounts
}:
stdenv.mkDerivation rec {
pname = "gnome-maps";
version = "42.2";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "sha256-Xm0bDKfMk56pGq39pWM6hl6oX6VlADaGGyv+8L/QabE=";
};
doCheck = true;
nativeBuildInputs = [
gettext
meson
ninja
pkg-config
python3
wrapGAppsHook
];
buildInputs = [
evolution-data-server
folks
gdk-pixbuf
geoclue2
geocode-glib
gjs
gnome-online-accounts
gobject-introspection
gsettings-desktop-schemas
gtk3
libchamplain
libgee
libgweather
libhandy
librest
librsvg
libsoup
webkitgtk
];
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
# The .service file isn't wrapped with the correct environment
# so misses GIR files when started. By re-pointing from the gjs
# entry point to the wrapped binary we get back to a wrapped
# binary.
substituteInPlace "data/org.gnome.Maps.service.in" \
--replace "Exec=@pkgdatadir@/@app-id@" \
"Exec=$out/bin/gnome-maps"
'';
preCheck = ''
# “time.js” included by “timeTest” and “translationsTest” depends on “org.gnome.desktop.interface” schema.
export XDG_DATA_DIRS="${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:$XDG_DATA_DIRS"
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Maps";
description = "A map application for GNOME 3";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,112 @@
{ lib
, meson
, ninja
, gettext
, fetchurl
, gdk-pixbuf
, tracker
, libxml2
, python3
, libnotify
, wrapGAppsHook4
, libmediaart
, gobject-introspection
, gnome-online-accounts
, grilo
, grilo-plugins
, pkg-config
, gtk4
, pango
, glib
, desktop-file-utils
, appstream-glib
, itstool
, gnome
, gst_all_1
, libsoup
, libadwaita
, gsettings-desktop-schemas
}:
python3.pkgs.buildPythonApplication rec {
pname = "gnome-music";
version = "42.1";
format = "other";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "x3R/pqhrVrGK1v+VD/kB5Z7n+sEcaLKmcnr4bq7tgnA=";
};
nativeBuildInputs = [
meson
ninja
gettext
itstool
pkg-config
libxml2
wrapGAppsHook4
desktop-file-utils
appstream-glib
gobject-introspection
];
buildInputs = [
gtk4
pango
glib
libmediaart
gnome-online-accounts
gobject-introspection
gdk-pixbuf
python3
grilo
grilo-plugins
libnotify
libsoup
libadwaita
gsettings-desktop-schemas
tracker
] ++ (with gst_all_1; [
gstreamer
gst-plugins-base
gst-plugins-good
gst-plugins-bad
gst-plugins-ugly
gst-libav
]);
pythonPath = with python3.pkgs; [
pycairo
dbus-python
pygobject3
];
# Prevent double wrapping, let the Python wrapper use the args in preFixup.
dontWrapGApps = true;
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
doCheck = false;
# handle setup hooks better
strictDeps = false;
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Music";
description = "Music player and management application for the GNOME desktop environment";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,86 @@
{ stdenv
, lib
, fetchurl
, fetchpatch
, desktop-file-utils
, itstool
, meson
, ninja
, pkg-config
, python3
, wrapGAppsHook
, glib
, gtk3
, libgtop
, dnsutils
, iputils
, nmap
, inetutils
, gnome
}:
stdenv.mkDerivation rec {
pname = "gnome-nettool";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "pU8p7vIDiu5pVRyLGcpPdY5eueIJCkvGtWM9/wGIdR8=";
};
patches = [
# Fix build with meson 0.61
# https://gitlab.gnome.org/GNOME/gnome-nettool/-/merge_requests/3
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-nettool/-/commit/1124c3e1fdb8472d30b7636500229aa16cdc1244.patch";
sha256 = "fbpfL8Xb1GsadpQzAdmu8FSPs++bsGCVdcwnzQWttGY=";
})
];
nativeBuildInputs = [
desktop-file-utils
itstool
meson
ninja
pkg-config
python3
wrapGAppsHook
];
buildInputs = [
glib
gtk3
libgtop
];
postPatch = ''
chmod +x postinstall.py
patchShebangs postinstall.py
'';
preFixup = ''
gappsWrapperArgs+=(
--prefix PATH : "${lib.makeBinPath [
dnsutils # for dig
iputils # for ping
nmap # for nmap
inetutils # for ping6, traceroute, whois
]}"
)
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://gitlab.gnome.org/GNOME/gnome-nettool";
description = "A collection of networking tools";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,98 @@
{ stdenv
, lib
, meson
, ninja
, gettext
, fetchurl
, fetchpatch
, pkg-config
, wrapGAppsHook
, itstool
, desktop-file-utils
, python3
, glib
, gtk3
, evolution-data-server
, gnome-online-accounts
, json-glib
, libuuid
, curl
, libhandy
, webkitgtk
, gnome
, libxml2
, gsettings-desktop-schemas
, tracker
}:
stdenv.mkDerivation rec {
pname = "gnome-notes";
version = "40.1";
src = fetchurl {
url = "mirror://gnome/sources/bijiben/${lib.versions.major version}/bijiben-${version}.tar.xz";
sha256 = "1gvvb2klkzbmyzwkjgmscdiqcl8lyz9b0rxb4igjz079csq6z805";
};
patches = [
# Fix build with meson 0.61
# data/appdata/meson.build:3:5: ERROR: Function does not take positional arguments.
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-notes/-/commit/994af76ce5144062d55d141129bf6bf5fab002ee.patch";
sha256 = "sha256-z7dPOLZzaqvdqUIDy6+V3dKossRbG0EDjBu2oJCF6b4=";
})
];
doCheck = true;
postPatch = ''
chmod +x build-aux/meson_post_install.py
patchShebangs build-aux/meson_post_install.py
'';
nativeBuildInputs = [
meson
ninja
pkg-config
gettext
itstool
libxml2
desktop-file-utils
python3
wrapGAppsHook
];
buildInputs = [
glib
gtk3
json-glib
libuuid
curl
libhandy
webkitgtk
tracker
gnome-online-accounts
gsettings-desktop-schemas
evolution-data-server
gnome.adwaita-icon-theme
];
mesonFlags = [
"-Dupdate_mimedb=false"
];
passthru = {
updateScript = gnome.updateScript {
packageName = "bijiben";
attrPath = "gnome.gnome-notes";
};
};
meta = with lib; {
description = "Note editor designed to remain simple to use";
homepage = "https://wiki.gnome.org/Apps/Notes";
license = licenses.gpl3;
maintainers = teams.gnome.members;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,60 @@
{ lib, stdenv
, gettext
, fetchurl
, pkg-config
, gtk3
, glib
, meson
, ninja
, upower
, python3
, desktop-file-utils
, wrapGAppsHook
, gnome }:
let
pname = "gnome-power-manager";
version = "3.32.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz";
sha256 = "0drfn3wcc8l4n07qwv6p0rw2dwcd00hwzda282q62l6sasks2b2g";
};
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
nativeBuildInputs = [
meson
ninja
pkg-config
wrapGAppsHook
gettext
# needed by meson_post_install.sh
python3
glib.dev
desktop-file-utils
];
buildInputs = [
gtk3
glib
upower
gnome.adwaita-icon-theme
];
meta = with lib; {
homepage = "https://gitlab.gnome.org/GNOME/gnome-power-manager";
description = "View battery and power statistics provided by UPower";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,73 @@
{ stdenv
, lib
, fetchurl
, pkg-config
, gettext
, gobject-introspection
, wrapGAppsHook
, gjs
, glib
, gtk4
, gdk-pixbuf
, gst_all_1
, gnome
, meson
, ninja
, python3
, desktop-file-utils
, libadwaita
}:
stdenv.mkDerivation rec {
pname = "gnome-sound-recorder";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "TAjDFSgvPr96LabyDg/58McdqlIp/NL+C1wKqqoG8K0=";
};
nativeBuildInputs = [
pkg-config
gettext
meson
ninja
gobject-introspection
wrapGAppsHook
python3
desktop-file-utils
];
buildInputs = [
gjs
glib
gtk4
gdk-pixbuf
libadwaita
] ++ (with gst_all_1; [
gstreamer
gst-plugins-base
gst-plugins-good
gst-plugins-bad # for gstreamer-player-1.0
]);
postPatch = ''
chmod +x build-aux/meson_post_install.py
patchShebangs build-aux/meson_post_install.py
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
description = "A simple and modern sound recorder";
homepage = "https://wiki.gnome.org/Apps/SoundRecorder";
license = licenses.gpl2Plus;
maintainers = teams.gnome.members;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,69 @@
{ lib
, stdenv
, meson
, fetchurl
, python3
, pkg-config
, gtk4
, glib
, gtksourceview5
, gsettings-desktop-schemas
, wrapGAppsHook4
, ninja
, gnome
, enchant
, icu
, itstool
, libadwaita
, libxml2
, pcre
, appstream-glib
, desktop-file-utils
}:
stdenv.mkDerivation rec {
pname = "gnome-text-editor";
version = "42.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "sha256-o8hQgDO/tjqLSKBirB5nssMzugFTh5s4xmGWihA60Vw=";
};
nativeBuildInputs = [
appstream-glib
desktop-file-utils
itstool
libxml2 # for xmllint
meson
ninja
pkg-config
python3
wrapGAppsHook4
];
buildInputs = [
enchant
icu
glib
gsettings-desktop-schemas
gtk4
gtksourceview5
libadwaita
pcre
];
passthru = {
updateScript = gnome.updateScript {
packageName = "gnome-text-editor";
};
};
meta = with lib; {
homepage = "https://gitlab.gnome.org/GNOME/gnome-text-editor";
description = "A Text Editor for GNOME";
maintainers = teams.gnome.members;
license = licenses.gpl3Plus;
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,96 @@
{ lib
, stdenv
, fetchFromGitLab
, fetchpatch
, meson
, ninja
, pkg-config
, python3
, wrapGAppsHook
, gettext
, gnome
, glib
, gtk4
, wayland
, libadwaita
, libpeas
, gnome-online-accounts
, gsettings-desktop-schemas
, libportal-gtk4
, evolution-data-server
, libical
, librest
, json-glib
, itstool
, unstableGitUpdater
}:
stdenv.mkDerivation rec {
pname = "gnome-todo";
version = "unstable-2022-05-23";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "GNOME";
repo = "gnome-todo";
rev = "ac1d540de63e2540b4eb8a642054862b5793b40a";
sha256 = "7fJOXQpapQ8RqJq5tJEWjOxnY9qExz5SbYMWFDREQlY=";
};
patches = [
# fix build race bug https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=257667
(fetchpatch {
url = "https://cgit.freebsd.org/ports/plain/deskutils/gnome-todo/files/patch-src_meson.build?id=a4faaf6cf7835014b5f69a337b544ea4ee7f9655";
sha256 = "sha256:0ihixyq72yhx6njij7bldsqb80x3y217yh6livknlf5r1wr3hakn";
extraPrefix = "";
name = "gnome-todo_meson-build.patch";
})
];
nativeBuildInputs = [
meson
ninja
pkg-config
gettext
python3
wrapGAppsHook
itstool
];
buildInputs = [
glib
gtk4
wayland # required by gtk header
libadwaita
libpeas
gnome-online-accounts
gsettings-desktop-schemas
gnome.adwaita-icon-theme
# Plug-ins
libportal-gtk4 # background
evolution-data-server # eds
libical
librest # todoist
json-glib # todoist
];
postPatch = ''
chmod +x build-aux/meson/meson_post_install.py
patchShebangs build-aux/meson/meson_post_install.py
'';
passthru = {
updateScript = unstableGitUpdater {
url = "https://gitlab.gnome.org/GNOME/gnome-todo.git";
};
};
meta = with lib; {
description = "Personal task manager for GNOME";
homepage = "https://wiki.gnome.org/Apps/Todo";
license = licenses.gpl3Plus;
maintainers = teams.gnome.members;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,74 @@
{ lib
, stdenv
, fetchurl
, pkg-config
, gnome
, gtk4
, libadwaita
, wrapGAppsHook
, gjs
, gobject-introspection
, libgweather
, meson
, ninja
, geoclue2
, python3
, gsettings-desktop-schemas
}:
stdenv.mkDerivation rec {
pname = "gnome-weather";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-weather/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "V57mkdhT5bs/9Q6Me0P4Wundfls6ZJ4CwlSi2bgHtGU=";
};
nativeBuildInputs = [
pkg-config
meson
ninja
wrapGAppsHook
python3
];
buildInputs = [
gtk4
libadwaita
gjs
gobject-introspection
libgweather
gnome.adwaita-icon-theme
geoclue2
gsettings-desktop-schemas
];
postPatch = ''
# The .service file is not wrapped with the correct environment
# so misses GIR files when started. By re-pointing from the gjs
# entry point to the wrapped binary we get back to a wrapped
# binary.
substituteInPlace "data/org.gnome.Weather.service.in" \
--replace "Exec=@DATA_DIR@/@APP_ID@" \
"Exec=$out/bin/gnome-weather"
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
'';
passthru = {
updateScript = gnome.updateScript {
packageName = "gnome-weather";
attrPath = "gnome.gnome-weather";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Weather";
description = "Access current weather conditions and forecasts";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,99 @@
{ stdenv
, lib
, itstool
, fetchurl
, gdk-pixbuf
, telepathy-glib
, gjs
, meson
, ninja
, gettext
, telepathy-idle
, libxml2
, desktop-file-utils
, pkg-config
, gtk4
, libadwaita
, gtk3
, glib
, libsecret
, libsoup
, webkitgtk
, gobject-introspection
, appstream-glib
, gnome
, wrapGAppsHook4
, telepathy-logger
, gspell
, gsettings-desktop-schemas
}:
stdenv.mkDerivation rec {
pname = "polari";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "WPFbv1tCwLASPv3td1cR07DyRJl1cwlAOMpVZGHgSTw=";
};
patches = [
# Upstream runs the thumbnailer by passing it to gjs.
# If we wrap it in a shell script, gjs can no longer run it.
# Lets change the code to run the script directly by making it executable and having gjs in shebang.
./make-thumbnailer-wrappable.patch
];
propagatedUserEnvPkgs = [
telepathy-idle
telepathy-logger
];
nativeBuildInputs = [
meson
ninja
pkg-config
itstool
gettext
wrapGAppsHook4
libxml2
desktop-file-utils
gobject-introspection
appstream-glib
];
buildInputs = [
gtk4
libadwaita
gtk3 # for thumbnailer
glib
gsettings-desktop-schemas
telepathy-glib
telepathy-logger
gjs
gspell
gdk-pixbuf
libsecret
libsoup
webkitgtk # for thumbnailer
];
postFixup = ''
wrapGApp "$out/share/polari/thumbnailer.js"
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Polari";
description = "IRC chat client designed to integrate with the GNOME desktop";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,24 @@
diff --git a/src/thumbnailer.js b/src/thumbnailer.js
old mode 100644
new mode 100755
index ed6350ea..83d832cb
--- a/src/thumbnailer.js
+++ b/src/thumbnailer.js
@@ -1,3 +1,4 @@
+#!/usr/bin/env gjs --module
import Cairo from 'cairo';
import Gdk from 'gi://Gdk?version=3.0';
import Gio from 'gi://Gio';
diff --git a/src/urlPreview.js b/src/urlPreview.js
index 5f7931e4..d2282900 100644
--- a/src/urlPreview.js
+++ b/src/urlPreview.js
@@ -69,7 +69,7 @@ class Thumbnailer {
async _generateThumbnail(data) {
let { filename, uri } = data;
this._subProc = Gio.Subprocess.new(
- ['gjs', '--module', `${pkg.pkgdatadir}/thumbnailer.js`, uri, filename],
+ [`${pkg.pkgdatadir}/thumbnailer.js`, uri, filename],
Gio.SubprocessFlags.NONE);
try {
await this._subProc.wait_async(null);

View file

@ -0,0 +1,101 @@
{ lib, stdenv
, fetchurl
, vala
, meson
, ninja
, libpwquality
, pkg-config
, gtk3
, glib
, glib-networking
, wrapGAppsHook
, itstool
, gnupg
, libsoup
, gnome
, gpgme
, python3
, openldap
, gcr
, libsecret
, avahi
, p11-kit
, openssh
, gsettings-desktop-schemas
, libhandy
}:
stdenv.mkDerivation rec {
pname = "seahorse";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
hash = "sha256-xQys6/jeen4uXx2uC5gjIRR0Epar6NVD45I9YqFT1jA=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
vala
itstool
wrapGAppsHook
python3
];
buildInputs = [
gtk3
glib
glib-networking
gcr
gsettings-desktop-schemas
gnupg
gpgme
libsecret
avahi
libsoup
p11-kit
openssh
openldap
libpwquality
libhandy
];
doCheck = true;
postPatch = ''
patchShebangs build-aux/
'';
preCheck = ''
# Add “org.gnome.crypto.pgp” GSettings schema to path
# to make it available for “gpgme-backend” test.
# It is used by Seahorses internal “common” library.
addToSearchPath XDG_DATA_DIRS "${glib.getSchemaDataDirPath gcr}"
# The same test also requires home directory so that it can store settings.
export HOME=$TMPDIR
'';
preFixup = ''
gappsWrapperArgs+=(
# Pick up icons from Gcr
--prefix XDG_DATA_DIRS : "${gcr}/share"
)
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Seahorse";
description = "Application for managing encryption keys and passwords in the GnomeKeyring";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,34 @@
{ lib, stdenv, fetchurl, pkg-config, gtk3, gnome, vte, libxml2, gtk-vnc, intltool
, libsecret, itstool, wrapGAppsHook, librsvg }:
stdenv.mkDerivation rec {
pname = "vinagre";
version = "3.22.0";
src = fetchurl {
url = "mirror://gnome/sources/vinagre/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "cd1cdbacca25c8d1debf847455155ee798c3e67a20903df8b228d4ece5505e82";
};
nativeBuildInputs = [ pkg-config intltool itstool wrapGAppsHook ];
buildInputs = [
gtk3 vte libxml2 gtk-vnc libsecret gnome.adwaita-icon-theme librsvg
];
NIX_CFLAGS_COMPILE = "-Wno-format-nonliteral";
passthru = {
updateScript = gnome.updateScript {
packageName = "vinagre";
attrPath = "gnome.vinagre";
};
};
meta = with lib; {
description = "Remote desktop viewer for GNOME";
homepage = "https://wiki.gnome.org/Apps/Vinagre";
license = licenses.gpl2Plus;
maintainers = teams.gnome.members;
platforms = platforms.linux;
};
}