diff options
author | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
---|---|---|
committer | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
commit | c4625b175f8200f643fd6e11010932ea44c78433 (patch) | |
tree | bce3f89888c8ac3991fa5569a878a9eab6801ccc /infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps | |
parent | 49f735974dd103039ddc4cb576bb76555164a9e7 (diff) | |
parent | d661aa56a8843e991261510c1bb28fdc2f6975ae (diff) |
Add 'infra/libkookie/' from commit 'd661aa56a8843e991261510c1bb28fdc2f6975ae'
git-subtree-dir: infra/libkookie
git-subtree-mainline: 49f735974dd103039ddc4cb576bb76555164a9e7
git-subtree-split: d661aa56a8843e991261510c1bb28fdc2f6975ae
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps')
26 files changed, 1797 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/accerciser/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/accerciser/default.nix new file mode 100644 index 000000000000..c0ca54d6fec8 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/accerciser/default.nix @@ -0,0 +1,73 @@ +{ stdenv +, fetchurl +, pkgconfig +, gnome3 +, gtk3 +, wrapGAppsHook +, gobject-introspection +, itstool +, libxml2 +, python3 +, at-spi2-core +, dbus +, gettext +, libwnck3 +, adwaita-icon-theme +}: + + python3.pkgs.buildPythonApplication rec { + pname = "accerciser"; + version = "3.36.3"; + + format = "other"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "0zfhmpaqqwm89k8p4apq4la191icjvqh0097p5aig3yhy87fahp9"; + }; + + nativeBuildInputs = [ + gettext + gobject-introspection # For setup hook + itstool + libxml2 + pkgconfig + dbus + wrapGAppsHook + ]; + + buildInputs = [ + adwaita-icon-theme + at-spi2-core + gtk3 + libwnck3 + ]; + + 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 = gnome3.updateScript { + packageName = "accerciser"; + attrPath = "gnome3.accerciser"; + }; + }; + + meta = with stdenv.lib; { + homepage = "https://wiki.gnome.org/Apps/Accerciser"; + description = "Interactive Python accessibility explorer"; + maintainers = teams.gnome.members; + license = licenses.bsd3; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/cheese/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/cheese/default.nix new file mode 100644 index 000000000000..05a1cdbc088e --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/cheese/default.nix @@ -0,0 +1,60 @@ +{ stdenv, gettext, fetchurl, wrapGAppsHook, gnome-video-effects, libcanberra-gtk3 +, pkgconfig, gtk3, glib, clutter-gtk, clutter-gst, udev, gst_all_1, itstool +, libgudev, vala, docbook_xml_dtd_43, docbook_xsl, appstream-glib +, libxslt, yelp-tools, gnome-common, gtk-doc +, adwaita-icon-theme, librsvg, totem, gdk-pixbuf, gnome3, gnome-desktop, libxml2 +, meson, ninja, dbus, python3 }: + +stdenv.mkDerivation rec { + pname = "cheese"; + version = "3.34.0"; + + src = fetchurl { + url = "mirror://gnome/sources/cheese/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "0wvyc9wb0avrprvm529m42y5fkv3lirdphqydc9jw0c8mh05d1ni"; + }; + + postPatch = '' + chmod +x meson_post_install.py + patchShebangs meson_post_install.py + ''; + + passthru = { + updateScript = gnome3.updateScript { packageName = "cheese"; attrPath = "gnome3.cheese"; }; + }; + + nativeBuildInputs = [ + meson ninja pkgconfig gettext itstool vala wrapGAppsHook libxml2 appstream-glib + libxslt docbook_xml_dtd_43 docbook_xsl + gtk-doc yelp-tools gnome-common python3 + ]; + buildInputs = [ gtk3 glib gnome-video-effects + gdk-pixbuf adwaita-icon-theme librsvg udev gst_all_1.gstreamer + gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good gnome-desktop + gst_all_1.gst-plugins-bad clutter-gtk clutter-gst + libcanberra-gtk3 libgudev dbus ]; + + outputs = [ "out" "man" "devdoc" ]; + + 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" + ) + ''; + + enableParallelBuilding = true; + + meta = with stdenv.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.gpl3; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/evolution/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/evolution/default.nix new file mode 100644 index 000000000000..f27050cd68f7 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/evolution/default.nix @@ -0,0 +1,134 @@ +{ stdenv +, cmake +, ninja +, intltool +, fetchurl +, libxml2 +, webkitgtk +, highlight +, pkgconfig +, gtk3 +, glib +, libnotify +, gspell +, evolution-data-server +, adwaita-icon-theme +, gnome-desktop +, libgdata +, libgweather +, glib-networking +, gsettings-desktop-schemas +, wrapGAppsHook +, itstool +, shared-mime-info +, libical +, db +, gcr +, sqlite +, gnome3 +, librsvg +, gdk-pixbuf +, libsecret +, nss +, nspr +, icu +, libcanberra-gtk3 +, bogofilter +, gst_all_1 +, procps +, p11-kit +, openldap +, spamassassin +}: + +stdenv.mkDerivation rec { + pname = "evolution"; + version = "3.36.5"; + + src = fetchurl { + url = "mirror://gnome/sources/evolution/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1hpjd5d3z52xcjcc1hg5z8ypnx2y6ml9snyrlpflg9bx16yhxm1x"; + }; + + nativeBuildInputs = [ + cmake + intltool + itstool + libxml2 + ninja + pkgconfig + wrapGAppsHook + ]; + + buildInputs = [ + adwaita-icon-theme + bogofilter + db + evolution-data-server + gcr + gdk-pixbuf + glib + glib-networking + gnome-desktop + gsettings-desktop-schemas + gst_all_1.gst-plugins-base + gst_all_1.gstreamer + gtk3 + gspell + highlight + icu + libcanberra-gtk3 + libgdata + libgweather + libical + libnotify + librsvg + libsecret + nspr + nss + openldap + p11-kit + procps + shared-mime-info + sqlite + webkitgtk + ]; + + propagatedUserEnvPkgs = [ + evolution-data-server + ]; + + cmakeFlags = [ + "-DENABLE_AUTOAR=OFF" + "-DENABLE_LIBCRYPTUI=OFF" + "-DENABLE_PST_IMPORT=OFF" + "-DENABLE_YTNEF=OFF" + "-DWITH_SPAMASSASSIN=${spamassassin}/bin/spamassassin" + "-DWITH_SA_LEARN=${spamassassin}/bin/sa-learn" + "-DWITH_BOGOFILTER=${bogofilter}/bin/bogofilter" + "-DWITH_OPENLDAP=${openldap}" + ]; + + requiredSystemFeatures = [ + "big-parallel" + ]; + + doCheck = true; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "evolution"; + attrPath = "gnome3.evolution"; + }; + }; + + PKG_CONFIG_LIBEDATASERVERUI_1_2_UIMODULEDIR = "${placeholder "out"}/lib/evolution-data-server/ui-modules"; + + meta = with stdenv.lib; { + homepage = "https://wiki.gnome.org/Apps/Evolution"; + description = "Personal information management application that provides integrated mail, calendaring and address book functionality"; + maintainers = teams.gnome.members; + license = licenses.lgpl2Plus; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/file-roller/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/file-roller/default.nix new file mode 100644 index 000000000000..7c518c4acd9f --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/file-roller/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchurl, glib, gtk3, meson, ninja, pkgconfig, gnome3, gettext, itstool, libxml2, libarchive +, file, json-glib, python3, wrapGAppsHook, desktop-file-utils, libnotify, nautilus, glibcLocales }: + +stdenv.mkDerivation rec { + pname = "file-roller"; + version = "3.36.3"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1dw1vfnfc44k57b6mip8fv565d2xv5wrigi4js044x3sbl5f2n89"; + }; + + LANG = "en_US.UTF-8"; # postinstall.py + + nativeBuildInputs = [ meson ninja gettext itstool pkgconfig libxml2 python3 wrapGAppsHook glibcLocales desktop-file-utils ]; + + buildInputs = [ glib gtk3 json-glib libarchive file gnome3.adwaita-icon-theme 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 + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "file-roller"; + attrPath = "gnome3.file-roller"; + }; + }; + + meta = with stdenv.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; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gedit/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gedit/default.nix new file mode 100644 index 000000000000..ea33bc29324f --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gedit/default.nix @@ -0,0 +1,54 @@ +{ stdenv, meson, fetchurl, python3 +, pkgconfig, gtk3, glib, adwaita-icon-theme +, libpeas, gtksourceview4, gsettings-desktop-schemas +, wrapGAppsHook, ninja, libsoup, tepl +, gnome3, gspell, perl, itstool, desktop-file-utils +}: + +stdenv.mkDerivation rec { + pname = "gedit"; + version = "3.36.2"; + + src = fetchurl { + url = "mirror://gnome/sources/gedit/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "15s1almlhjlgl3m8lxg6jpzln8jhgdxxjr635a3b7cf58d35b1v8"; + }; + + nativeBuildInputs = [ + pkgconfig wrapGAppsHook meson ninja + python3 perl itstool desktop-file-utils + ]; + + buildInputs = [ + gtk3 glib + adwaita-icon-theme libsoup + libpeas gtksourceview4 + gsettings-desktop-schemas gspell + tepl + ]; + + 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 = gnome3.updateScript { + packageName = "gedit"; + attrPath = "gnome3.gedit"; + }; + }; + + meta = with stdenv.lib; { + homepage = "https://wiki.gnome.org/Apps/Gedit"; + description = "Official text editor of the GNOME desktop environment"; + maintainers = teams.gnome.members; + license = licenses.gpl2; + platforms = platforms.unix; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/ghex/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/ghex/default.nix new file mode 100644 index 000000000000..7de5ffc1add0 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/ghex/default.nix @@ -0,0 +1,84 @@ +{ stdenv +, fetchurl +, fetchpatch +, pkgconfig +, meson +, ninja +, python3 +, gnome3 +, desktop-file-utils +, appstream-glib +, gettext +, itstool +, libxml2 +, gtk3 +, glib +, atk +, wrapGAppsHook +}: + +stdenv.mkDerivation rec { + pname = "ghex"; + version = "3.18.4"; + + outputs = [ "out" "dev" ]; + + src = fetchurl { + url = "mirror://gnome/sources/ghex/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1h1pjrr9wynclfykizqd78dbi785wjz6b63p31k87kjvzy8w3nf2"; + }; + + nativeBuildInputs = [ + desktop-file-utils + gettext + itstool + meson + ninja + pkgconfig + python3 + wrapGAppsHook + ]; + + buildInputs = [ + gtk3 + atk + glib + ]; + + checkInputs = [ + appstream-glib + desktop-file-utils + ]; + + patches = [ + # Fixes for darwin. Drop in next release. + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/ghex/commit/b0af26666cd990d99076c242b2abb3efc6e98671.patch"; + sha256 = "1zwdkgr2nqrn9q3ydyvrrpn5x55cdi747fhbq6mh6blp9cbrk9b5"; + }) + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/ghex/commit/cc8ef9e67b23604c402460010dc0b5dccb85391b.patch"; + sha256 = "0j2165rfhlbrlzhmcnirqd5m89ljpz0n3nz20sxbwlc8h42zv36s"; + }) + ]; + + postPatch = '' + chmod +x meson_post_install.py + patchShebangs meson_post_install.py + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "ghex"; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.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; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-books/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-books/default.nix new file mode 100644 index 000000000000..7432e8e96ed2 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-books/default.nix @@ -0,0 +1,48 @@ +{ stdenv, meson, ninja, gettext, fetchurl, evince, gjs +, pkgconfig, gtk3, glib, tracker, tracker-miners, libxslt +, webkitgtk, gnome-desktop, libgepub, gnome3, gdk-pixbuf +, gsettings-desktop-schemas, adwaita-icon-theme, docbook_xsl +, docbook_xml_dtd_42, desktop-file-utils, python3 +, gobject-introspection, wrapGAppsHook }: + +stdenv.mkDerivation rec { + pname = "gnome-books"; + version = "3.34.0"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "153vknqisjn5f105avzm933fsc3v0pjzzbwxlqxf8vjjksh1cmya"; + }; + + nativeBuildInputs = [ + meson ninja pkgconfig gettext libxslt desktop-file-utils + docbook_xsl 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 = gnome3.updateScript { + packageName = "gnome-books"; + attrPath = "gnome3.gnome-books"; + }; + }; + + meta = with stdenv.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; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix new file mode 100644 index 000000000000..4acc687da8ba --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix @@ -0,0 +1,141 @@ +{ stdenv +, fetchurl +, meson +, ninja +, wrapGAppsHook +, pkgconfig +, gettext +, itstool +, libvirt-glib +, glib +, gobject-introspection +, libxml2 +, gtk3 +, gtk-vnc +, freerdp +, libvirt +, spice-gtk +, python3 +, spice-protocol +, libsoup +, libosinfo +, systemd +, tracker +, tracker-miners +, vala +, libcap +, yajl +, gmp +, gdbm +, cyrus_sasl +, gnome3 +, librsvg +, desktop-file-utils +, mtools +, cdrkit +, libcdio +, libusb1 +, libarchive +, acl +, libgudev +, libsecret +, libcap_ng +, numactl +, xen +, libapparmor +, json-glib +, webkitgtk +, vte +, glib-networking +}: + +stdenv.mkDerivation rec { + pname = "gnome-boxes"; + version = "3.36.6"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "0c3cw90xqqcpacc2z06ljs0gg8saxizfgjzg9alhpwgz3gl4c5pg"; + }; + + doCheck = true; + + nativeBuildInputs = [ + desktop-file-utils + gettext + gobject-introspection + itstool + meson + ninja + pkgconfig + python3 + vala + wrapGAppsHook + ]; + + # Required for USB redirection PolicyKit rules file + propagatedUserEnvPkgs = [ + spice-gtk + ]; + + buildInputs = [ + acl + cyrus_sasl + freerdp + gdbm + glib + glib-networking + gmp + gnome3.adwaita-icon-theme + gtk-vnc + gtk3 + json-glib + libapparmor + libarchive + libcap + libcap_ng + libgudev + libosinfo + librsvg + libsecret + libsoup + libusb1 + libvirt + libvirt-glib + libxml2 + numactl + spice-gtk + spice-protocol + systemd + tracker + tracker-miners + vte + webkitgtk + xen + yajl + ]; + + preFixup = '' + gappsWrapperArgs+=(--prefix PATH : "${stdenv.lib.makeBinPath [ mtools cdrkit libcdio ]}") + ''; + + postPatch = '' + chmod +x build-aux/post_install.py # patchShebangs requires executable file + patchShebangs build-aux/post_install.py + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.lib; { + description = "Simple GNOME 3 application to access remote or virtual systems"; + homepage = "https://wiki.gnome.org/Apps/Boxes"; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = teams.gnome.members; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix new file mode 100644 index 000000000000..988cb1ed2a33 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook, libdazzle, libgweather, geoclue2, geocode-glib, python3 +, gettext, libxml2, gnome3, gtk3, evolution-data-server, libsoup +, glib, gnome-online-accounts, gsettings-desktop-schemas, libhandy }: + +let + pname = "gnome-calendar"; + version = "3.36.2"; +in stdenv.mkDerivation rec { + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; + sha256 = "07sc1kn65dzxsxpv0vl5dj1a5awljjsfl9jldrg0hnjmq12m7c6h"; + }; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + nativeBuildInputs = [ meson ninja pkgconfig gettext libxml2 wrapGAppsHook python3 ]; + buildInputs = [ + gtk3 evolution-data-server libsoup glib gnome-online-accounts libdazzle libgweather geoclue2 geocode-glib + gsettings-desktop-schemas gnome3.adwaita-icon-theme libhandy + ]; + + postPatch = '' + chmod +x build-aux/meson/meson_post_install.py # patchShebangs requires executable file + patchShebangs build-aux/meson/meson_post_install.py + ''; + + meta = with stdenv.lib; { + homepage = "https://wiki.gnome.org/Apps/Calendar"; + description = "Simple and beautiful calendar application for GNOME"; + maintainers = teams.gnome.members; + license = licenses.gpl3; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-characters/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-characters/default.nix new file mode 100644 index 000000000000..987fa594ae52 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-characters/default.nix @@ -0,0 +1,85 @@ +{ stdenv +, fetchurl +, meson +, ninja +, pkgconfig +, gettext +, gnome3 +, glib +, gtk3 +, pango +, wrapGAppsHook +, python3 +, gobject-introspection +, gjs +, libunistring +, gsettings-desktop-schemas +, adwaita-icon-theme +, gnome-desktop +}: + +stdenv.mkDerivation rec { + pname = "gnome-characters"; + version = "3.34.0"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-characters/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "0mqaxsa7hcmvid3zbzvxpfkp7s01ghiq6kaibmd3169axrr8ahql"; + }; + + nativeBuildInputs = [ + gettext + gobject-introspection + meson + ninja + pkgconfig + python3 + wrapGAppsHook + ]; + + + buildInputs = [ + adwaita-icon-theme + gjs + glib + gnome-desktop # for typelib + gsettings-desktop-schemas + gtk3 + libunistring + pango + ]; + + postPatch = '' + chmod +x meson_post_install.py # patchShebangs requires executable file + patchShebangs meson_post_install.py + ''; + + dontWrapGApps = true; + + # Fixes https://github.com/NixOS/nixpkgs/issues/31168 + postFixup = '' + for file in $out/share/org.gnome.Characters/org.gnome.Characters \ + $out/share/org.gnome.Characters/org.gnome.Characters.BackgroundService + do + sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \ + -i $file + + wrapGApp "$file" + done + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.lib; { + homepage = "https://wiki.gnome.org/Design/Apps/CharacterMap"; + description = "Simple utility application to find and insert unusual characters"; + maintainers = teams.gnome.members; + license = licenses.gpl2; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix new file mode 100644 index 000000000000..5e3ff58b2901 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix @@ -0,0 +1,87 @@ +{ stdenv +, fetchurl +, meson +, ninja +, gettext +, pkgconfig +, wrapGAppsHook +, itstool +, desktop-file-utils +, vala +, gobject-introspection +, libxml2 +, gtk3 +, glib +, gsound +, sound-theme-freedesktop +, gsettings-desktop-schemas +, adwaita-icon-theme +, gnome-desktop +, geocode-glib +, gnome3 +, gdk-pixbuf +, geoclue2 +, libgweather +, libhandy +}: + +stdenv.mkDerivation rec { + pname = "gnome-clocks"; + version = "3.36.2"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-clocks/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1rjicycgh9jvkqir2m8hx9m4jlaa3w5lqs43k185wa0zxhi1n6zi"; + }; + + nativeBuildInputs = [ + vala + meson + ninja + pkgconfig + gettext + itstool + wrapGAppsHook + desktop-file-utils + libxml2 + gobject-introspection # for finding vapi files + ]; + + buildInputs = [ + gtk3 + glib + gsettings-desktop-schemas + gdk-pixbuf + adwaita-icon-theme + gnome-desktop + geocode-glib + geoclue2 + libgweather + gsound + libhandy + ]; + + preFixup = '' + gappsWrapperArgs+=( + # Fallback sound theme + --prefix XDG_DATA_DIRS : "${sound-theme-freedesktop}/share" + ) + ''; + + doCheck = true; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "gnome-clocks"; + attrPath = "gnome3.gnome-clocks"; + }; + }; + + meta = with stdenv.lib; { + homepage = "https://wiki.gnome.org/Apps/Clocks"; + description = "Clock application designed for GNOME 3"; + maintainers = teams.gnome.members; + license = licenses.gpl2; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix new file mode 100644 index 000000000000..8d5501537a0f --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-documents/default.nix @@ -0,0 +1,109 @@ +{ stdenv +, meson +, ninja +, gettext +, fetchurl +, evince +, gjs +, pkgconfig +, gtk3 +, glib +, tracker +, tracker-miners +, itstool +, libxslt +, webkitgtk +, libgdata +, gnome-desktop +, libzapojit +, libgepub +, gnome3 +, gdk-pixbuf +, libsoup +, docbook_xsl +, docbook_xml_dtd_42 +, gobject-introspection +, inkscape +, poppler_utils +, desktop-file-utils +, wrapGAppsHook +, python3 +, gsettings-desktop-schemas +}: + +stdenv.mkDerivation rec { + pname = "gnome-documents"; + version = "3.34.0"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-documents/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1qph567mapg3s1a26k7b8y57g9bklhj2mh8xm758z9zkms20xafq"; + }; + + nativeBuildInputs = [ + meson + ninja + pkgconfig + gettext + itstool + libxslt + desktop-file-utils + docbook_xsl + docbook_xml_dtd_42 + wrapGAppsHook + python3 + + # building getting started + inkscape + poppler_utils + ]; + + buildInputs = [ + gtk3 + glib + gsettings-desktop-schemas + gdk-pixbuf + gnome3.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" + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.lib; { + 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; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-getting-started-docs/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-getting-started-docs/default.nix new file mode 100644 index 000000000000..bd02a5f0cc60 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-getting-started-docs/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl, gnome3, intltool, itstool, libxml2 }: + +stdenv.mkDerivation rec { + pname = "gnome-getting-started-docs"; + version = "3.36.2"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-getting-started-docs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1ihxa9g687rbb4s2gxd2pf726adx98ahq4kfad868swl7a8vi504"; + }; + + passthru = { + updateScript = gnome3.updateScript { packageName = "gnome-getting-started-docs"; attrPath = "gnome3.gnome-getting-started-docs"; }; + }; + + buildInputs = [ intltool itstool libxml2 ]; + + meta = with stdenv.lib; { + homepage = "https://live.gnome.org/DocumentationProject"; + description = "Help a new user get started in GNOME"; + maintainers = teams.gnome.members; + license = licenses.cc-by-sa-30; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-logs/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-logs/default.nix new file mode 100644 index 000000000000..45675b791cd8 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-logs/default.nix @@ -0,0 +1,86 @@ +{ stdenv +, fetchurl +, fetchpatch +, meson +, ninja +, pkgconfig +, gnome3 +, glib +, gtk3 +, wrapGAppsHook +, gettext +, itstool +, libxml2 +, libxslt +, docbook_xsl +, docbook_xml_dtd_43 +, systemd +, python3 +, gsettings-desktop-schemas +}: + +stdenv.mkDerivation rec { + pname = "gnome-logs"; + version = "3.36.0"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-logs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "0w1nfdxbv3f0wnhmdy21ydvr4swfc108hypda561p7l9lrhnnxj4"; + }; + + patches = [ + # https://gitlab.gnome.org/GNOME/gnome-logs/-/issues/52 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-logs/-/commit/b42defceefc775220b525f665a3b662ab9593b81.patch"; + sha256 = "1s0zscmhwy7r0xff17wh8ik8x9xw1vrkipw5vl5i770bxnljps8n"; + }) + ]; + + nativeBuildInputs = [ + python3 + meson + ninja + pkgconfig + wrapGAppsHook + gettext + itstool + libxml2 + libxslt + docbook_xsl + docbook_xml_dtd_43 + ]; + + buildInputs = [ + glib + gtk3 + systemd + gsettings-desktop-schemas + gnome3.adwaita-icon-theme + ]; + + mesonFlags = [ + "-Dman=true" + ]; + + postPatch = '' + chmod +x meson_post_install.py + patchShebangs meson_post_install.py + ''; + + doCheck = true; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "gnome-logs"; + attrPath = "gnome3.gnome-logs"; + }; + }; + + meta = with stdenv.lib; { + homepage = "https://wiki.gnome.org/Apps/Logs"; + description = "A log viewer for the systemd journal"; + maintainers = teams.gnome.members; + license = licenses.gpl3; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-maps/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-maps/default.nix new file mode 100644 index 000000000000..57ba6fd0766f --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-maps/default.nix @@ -0,0 +1,57 @@ +{ stdenv, fetchurl, meson, ninja, gettext, python3, pkgconfig, gnome3, gtk3 +, gobject-introspection, gdk-pixbuf, librsvg, libgweather +, geoclue2, wrapGAppsHook, folks, libchamplain, gfbgraph, libsoup, gsettings-desktop-schemas +, webkitgtk, gjs, libgee, geocode-glib, evolution-data-server, gnome-online-accounts }: + +let + pname = "gnome-maps"; + version = "3.36.4"; +in stdenv.mkDerivation rec { + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; + sha256 = "1ila7li9yi4lyjc84a787qr33wr7ayppphxn451jzg410pfcamhz"; + }; + + doCheck = true; + + nativeBuildInputs = [ meson ninja pkgconfig gettext python3 wrapGAppsHook ]; + buildInputs = [ + gobject-introspection + gtk3 geoclue2 gjs libgee folks gfbgraph + geocode-glib libchamplain libsoup + gdk-pixbuf librsvg libgweather + gsettings-desktop-schemas evolution-data-server + gnome-online-accounts gnome3.adwaita-icon-theme + 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@/org.gnome.Maps" \ + "Exec=$out/bin/gnome-maps" + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.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; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-music/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-music/default.nix new file mode 100644 index 000000000000..92c40f4a0086 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-music/default.nix @@ -0,0 +1,113 @@ +{ stdenv +, meson +, ninja +, gettext +, fetchurl +, gdk-pixbuf +, tracker +, libxml2 +, python3 +, libnotify +, wrapGAppsHook +, libmediaart +, gobject-introspection +, gnome-online-accounts +, grilo +, grilo-plugins +, pkgconfig +, gtk3 +, pango +, glib +, desktop-file-utils +, appstream-glib +, itstool +, gnome3 +, gst_all_1 +, libdazzle +, libsoup +, gsettings-desktop-schemas +}: + +python3.pkgs.buildPythonApplication rec { + pname = "gnome-music"; + version = "3.36.4.1"; + + format = "other"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "0zdpjgwf48bqb66wrl6k33pzcmc2g3m1046ma7z8xaj9idpi37jh"; + }; + + nativeBuildInputs = [ + meson + ninja + gettext + itstool + pkgconfig + libxml2 + wrapGAppsHook + desktop-file-utils + appstream-glib + gobject-introspection + ]; + + buildInputs = [ + gtk3 + pango + glib + libmediaart + gnome-online-accounts + gobject-introspection + gdk-pixbuf + gnome3.adwaita-icon-theme + python3 + grilo + grilo-plugins + libnotify + libdazzle + libsoup + gsettings-desktop-schemas + tracker + ] ++ (with gst_all_1; [ + gstreamer + gst-plugins-base + gst-plugins-good + gst-plugins-bad + gst-plugins-ugly + ]); + + propagatedBuildInputs = with python3.pkgs; [ + pycairo + dbus-python + pygobject3 + ]; + + + postPatch = '' + for f in meson_post_conf.py meson_post_install.py; do + chmod +x $f + patchShebangs $f + done + ''; + + doCheck = false; + + # handle setup hooks better + strictDeps = false; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.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; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-nettool/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-nettool/default.nix new file mode 100644 index 000000000000..88072912b663 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-nettool/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook +, libgtop, intltool, itstool, libxml2, nmap, inetutils }: + +stdenv.mkDerivation rec { + pname = "gnome-nettool"; + version = "3.8.1"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1c9cvzvyqgfwa5zzyvp7118pkclji62fkbb33g4y9sp5kw6m397h"; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ + gtk3 wrapGAppsHook libgtop intltool itstool libxml2 + gnome3.adwaita-icon-theme + ]; + + propagatedUserEnvPkgs = [ nmap inetutils ]; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + versionPolicy = "none"; + }; + }; + + meta = with stdenv.lib; { + homepage = "https://gitlab.gnome.org/GNOME/gnome-nettool"; + description = "A collection of networking tools"; + maintainers = teams.gnome.members; + license = licenses.gpl2; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-notes/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-notes/default.nix new file mode 100644 index 000000000000..c32289d70d79 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-notes/default.nix @@ -0,0 +1,89 @@ +{ stdenv +, meson +, ninja +, gettext +, fetchurl +, pkgconfig +, wrapGAppsHook +, itstool +, desktop-file-utils +, python3 +, glib +, gtk3 +, evolution-data-server +, gnome-online-accounts +, libuuid +, libhandy +, webkitgtk +, zeitgeist +, gnome3 +, libxml2 +, gsettings-desktop-schemas +, tracker +}: + +let + version = "3.36.3"; +in +stdenv.mkDerivation { + pname = "gnome-notes"; + inherit version; + + src = fetchurl { + url = "mirror://gnome/sources/bijiben/${stdenv.lib.versions.majorMinor version}/bijiben-${version}.tar.xz"; + sha256 = "1midnphyg038s94ahhzv0pvbzzzn62ccky28c9nazxqvw4hvdsbh"; + }; + + doCheck = true; + + postPatch = '' + chmod +x build-aux/meson_post_install.py + patchShebangs build-aux/meson_post_install.py + ''; + + nativeBuildInputs = [ + meson + ninja + pkgconfig + gettext + itstool + libxml2 + desktop-file-utils + python3 + wrapGAppsHook + ]; + + buildInputs = [ + glib + gtk3 + libuuid + libhandy + webkitgtk + tracker + gnome-online-accounts + zeitgeist + gsettings-desktop-schemas + evolution-data-server + gnome3.adwaita-icon-theme + ]; + + mesonFlags = [ + "-Dzeitgeist=true" + "-Dupdate_mimedb=false" + ]; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "bijiben"; + attrPath = "gnome3.gnome-notes"; + }; + }; + + meta = with stdenv.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; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-power-manager/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-power-manager/default.nix new file mode 100644 index 000000000000..4a92052763ef --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-power-manager/default.nix @@ -0,0 +1,60 @@ +{ stdenv +, gettext +, fetchurl +, pkgconfig +, gtk3 +, glib +, meson +, ninja +, upower +, python3 +, desktop-file-utils +, wrapGAppsHook +, gnome3 }: + +let + pname = "gnome-power-manager"; + version = "3.32.0"; +in stdenv.mkDerivation rec { + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; + sha256 = "0drfn3wcc8l4n07qwv6p0rw2dwcd00hwzda282q62l6sasks2b2g"; + }; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + nativeBuildInputs = [ + meson + ninja + pkgconfig + wrapGAppsHook + gettext + + # needed by meson_post_install.sh + python3 + glib.dev + desktop-file-utils + ]; + + buildInputs = [ + gtk3 + glib + upower + gnome3.adwaita-icon-theme + ]; + + meta = with stdenv.lib; { + homepage = "https://projects-old.gnome.org/gnome-power-manager/"; + description = "View battery and power statistics provided by UPower"; + maintainers = teams.gnome.members; + license = licenses.gpl2Plus; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix new file mode 100644 index 000000000000..f4a72fdfb482 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix @@ -0,0 +1,42 @@ +{ stdenv, fetchurl, pkgconfig, gettext, gobject-introspection, wrapGAppsHook, gjs, glib, gtk3, gdk-pixbuf, gst_all_1, gnome3 +, meson, ninja, python3, desktop-file-utils }: + +stdenv.mkDerivation rec { + pname = "gnome-sound-recorder"; + version = "3.34.0"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1i442qas2dkp5d9j9j1z1jicb4cb7jkgbcl4c36bmhvaq3hddwa9"; + }; + + nativeBuildInputs = [ + pkgconfig gettext meson ninja gobject-introspection + wrapGAppsHook python3 desktop-file-utils + ]; + buildInputs = [ gjs glib gtk3 gdk-pixbuf ] ++ (with gst_all_1; [ gstreamer.dev gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ]); + + postPatch = '' + chmod +x build-aux/meson_post_install.py + patchShebangs build-aux/meson_post_install.py + ''; + + # TODO: fix this in gstreamer + # TODO: make stdenv.lib.getBin respect outputBin + PKG_CONFIG_GSTREAMER_1_0_TOOLSDIR = "${gst_all_1.gstreamer.dev}/bin"; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.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; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-todo/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-todo/default.nix new file mode 100644 index 000000000000..d837ce3968e4 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-todo/default.nix @@ -0,0 +1,89 @@ +{ stdenv +, fetchurl +, fetchpatch +, meson +, ninja +, pkgconfig +, python3 +, wrapGAppsHook +, gettext +, gnome3 +, glib +, gtk3 +, libpeas +, gnome-online-accounts +, gsettings-desktop-schemas +, evolution-data-server +, libxml2 +, libsoup +, libical +, librest +, json-glib +}: + +stdenv.mkDerivation rec { + pname = "gnome-todo"; + version = "3.28.1"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "08ygqbib72jlf9y0a16k54zz51sncpq2wa18wp81v46q8301ymy7"; + }; + + patches = [ + # fix build with libecal 2.0 + (fetchpatch { + name = "gnome-todo-eds-libecal-2.0.patch"; + url = "https://src.fedoraproject.org/rpms/gnome-todo/raw/bed44b8530f3c79589982e03b430b3a125e9bceb/f/gnome-todo-eds-libecal-2.0.patch"; + sha256 = "1ghrz973skal36j90wm2z13m3panw983r6y0k7z9gpj5lxgz92mq"; + }) + ]; + postPatch = '' + chmod +x meson_post_install.py + patchShebangs meson_post_install.py + ''; + + nativeBuildInputs = [ + meson + ninja + pkgconfig + gettext + python3 + wrapGAppsHook + ]; + + buildInputs = [ + glib + gtk3 + libpeas + gnome-online-accounts + gsettings-desktop-schemas + gnome3.adwaita-icon-theme + # Plug-ins + evolution-data-server + libxml2 + libsoup + libical + librest + json-glib + ]; + + # Fix parallel building: missing dependency from src/gtd-application.c + # Probably remove for 3.30+ https://gitlab.gnome.org/GNOME/gnome-todo/issues/170 + preBuild = "ninja src/gtd-vcs-identifier.h"; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.lib; { + description = "Personal task manager for GNOME"; + homepage = "https://wiki.gnome.org/Apps/Todo"; + license = licenses.gpl3Plus; + maintainers = teams.gnome.members; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-weather/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-weather/default.nix new file mode 100644 index 000000000000..84be3f527434 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/gnome-weather/default.nix @@ -0,0 +1,46 @@ +{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook, gjs, gobject-introspection +, libgweather, meson, ninja, geoclue2, gnome-desktop, python3, gsettings-desktop-schemas }: + +stdenv.mkDerivation rec { + pname = "gnome-weather"; + version = "3.36.1"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-weather/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "11z75ky6xp9hx7lm24xng7ydr20bzh4d6p9sbi9c8ccz2m3fdrk8"; + }; + + nativeBuildInputs = [ pkgconfig meson ninja wrapGAppsHook python3 ]; + buildInputs = [ + gtk3 gjs gobject-introspection gnome-desktop + libgweather gnome3.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 = gnome3.updateScript { + packageName = "gnome-weather"; + attrPath = "gnome3.gnome-weather"; + }; + }; + + meta = with stdenv.lib; { + homepage = "https://wiki.gnome.org/Apps/Weather"; + description = "Access current weather conditions and forecasts"; + maintainers = teams.gnome.members; + license = licenses.gpl2; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/polari/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/polari/default.nix new file mode 100644 index 000000000000..514eecc17365 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/polari/default.nix @@ -0,0 +1,54 @@ +{ stdenv, itstool, fetchurl, gdk-pixbuf, adwaita-icon-theme +, telepathy-glib, gjs, meson, ninja, gettext, telepathy-idle, libxml2, desktop-file-utils +, pkgconfig, gtk3, glib, libsecret, libsoup, webkitgtk, gobject-introspection, appstream-glib +, gnome3, wrapGAppsHook, telepathy-logger, gspell, gsettings-desktop-schemas }: + +let + pname = "polari"; + version = "3.36.3"; +in stdenv.mkDerivation rec { + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; + sha256 = "0fpmrvhd40yay051bzn4x3gsrzdv42nav0pm5ps0np8wk1z689jg"; + }; + + patches = [ + # Upstream runs the thumbnailer by passing it to gjs. + # If we wrap it in a shell script, gjs can no longer run it. + # Let’s 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 pkgconfig itstool gettext wrapGAppsHook libxml2 + desktop-file-utils gobject-introspection appstream-glib + ]; + + buildInputs = [ + gtk3 glib adwaita-icon-theme gsettings-desktop-schemas + telepathy-glib telepathy-logger gjs gspell gdk-pixbuf libsecret libsoup webkitgtk + ]; + + postFixup = '' + wrapGApp "$out/share/polari/thumbnailer.js" + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.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.gpl2; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/polari/make-thumbnailer-wrappable.patch b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/polari/make-thumbnailer-wrappable.patch new file mode 100644 index 000000000000..0fb09eb154af --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/polari/make-thumbnailer-wrappable.patch @@ -0,0 +1,24 @@ +diff --git a/src/thumbnailer.js b/src/thumbnailer.js +old mode 100644 +new mode 100755 +index e2ad0a5..7ebf08a +--- a/src/thumbnailer.js ++++ b/src/thumbnailer.js +@@ -1,3 +1,4 @@ ++#!/usr/bin/env gjs + imports.gi.versions.Gdk = '3.0'; + imports.gi.versions.Gtk = '3.0'; + +diff --git a/src/urlPreview.js b/src/urlPreview.js +index f17e0be..ccffc32 100644 +--- a/src/urlPreview.js ++++ b/src/urlPreview.js +@@ -44,7 +44,7 @@ class Thumbnailer { + _generateThumbnail(data) { + let { filename, uri } = data; + this._subProc = Gio.Subprocess.new( +- ['gjs', `${pkg.pkgdatadir}/thumbnailer.js`, uri, filename], ++ [`${pkg.pkgdatadir}/thumbnailer.js`, uri, filename], + Gio.SubprocessFlags.NONE); + this._subProc.wait_async(null, (o, res) => { + try { diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/seahorse/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/seahorse/default.nix new file mode 100644 index 000000000000..3668fc171b36 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/seahorse/default.nix @@ -0,0 +1,85 @@ +{ stdenv +, fetchurl +, fetchpatch +, vala +, meson +, ninja +, libpwquality +, pkgconfig +, gtk3 +, glib +, wrapGAppsHook +, itstool +, gnupg +, libsoup +, gnome3 +, gpgme +, python3 +, openldap +, gcr +, libsecret +, avahi +, p11-kit +, openssh +, gsettings-desktop-schemas +, libhandy +}: + +stdenv.mkDerivation rec { + pname = "seahorse"; + version = "3.36.2"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "16wmxxppgcgfj8zkagcny5af1c81x32ysm9d6j9f2k7bmik21ss5"; + }; + + doCheck = true; + + nativeBuildInputs = [ + meson + ninja + pkgconfig + vala + itstool + wrapGAppsHook + python3 + ]; + + buildInputs = [ + gtk3 + glib + gcr + gsettings-desktop-schemas + gnupg + gnome3.adwaita-icon-theme + gpgme + libsecret + avahi + libsoup + p11-kit + openssh + openldap + libpwquality + libhandy + ]; + + postPatch = '' + patchShebangs build-aux/ + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.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.gpl2; + platforms = platforms.linux; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/vinagre/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/vinagre/default.nix new file mode 100644 index 000000000000..e04238b4b16f --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/apps/vinagre/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, pkgconfig, gtk3, gnome3, 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/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "cd1cdbacca25c8d1debf847455155ee798c3e67a20903df8b228d4ece5505e82"; + }; + + nativeBuildInputs = [ pkgconfig intltool itstool wrapGAppsHook ]; + buildInputs = [ + gtk3 vte libxml2 gtk-vnc libsecret gnome3.adwaita-icon-theme librsvg + ]; + + NIX_CFLAGS_COMPILE = "-Wno-format-nonliteral"; + + passthru = { + updateScript = gnome3.updateScript { + packageName = "vinagre"; + attrPath = "gnome3.vinagre"; + }; + }; + + meta = with stdenv.lib; { + description = "Remote desktop viewer for GNOME"; + homepage = "https://wiki.gnome.org/Apps/Vinagre"; + license = licenses.gpl2Plus; + maintainers = teams.gnome.members; + platforms = platforms.linux; + }; +} |