GNOME 3.16.1, closes #7357

This commit is contained in:
Luca Bruno 2015-04-10 17:02:57 +02:00
parent 38d6aec3f6
commit db3b86560f
146 changed files with 4428 additions and 68 deletions

View file

@ -34,6 +34,8 @@ with lib;
services.dbus.packages = [ pkgs.geoclue2 ];
systemd.packages = [ pkgs.geoclue2 ];
};
}

View file

@ -98,13 +98,23 @@ in {
'';
};
# Ugly hack for using the correct gnome3 packageSet
basePackages = mkOption {
type = types.attrsOf types.path;
default = { inherit networkmanager modemmanager wpa_supplicant
networkmanager_openvpn networkmanager_vpnc
networkmanager_openconnect
networkmanager_pptp networkmanager_l2tp; };
internal = true;
};
packages = mkOption {
type = types.listOf types.path;
default = [ ];
description = ''
Extra packages that provide NetworkManager plugins.
'';
apply = list: [ networkmanager modemmanager wpa_supplicant ] ++ list;
apply = list: (attrValues cfg.basePackages) ++ list;
};
appendNameservers = mkOption {
@ -164,7 +174,7 @@ in {
boot.kernelModules = [ "ppp_mppe" ]; # Needed for most (all?) PPTP VPN connections.
environment.etc = [
environment.etc = with cfg.basePackages; [
{ source = ipUpScript;
target = "NetworkManager/dispatcher.d/01nixos-ip-up";
}
@ -195,14 +205,7 @@ in {
target = "NetworkManager/dispatcher.d/${dispatcherTypesSubdirMap.${s.type}}03userscript${lib.fixedWidthNumber 4 i}";
}) cfg.dispatcherScripts;
environment.systemPackages = cfg.packages ++ [
networkmanager_openvpn
networkmanager_vpnc
networkmanager_openconnect
networkmanager_pptp
networkmanager_l2tp
modemmanager
];
environment.systemPackages = cfg.packages;
users.extraGroups = singleton {
name = "networkmanager";
@ -238,15 +241,7 @@ in {
security.polkit.extraConfig = polkitConf;
# openvpn plugin has only dbus interface
services.dbus.packages = cfg.packages ++ [
networkmanager_openvpn
networkmanager_vpnc
networkmanager_openconnect
networkmanager_pptp
networkmanager_l2tp
modemmanager
];
services.dbus.packages = cfg.packages;
services.udev.packages = cfg.packages;
};

View file

@ -21,7 +21,7 @@ let
destination = "/share/applications/mimeapps.list";
text = ''
[Default Applications]
inode/directory=nautilus.desktop
inode/directory=nautilus.desktop;org.gnome.Nautilus.desktop
'';
};
@ -80,6 +80,7 @@ in {
services.telepathy.enable = mkDefault true;
networking.networkmanager.enable = mkDefault true;
services.upower.enable = config.powerManagement.enable;
hardware.bluetooth.enable = mkDefault true;
fonts.fonts = [ pkgs.dejavu_fonts pkgs.cantarell_fonts ];
@ -108,7 +109,7 @@ in {
# Override default mimeapps
export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}${mimeAppsList}/share
# Let gnome-control-center find gnome-shell search providers
# Let gnome-control-center find gnome-shell search providers. GNOME 3.12 compatibility.
export GNOME_SEARCH_PROVIDERS_DIR=${config.system.path}/share/gnome-shell/search-providers/
# Let nautilus find extensions
@ -120,6 +121,9 @@ in {
# Update user dirs as described in http://freedesktop.org/wiki/Software/xdg-user-dirs/
${pkgs.xdg-user-dirs}/bin/xdg-user-dirs-update
# Find the mouse
export XCURSOR_PATH=~/.icons:${config.system.path}/share/icons
${gnome3.gnome_session}/bin/gnome-session&
waitPID=$!
'';
@ -138,11 +142,11 @@ in {
gnome3.dconf
gnome3.gnome-backgrounds
gnome3.gnome_control_center
gnome3.gnome_icon_theme
gnome3.gnome-menus
gnome3.gnome_settings_daemon
gnome3.gnome_shell
gnome3.gnome_themes_standard
gnome3.defaultIconTheme
] ++ cfg.sessionPath ++ (removePackagesByName [
gnome3.baobab
gnome3.empathy
@ -154,6 +158,7 @@ in {
gnome3.totem
gnome3.vino
gnome3.yelp
gnome3.gnome-bluetooth
gnome3.gnome-calculator
gnome3.gnome-contacts
gnome3.gnome-font-viewer
@ -175,6 +180,13 @@ in {
gnome3.nautilus-sendto
] config.environment.gnome3.excludePackages);
# Use the correct gnome3 packageSet
networking.networkmanager.basePackages =
{ inherit (pkgs) networkmanager modemmanager wpa_supplicant;
inherit (gnome3) networkmanager_openvpn networkmanager_vpnc
networkmanager_openconnect networkmanager_pptp
networkmanager_l2tp; };
# Needed for themes and backgrounds
environment.pathsToLink = [ "/share" ];

View file

@ -58,14 +58,14 @@ in
# Find the mouse
XCURSOR_PATH = "~/.icons:${config.system.path}/share/icons";
};
execCmd = "exec ${gdm}/sbin/gdm";
execCmd = "exec ${gdm}/bin/gdm";
};
# Because sd_login_monitor_new requires /run/systemd/machines
systemd.services.display-manager.wants = [ "systemd-machined.service" ];
systemd.services.display-manager.after = [ "systemd-machined.service" ];
systemd.services.display-manager.path = [ gnome3.gnome_shell gnome3.caribou ];
systemd.services.display-manager.path = [ gnome3.gnome_shell gnome3.caribou pkgs.xlibs.xhost pkgs.dbus_tools ];
services.dbus.packages = [ gdm ];

View file

@ -19,7 +19,7 @@ let
'';
theme = pkgs.gnome3.gnome_themes_standard;
icons = pkgs.gnome3.gnome_icon_theme;
icons = pkgs.gnome3.defaultIconTheme;
# The default greeter provided with this expression is the GTK greeter.
# Again, we need a few things in the environment for the greeter to run with

34
nixos/tests/gnome3_16.nix Normal file
View file

@ -0,0 +1,34 @@
import ./make-test.nix {
name = "gnome3";
machine =
{ config, pkgs, ... }:
{ imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
services.xserver.displayManager.auto.enable = true;
services.xserver.displayManager.auto.user = "alice";
services.xserver.desktopManager.gnome3.enable = true;
environment.gnome3.packageSet = pkgs.gnome3_16;
virtualisation.memorySize = 512;
};
testScript =
''
$machine->waitForX;
$machine->sleep(15);
# Check that logging in has given the user ownership of devices.
$machine->succeed("getfacl /dev/snd/timer | grep -q alice");
$machine->succeed("su - alice -c 'DISPLAY=:0.0 gnome-terminal &'");
$machine->waitForWindow(qr/Terminal/);
$machine->sleep(20);
$machine->screenshot("screen");
'';
}

View file

@ -1,7 +1,7 @@
diff --git a/daemon/gdm-slave.c b/daemon/gdm-slave.c
diff --git a/daemon/gdm-display.c b/daemon/gdm-display.c
index 1afe48e..e3d1ec2 100644
--- a/daemon/gdm-slave.c
+++ b/daemon/gdm-slave.c
--- a/daemon/gdm-display.c
+++ b/daemon/gdm-display.c
@@ -291,9 +291,10 @@ gdm_slave_connect_to_x11_display (GdmSlave *slave)
gdm_error_trap_push ();

View file

@ -0,0 +1,22 @@
{ stdenv, fetchurl, gnome3, pkgconfig, intltool, glib
, udev, itstool, libxml2 }:
stdenv.mkDerivation rec {
name = "gnome-bluetooth-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-bluetooth/${gnome3.version}/${name}.tar.xz";
sha256 = "0rsw27yj6887axk7s2vwpsr0pmic0wdskl7sx8rk4kns7b0ifs88";
};
buildInputs = with gnome3; [ pkgconfig intltool glib gtk3 udev libxml2
gsettings_desktop_schemas itstool ];
meta = with stdenv.lib; {
homepage = https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en;
description = "Application that let you manage Bluetooth in the GNOME destkop";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ gnome3.gnome_icon_theme ];
propagatedUserEnvPkgs = [ gnome3.gnome_icon_theme ];
meta = with stdenv.lib; {
platforms = platforms.linux;
};

View file

@ -16,6 +16,11 @@ rec {
orbit = ORBit2;
inherit (pkgs) libsoup;
version = "3.12";
# Simplify the nixos module and gnome packages
defaultIconTheme = gnome_icon_theme_symbolic;
#### Core (http://ftp.acc.umu.se/pub/GNOME/core/)
baobab = callPackage ./core/baobab { };
@ -52,6 +57,8 @@ rec {
gnome-backgrounds = callPackage ./core/gnome-backgrounds { };
gnome-bluetooth = callPackage ./core/gnome-bluetooth { };
gnome-contacts = callPackage ./core/gnome-contacts { };
gnome_control_center = callPackage ./core/gnome-control-center { };
@ -158,10 +165,12 @@ rec {
inherit gnome3;
};
networkmanager_l2tp = pkgs.networkmanager_l2tp.override {
inherit gnome3;
};
networkmanagerapplet = pkgs.networkmanagerapplet.override {
inherit gnome3 gsettings_desktop_schemas glib_networking
networkmanager_openvpn networkmanager_pptp networkmanager_vpnc
networkmanager_openconnect;
inherit gnome3 gsettings_desktop_schemas glib_networking;
};
rest = callPackage ./core/rest { };
@ -178,10 +187,6 @@ rec {
vte = callPackage ./core/vte { };
vte_038 = callPackage ./core/vte/0.38.0.nix { }; # To be moved in gnome 3.14 when available
vte-select-text = vte_038.override { selectTextPatch = true; };
vino = callPackage ./core/vino { };
yelp = callPackage ./core/yelp {

View file

@ -0,0 +1,42 @@
{ stdenv, intltool, fetchurl, pkgconfig, glib
, evolution_data_server, evolution, sqlite
, hicolor_icon_theme, makeWrapper, itstool, desktop_file_utils
, clutter_gtk, libuuid, webkitgtk, zeitgeist
, gnome3, librsvg, gdk_pixbuf, libxml2 }:
stdenv.mkDerivation rec {
name = "bijiben-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/bijiben/${gnome3.version}/${name}.tar.xz";
sha256 = "0ndb7bv03rqxh4an44xd4cwxxp5z1wywk9xazmab01jsa0a0zx7r";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ pkgconfig glib intltool itstool libxml2
clutter_gtk libuuid webkitgtk gnome3.tracker
gnome3.gnome_online_accounts zeitgeist desktop_file_utils
gnome3.gsettings_desktop_schemas makeWrapper
gdk_pixbuf gnome3.adwaita-icon-theme librsvg
evolution_data_server evolution sqlite
hicolor_icon_theme gnome3.adwaita-icon-theme ];
enableParallelBuilding = true;
preFixup = ''
wrapProgram "$out/bin/bijiben" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Bijiben;
description = "Note editor designed to remain simple to use";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl3;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,55 @@
{ stdenv, intltool, fetchurl, libxml2, webkitgtk, highlight
, pkgconfig, gtk3, glib, hicolor_icon_theme, libnotify, gtkspell3
, makeWrapper, itstool, shared_mime_info, libical, db, gcr, sqlite
, gnome3, librsvg, gdk_pixbuf, libsecret, nss, nspr, icu, libtool
, libcanberra_gtk3, bogofilter, gst_all_1, procps, p11_kit }:
let
majVer = gnome3.version;
in stdenv.mkDerivation rec {
name = "evolution-${majVer}.1";
src = fetchurl {
url = "mirror://gnome/sources/evolution/${majVer}/${name}.tar.xz";
sha256 = "1lm877rrcfy98mpp4iq7m9p8r1nr9kir916n4qin2ygas9zx0qlb";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
propagatedBuildInputs = [ gnome3.gtkhtml ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 libtool
gdk_pixbuf gnome3.adwaita-icon-theme librsvg db icu
gnome3.evolution_data_server libsecret libical gcr
webkitgtk shared_mime_info gnome3.gnome_desktop gtkspell3
libcanberra_gtk3 bogofilter gnome3.libgdata sqlite
gst_all_1.gstreamer gst_all_1.gst-plugins-base p11_kit
hicolor_icon_theme gnome3.adwaita-icon-theme
nss nspr libnotify procps highlight gnome3.libgweather
gnome3.gsettings_desktop_schemas makeWrapper ];
configureFlags = [ "--disable-spamassassin" "--disable-pst-import" "--disable-autoar"
"--disable-libcryptui" ];
NIX_CFLAGS_COMPILE = "-I${nspr}/include/nspr -I${nss}/include/nss -I${glib}/include/gio-unix-2.0";
enableParallelBuilding = true;
preFixup = ''
for f in $out/bin/* $out/libexec/*; do
wrapProgram "$f" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
done
'';
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 = with maintainers; [ lethalman ];
license = licenses.lgpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,33 @@
{ stdenv, fetchurl, glib, pkgconfig, gnome3, intltool, itstool, libxml2, libarchive
, attr, bzip2, acl, makeWrapper, librsvg, gdk_pixbuf, hicolor_icon_theme }:
stdenv.mkDerivation rec {
name = "file-roller-${version}";
majVersion = gnome3.version;
version = "${majVersion}.1";
src = fetchurl {
url = "mirror://gnome/sources/file-roller/${majVersion}/${name}.tar.xz";
sha256 = "12c6lpvc3mi1q10nas64kfcjw2arv3z4955zdfgf4c5wy4dczqyh";
};
# TODO: support nautilus
# it tries to create {nautilus}/lib/nautilus/extensions-3.0/libnautilus-fileroller.so
buildInputs = [ glib pkgconfig gnome3.gtk intltool itstool libxml2 libarchive
hicolor_icon_theme gnome3.adwaita-icon-theme
attr bzip2 acl gdk_pixbuf librsvg makeWrapper ];
preFixup = ''
wrapProgram "$out/bin/file-roller" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:$out/share"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/FileRoller;
description = "Archive manager for the GNOME desktop environment";
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,39 @@
{ stdenv, intltool, fetchurl, enchant, isocodes
, pkgconfig, gtk3, glib, hicolor_icon_theme
, bash, makeWrapper, itstool, libsoup, libxml2
, gnome3, librsvg, gdk_pixbuf, file }:
stdenv.mkDerivation rec {
name = "gedit-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gedit/${gnome3.version}/${name}.tar.xz";
sha256 = "0bs0vf773l0k7f4zxqlyb8z772s5dcn7ww0073hs7z3hj0l3lzrc";
};
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool enchant isocodes
gdk_pixbuf gnome3.adwaita-icon-theme librsvg libsoup
gnome3.libpeas gnome3.gtksourceview libxml2
hicolor_icon_theme gnome3.adwaita-icon-theme
gnome3.gsettings_desktop_schemas makeWrapper file ];
enableParallelBuilding = true;
preFixup = ''
wrapProgram "$out/bin/gedit" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix LD_LIBRARY_PATH : "${gnome3.libpeas}/lib:${gnome3.gtksourceview}/lib" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Gedit;
description = "Official text editor of the GNOME desktop environment";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,36 @@
{ stdenv, intltool, fetchurl, python
, pkgconfig, gtk3, glib, hicolor_icon_theme
, makeWrapper, itstool, libxml2, docbook_xsl
, gnome3, librsvg, gdk_pixbuf, libxslt }:
stdenv.mkDerivation rec {
name = "glade-3.16.1";
src = fetchurl {
url = "mirror://gnome/sources/glade/3.16/${name}.tar.xz";
sha256 = "994ac258bc100d3907ed40a2880c3144f13997b324477253e812d59f2716523f";
};
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 python
gnome3.gsettings_desktop_schemas makeWrapper docbook_xsl
gdk_pixbuf gnome3.adwaita-icon-theme librsvg libxslt
hicolor_icon_theme gnome3.adwaita-icon-theme ];
enableParallelBuilding = true;
preFixup = ''
wrapProgram "$out/bin/glade" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Glade;
description = "User interface designer for GTK+ applications";
maintainers = with maintainers; [ lethalman ];
license = licenses.lgpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,46 @@
{ stdenv, fetchurl, makeWrapper, pkgconfig, intltool, itstool, libvirt-glib
, glib, gobjectIntrospection, libxml2, gtk3, gtkvnc, libvirt, spice_gtk
, spice_protocol, libuuid, libsoup, libosinfo, systemd, tracker, vala
, libcap_ng, libcap, yajl, gmp, gdbm, cyrus_sasl, gnome3, librsvg
, hicolor_icon_theme, desktop_file_utils, mtools, cdrkit, libcdio
}:
# TODO: ovirt (optional)
stdenv.mkDerivation rec {
name = "gnome-boxes-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-boxes/${gnome3.version}/${name}.tar.xz";
sha256 = "03a8x1bnbchsh2bs86gnwvddnwbf643wp5nrhyvg9j86d57axvs1";
};
enableParallelBuilding = true;
doCheck = true;
buildInputs = [
makeWrapper pkgconfig intltool itstool libvirt-glib glib
gobjectIntrospection libxml2 gtk3 gtkvnc libvirt spice_gtk spice_protocol
libuuid libsoup libosinfo systemd tracker vala libcap_ng libcap yajl gmp
gdbm cyrus_sasl gnome3.adwaita-icon-theme
librsvg hicolor_icon_theme desktop_file_utils
];
preFixup = ''
for prog in "$out/bin/"*; do
wrapProgram "$prog" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
--prefix PATH : "${mtools}/bin:${cdrkit}/bin:${libcdio}/bin"
done
'';
meta = with stdenv.lib; {
description = "Simple GNOME 3 application to access remote or virtual systems";
homepage = https://wiki.gnome.org/action/show/Apps/Boxes;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ bjornfor ];
};
}

View file

@ -0,0 +1,40 @@
{ stdenv, intltool, fetchurl, libgweather, libnotify
, pkgconfig, gtk3, glib, hicolor_icon_theme, gsound
, makeWrapper, itstool, libcanberra_gtk3, libtool
, gnome3, librsvg, gdk_pixbuf, geoclue2 }:
stdenv.mkDerivation rec {
name = "gnome-clocks-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-clocks/${gnome3.version}/${name}.tar.xz";
sha256 = "1k7khghaq7y3j0r3kn9q7dwgi1875bfn4iy0sr1ls14m1p2bl10q";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool libcanberra_gtk3
gnome3.gsettings_desktop_schemas makeWrapper
gdk_pixbuf gnome3.adwaita-icon-theme librsvg
gnome3.gnome_desktop gnome3.geocode_glib geoclue2
libgweather libnotify libtool gsound
hicolor_icon_theme gnome3.adwaita-icon-theme ];
enableParallelBuilding = true;
preFixup = ''
wrapProgram "$out/bin/gnome-clocks" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Clocks;
description = "Clock application designed for GNOME 3";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,51 @@
{ stdenv, intltool, fetchurl, evince, gjs
, pkgconfig, gtk3, glib, hicolor_icon_theme
, makeWrapper, itstool, libxslt, webkitgtk
, gnome3, librsvg, gdk_pixbuf, libsoup, docbook_xsl
, gobjectIntrospection, json_glib
, gmp, desktop_file_utils }:
stdenv.mkDerivation rec {
name = "gnome-documents-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-documents/${gnome3.version}/${name}.tar.xz";
sha256 = "154ssnyq4lwq2rsy3l5kqk8x1qjvn2j5gqm23i0aiw7qsbx5phrs";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool libxslt
docbook_xsl desktop_file_utils
gnome3.gsettings_desktop_schemas makeWrapper gmp
gdk_pixbuf gnome3.adwaita-icon-theme librsvg evince
libsoup webkitgtk gjs gobjectIntrospection gnome3.rest
gnome3.tracker gnome3.libgdata gnome3.gnome_online_accounts
gnome3.gnome_desktop gnome3.libzapojit json_glib
hicolor_icon_theme gnome3.adwaita-icon-theme ];
enableParallelBuilding = true;
preFixup =
''
substituteInPlace $out/bin/gnome-documents --replace gapplication "${glib}/bin/gapplication"
for f in $out/bin/* $out/libexec/*; do
wrapProgram "$f" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
--run "if [ -z \"\$XDG_CACHE_DIR\" ]; then XDG_CACHE_DIR=\$HOME/.cache; fi; if [ -w \"\$XDG_CACHE_DIR/..\" ]; then mkdir -p \"\$XDG_CACHE_DIR/gnome-documents\"; fi"
done
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Documents;
description = "Document manager application designed to work with GNOME 3";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,44 @@
{ stdenv, intltool, fetchurl, gdk_pixbuf, tracker
, python3, libxml2, python3Packages, libnotify
, pkgconfig, gtk3, glib, hicolor_icon_theme, cairo
, makeWrapper, itstool, gnome3, librsvg, gst_all_1 }:
stdenv.mkDerivation rec {
name = "gnome-music-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-music/${gnome3.version}/${name}.tar.xz";
sha256 = "1pyj192kva0swad6w2kaj5shcwpgiflyda6zmsiaximsgzc4as8i";
};
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool gnome3.libmediaart
gdk_pixbuf gnome3.adwaita-icon-theme librsvg python3
gnome3.grilo libxml2 python3Packages.pygobject3 libnotify
python3Packages.pycairo python3Packages.dbus gnome3.totem-pl-parser
gst_all_1.gstreamer gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad
hicolor_icon_theme gnome3.adwaita-icon-theme
gnome3.gsettings_desktop_schemas makeWrapper tracker ];
enableParallelBuilding = true;
preFixup = ''
wrapProgram "$out/bin/gnome-music" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
--prefix GRL_PLUGIN_PATH : "${gnome3.grilo-plugins}/lib/grilo-0.2" \
--prefix PYTHONPATH : "$PYTHONPATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Music;
description = "Music player and management application for the GNOME desktop environment";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,47 @@
{ stdenv, intltool, fetchurl, exempi, libxml2
, pkgconfig, gtk3, glib, hicolor_icon_theme
, makeWrapper, itstool, gegl, babl, lcms2
, desktop_file_utils, gmp, libmediaart
, gnome3, librsvg, gdk_pixbuf, libexif }:
stdenv.mkDerivation rec {
name = "gnome-photos-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-photos/${gnome3.version}/${name}.tar.xz";
sha256 = "0jv3b5nd4sazyq2k132rdjizfg24sj6i63ls1m6x2qqqf8grxznj";
};
# doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
buildInputs = [ pkgconfig gtk3 glib intltool itstool gegl babl gnome3.libgdata
gnome3.gsettings_desktop_schemas makeWrapper gmp libmediaart
gdk_pixbuf gnome3.adwaita-icon-theme librsvg exempi
gnome3.gfbgraph gnome3.grilo-plugins gnome3.grilo
gnome3.gnome_online_accounts gnome3.gnome_desktop
lcms2 libexif gnome3.tracker libxml2 desktop_file_utils
hicolor_icon_theme gnome3.adwaita-icon-theme ];
preFixup = ''
for f in $out/bin/* $out/libexec/*; do
wrapProgram "$f" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix GRL_PLUGIN_PATH : "${gnome3.grilo-plugins}/lib/grilo-0.2" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
done
'';
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Photos;
description = "Photos is an application to access, organize and share your photos with GNOME 3";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,22 @@
{ stdenv, fetchurl, glib, pkgconfig, gnome3, intltool
, gobjectIntrospection, makeWrapper }:
stdenv.mkDerivation rec {
name = "nautilus-sendto-${version}";
version = "3.8.1";
src = fetchurl {
url = "mirror://gnome/sources/nautilus-sendto/3.8/${name}.tar.xz";
sha256 = "03fa46bff271acdbdedab6243b2a84e5ed3daa19c81b69d087b3e852c8fe5dab";
};
buildInputs = [ glib pkgconfig gobjectIntrospection intltool makeWrapper ];
meta = with stdenv.lib; {
description = "Integrates Evolution and Pidgin into the Nautilus file manager";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,49 @@
{ stdenv, fetchFromGitHub, which, automake113x, intltool, pkgconfig, libtool, makeWrapper,
dbus_glib, libcanberra, gst_all_1, upower, vala, gnome3, gtk3, gst_plugins_base,
glib, gobjectIntrospection, hicolor_icon_theme
}:
stdenv.mkDerivation rec {
rev = "0.10.3";
name = "gnome-shell-pomodoro-${rev}-61df3fa";
src = fetchFromGitHub {
owner = "codito";
repo = "gnome-shell-pomodoro";
rev = "${rev}";
sha256 = "0i0glmijalppb5hdb1xd6xnmv824l2w831rpkqmhxi0iqbvaship";
};
configureScript = ''./autogen.sh'';
buildInputs = [
which automake113x intltool glib gobjectIntrospection pkgconfig libtool
makeWrapper dbus_glib libcanberra upower vala gst_all_1.gstreamer
gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
gnome3.gsettings_desktop_schemas gnome3.gnome_desktop
gnome3.gnome_common gnome3.gnome_shell hicolor_icon_theme gtk3
];
preBuild = ''
sed -i \
-e 's|/usr\(/share/gir-1.0/UPowerGlib\)|${upower}\1|' \
-e 's|/usr\(/share/gir-1.0/GnomeDesktop\)|${gnome3.gnome_desktop}\1|' \
vapi/Makefile
'';
preFixup = ''
wrapProgram $out/bin/gnome-pomodoro \
--prefix XDG_DATA_DIRS : \
"$out/share:$GSETTINGS_SCHEMAS_PATH:$XDG_DATA_DIRS"
'';
meta = with stdenv.lib; {
homepage = https://github.com/codito/gnome-shell-pomodoro;
description =
"Personal information management application that provides integrated " +
"mail, calendaring and address book functionality";
maintainers = with maintainers; [ DamienCassou ];
license = licenses.gpl3;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,42 @@
{ stdenv, intltool, fetchurl, vala
, pkgconfig, gtk3, glib, hicolor_icon_theme
, makeWrapper, itstool, gnupg, libsoup
, gnome3, librsvg, gdk_pixbuf, gpgme
, libsecret, avahi, p11_kit }:
let
majVer = "3.14";
in stdenv.mkDerivation rec {
name = "seahorse-${majVer}.1";
src = fetchurl {
url = "mirror://gnome/sources/seahorse/${majVer}/${name}.tar.xz";
sha256 = "14syy2qxxrim220aj64mbp76jbrrc6wmdwc4lfl4sngsh84qjah9";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
buildInputs = [ pkgconfig gtk3 glib intltool itstool gnome3.gcr
gnome3.gsettings_desktop_schemas makeWrapper gnupg
gdk_pixbuf gnome3.adwaita-icon-theme librsvg gpgme
libsecret avahi libsoup p11_kit vala gnome3.gcr
hicolor_icon_theme gnome3.adwaita-icon-theme ];
preFixup = ''
wrapProgram "$out/bin/seahorse" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Seahorse;
description = "Application for managing encryption keys and passwords in the GnomeKeyring";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,23 @@
{ stdenv, fetchurl, pkgconfig, intltool, gnome3
, iconnamingutils, gtk, gdk_pixbuf, librsvg, hicolor_icon_theme }:
stdenv.mkDerivation rec {
name = "adwaita-icon-theme-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/adwaita-icon-theme/${gnome3.version}/${name}.tar.xz";
sha256 = "a3c8ad3b099ca571b423811a20ee9a7a43498cfa04d299719ee43cd7af6f6eb1";
};
# For convenience, we can specify adwaita-icon-theme only in packages
propagatedBuildInputs = [ hicolor_icon_theme ];
buildInputs = [ gdk_pixbuf librsvg ];
nativeBuildInputs = [ pkgconfig intltool iconnamingutils gtk ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,38 @@
{ stdenv, intltool, fetchurl, vala, libgtop
, pkgconfig, gtk3, glib, hicolor_icon_theme
, bash, makeWrapper, itstool, libxml2
, gnome3, librsvg, gdk_pixbuf, file }:
stdenv.mkDerivation rec {
name = "baobab-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/baobab/${gnome3.version}/${name}.tar.xz";
sha256 = "1wnf3yd3qi0xsmm37s6pk23qh095pk1fv9nhqjya1p9svwrh9r0z";
};
doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ vala pkgconfig gtk3 glib libgtop intltool itstool libxml2
gnome3.gsettings_desktop_schemas makeWrapper file
gdk_pixbuf gnome3.adwaita-icon-theme librsvg
hicolor_icon_theme gnome3.adwaita-icon-theme ];
preFixup = ''
wrapProgram "$out/bin/baobab" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Baobab;
description = "Graphical application to analyse disk usage in any Gnome environment";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,31 @@
{ fetchurl, stdenv, pkgconfig, gnome3, clutter, dbus, pythonPackages, libxml2, autoconf
, libxklavier, libXtst, gtk2, intltool, libxslt, at_spi2_core, automake114x }:
let
majorVersion = "0.4";
in
stdenv.mkDerivation rec {
name = "caribou-${majorVersion}.18.1";
src = fetchurl {
url = "mirror://gnome/sources/caribou/${majorVersion}/${name}.tar.xz";
sha256 = "0l1ikx56ddgayvny3s2xv8hs3p23xsclw4zljs3cczv4b89dzymf";
};
buildInputs = with gnome3;
[ glib pkgconfig gtk clutter at_spi2_core dbus pythonPackages.python automake114x
pythonPackages.pygobject3 libxml2 libXtst gtk2 intltool libxslt autoconf ];
propagatedBuildInputs = [ gnome3.libgee libxklavier ];
preBuild = ''
patchShebangs .
substituteInPlace libcaribou/Makefile.am --replace "--shared-library=libcaribou.so.0" "--shared-library=$out/lib/libcaribou.so.0"
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,30 @@
{ stdenv, fetchurl, vala, libxslt, pkgconfig, glib, dbus_glib, gnome3
, libxml2, intltool, docbook_xsl_ns, docbook_xsl, makeWrapper }:
let
majorVersion = "0.24";
in
stdenv.mkDerivation rec {
name = "dconf-${version}";
version = "${majorVersion}.0";
src = fetchurl {
url = "mirror://gnome/sources/dconf/${majorVersion}/${name}.tar.xz";
sha256 = "4373e0ced1f4d7d68d518038796c073696280e22957babb29feb0267c630fec2";
};
buildInputs = [ vala libxslt pkgconfig glib dbus_glib gnome3.gtk libxml2
intltool docbook_xsl docbook_xsl_ns makeWrapper ];
preFixup = ''
wrapProgram "$out/bin/dconf-editor" \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
rm $out/lib/gio/modules/giomodule.cache
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,57 @@
{ stdenv, intltool, fetchurl, webkitgtk, pkgconfig, gtk3, glib
, file, librsvg, hicolor_icon_theme, gnome3, gdk_pixbuf
, dbus_glib, dbus_libs, telepathy_glib, telepathy_farstream
, clutter_gtk, clutter-gst, gst_all_1, cogl, gnome_online_accounts
, gcr, libsecret, folks, pulseaudio, telepathy_mission_control
, telepathy_logger, libnotify, clutter, libsoup, gnutls
, evolution_data_server
, libcanberra_gtk3, p11_kit, farstream, libtool, shared_mime_info
, bash, makeWrapper, itstool, libxml2, libxslt, icu, libgee }:
# TODO: enable more features
let
majorVersion = "3.12";
in
stdenv.mkDerivation rec {
name = "empathy-${majorVersion}.8";
src = fetchurl {
url = "mirror://gnome/sources/empathy/${majorVersion}/${name}.tar.xz";
sha256 = "10z6ksia6yx7vg0wsdbk4w6vjgfg3cg3n04jf9bj2vr7kr5zvs7w";
};
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard
gnome_online_accounts shared_mime_info ];
propagatedBuildInputs = [ folks telepathy_logger evolution_data_server
telepathy_mission_control ];
buildInputs = [ pkgconfig gtk3 glib webkitgtk intltool itstool
libxml2 libxslt icu file makeWrapper
telepathy_glib clutter_gtk clutter-gst cogl
gst_all_1.gstreamer gst_all_1.gst-plugins-base
gcr libsecret pulseaudio gnome3.yelp_xsl gdk_pixbuf
libnotify clutter libsoup gnutls libgee p11_kit
libcanberra_gtk3 telepathy_farstream farstream
gnome3.adwaita-icon-theme hicolor_icon_theme
gnome3.gsettings_desktop_schemas file libtool librsvg ];
NIX_CFLAGS_COMPILE = [ "-I${dbus_glib}/include/dbus-1.0"
"-I${dbus_libs}/include/dbus-1.0"
"-I${dbus_libs}/lib/dbus-1.0/include" ];
preFixup = ''
for f in $out/bin/* $out/libexec/*; do
wrapProgram $f \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gnome_themes_standard}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
done
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Empathy;
description = "Messaging program which supports text, voice, video chat, and file transfers over many different protocols";
maintainers = with maintainers; [ lethalman ];
# TODO: license = [ licenses.gpl2 licenses.lgpl2 ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,31 @@
{ fetchurl, stdenv, intltool, pkgconfig, itstool, libxml2, libjpeg, gnome3
, shared_mime_info, makeWrapper, librsvg, libexif }:
stdenv.mkDerivation rec {
name = "eog-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/eog/${gnome3.version}/${name}.tar.xz";
sha256 = "1ry10wvd2zq7vv4rf1qz0x1b77sdzaqlxyjbw3a0lccp4f2x2y99";
};
buildInputs = with gnome3;
[ intltool pkgconfig itstool libxml2 libjpeg gtk glib libpeas makeWrapper librsvg
gsettings_desktop_schemas shared_mime_info adwaita-icon-theme gnome_desktop libexif ];
preFixup = ''
wrapProgram "$out/bin/eog" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${shared_mime_info}/share:${gnome3.adwaita-icon-theme}/share:${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/EyeOfGnome;
platforms = platforms.linux;
description = "GNOME image viewer";
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,53 @@
{ stdenv, intltool, fetchurl, pkgconfig, gtk3, glib, nspr, icu
, bash, makeWrapper, gnome3, libwnck3, libxml2, libxslt, libtool
, webkitgtk, libsoup, libsecret, gnome_desktop, libnotify, p11_kit
, sqlite, gcr, avahi, nss, isocodes, itstool, file, which
, hicolor_icon_theme, gdk_pixbuf, librsvg, gnome_common }:
stdenv.mkDerivation rec {
name = "epiphany-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/epiphany/${gnome3.version}/${name}.tar.xz";
sha256 = "1bicv1rfi697hk12p5n3jmcgjc81bwicjsmppdfjmvj94r4iniz8";
};
# Tests need an X display
configureFlags = [ "--disable-static --disable-tests" ];
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
nativeBuildInputs = [ pkgconfig file ];
configureScript = "./autogen.sh";
buildInputs = [ gtk3 glib intltool libwnck3 libxml2 libxslt pkgconfig file
webkitgtk libsoup libsecret gnome_desktop libnotify libtool
sqlite isocodes nss itstool p11_kit nspr icu gnome3.yelp_tools
gdk_pixbuf gnome3.adwaita-icon-theme librsvg which gnome_common
gcr avahi gnome3.gsettings_desktop_schemas makeWrapper ];
NIX_CFLAGS_COMPILE = "-I${nspr}/include/nspr -I${nss}/include/nss -I${glib}/include/gio-unix-2.0";
enableParallelBuilding = true;
patches = [ ./libxml_depend.patch ];
patchFlags = [ "-p0" ];
preFixup = ''
for f in $out/bin/* $out/libexec/*; do
wrapProgram "$f" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
done
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Epiphany;
description = "WebKit based web browser for GNOME";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,10 @@
--- configure.ac.orig 2015-04-08 18:53:52.284580835 +0200
+++ configure.ac 2015-04-08 18:55:55.697225280 +0200
@@ -113,6 +113,7 @@
PKG_CHECK_MODULES(WEB_EXTENSION, [
webkit2gtk-web-extension-4.0 >= $WEBKIT_GTK_REQUIRED
libsecret-1 >= $LIBSECRET_REQUIRED
+ libxml-2.0 >= $LIBXML_REQUIRED
])
AC_SUBST(WEB_EXTENSION_CFLAGS)
AC_SUBST(WEB_EXTENSION_LIBS)

View file

@ -0,0 +1,69 @@
{ fetchurl, stdenv, pkgconfig, intltool, perl, perlXMLParser, libxml2
, glib, gtk3, pango, atk, gdk_pixbuf, shared_mime_info, itstool, gnome3
, poppler, ghostscriptX, djvulibre, libspectre, libsecret , makeWrapper
, librsvg, recentListSize ? null # 5 is not enough, allow passing a different number
, gobjectIntrospection
}:
stdenv.mkDerivation rec {
name = "evince-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/evince/${gnome3.version}/${name}.tar.xz";
sha256 = "016d9i83srv49saslmjl7v02n7sc6d7v6h68y06y9rfgbk8f4f2i";
};
buildInputs = [
pkgconfig intltool perl perlXMLParser libxml2
glib gtk3 pango atk gdk_pixbuf gobjectIntrospection
itstool gnome3.adwaita-icon-theme
gnome3.libgnome_keyring gnome3.gsettings_desktop_schemas
poppler ghostscriptX djvulibre libspectre
makeWrapper libsecret librsvg gnome3.adwaita-icon-theme
];
configureFlags = [
"--disable-nautilus" # Do not use nautilus
"--enable-introspection"
];
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
preConfigure = with stdenv.lib;
optionalString doCheck ''
for file in test/*.py; do
echo "patching $file"
sed '1s,/usr,${python},' -i "$file"
done
'' + optionalString (recentListSize != null) ''
sed -i 's/\(gtk_recent_chooser_set_limit .*\)5)/\1${builtins.toString recentListSize})/' shell/ev-open-recent-action.c
sed -i 's/\(if (++n_items == \)5\(.*\)/\1${builtins.toString recentListSize}\2/' shell/ev-window.c
'';
preFixup = ''
# Tell Glib/GIO about the MIME info directory, which is used
# by `g_file_info_get_content_type ()'.
wrapProgram "$out/bin/evince" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${shared_mime_info}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
'';
doCheck = false; # would need pythonPackages.dogTail, which is missing
meta = with stdenv.lib; {
homepage = http://www.gnome.org/projects/evince/;
description = "GNOME's document viewer";
longDescription = ''
Evince is a document viewer for multiple document formats. It
currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
of Evince is to replace the multiple document viewers that exist
on the GNOME Desktop with a single simple application.
'';
license = stdenv.lib.licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.vcunat ];
};
}

View file

@ -0,0 +1,36 @@
{ fetchurl, stdenv, pkgconfig, gnome3, python
, intltool, libsoup, libxml2, libsecret, icu, sqlite
, p11_kit, db, nspr, nss, libical, gperf, makeWrapper, valaSupport ? true, vala }:
stdenv.mkDerivation rec {
name = "evolution-data-server-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/evolution-data-server/${gnome3.version}/${name}.tar.xz";
sha256 = "0lgb8jvn8kx50692gg1m9klvwm7msvk4f7wm0yl7rj880wbxzvh4";
};
buildInputs = with gnome3;
[ pkgconfig glib python intltool libsoup libxml2 gtk gnome_online_accounts
gcr p11_kit libgweather libgdata gperf makeWrapper icu sqlite ]
++ stdenv.lib.optional valaSupport vala;
propagatedBuildInputs = [ libsecret nss nspr libical db ];
# uoa irrelevant for now
configureFlags = [ "--disable-uoa" ]
++ stdenv.lib.optional valaSupport "--enable-vala-bindings";
preFixup = ''
for f in "$out/libexec/"*; do
wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
done
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,43 @@
{ fetchurl, stdenv, pkgconfig, glib, gnome3, nspr, intltool
, vala, sqlite, libxml2, dbus_glib, libsoup, nss, dbus_libs
, telepathy_glib, evolution_data_server, libsecret, db }:
# TODO: enable more folks backends
let
majorVersion = "0.11";
in
stdenv.mkDerivation rec {
name = "folks-${majorVersion}.0";
src = fetchurl {
url = "mirror://gnome/sources/folks/${majorVersion}/${name}.tar.xz";
sha256 = "0q9hny6a38zn0gamv0ji0pn3jw6bpn2i0fr6vbzkhm9h9ws0cqvz";
};
propagatedBuildInputs = [ glib gnome3.libgee sqlite ];
# dbus_daemon needed for tests
buildInputs = [ dbus_glib telepathy_glib evolution_data_server dbus_libs
vala libsecret libxml2 libsoup nspr nss intltool db ];
nativeBuildInputs = [ pkgconfig ];
configureFlags = "--disable-fatal-warnings";
NIX_CFLAGS_COMPILE = ["-I${nspr}/include/nspr" "-I${nss}/include/nss"
"-I${dbus_glib}/include/dbus-1.0" "-I${dbus_libs}/include/dbus-1.0"];
enableParallelBuilding = true;
postBuild = "rm -rf $out/share/gtk-doc";
meta = {
description = "Folks";
homepage = https://wiki.gnome.org/Projects/Folks;
license = stdenv.lib.licenses.lgpl2Plus;
maintainers = with stdenv.lib.maintainers; [ lethalman ];
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
};
}

View file

@ -0,0 +1,30 @@
{ stdenv, fetchurl, pkgconfig, dbus_glib, gnome3, glib, libxml2
, intltool, polkit, orbit }:
stdenv.mkDerivation rec {
versionMajor = "3.2";
versionMinor = "6";
moduleName = "GConf";
origName = "${moduleName}-${versionMajor}.${versionMinor}";
name = "gconf-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${origName}.tar.xz";
sha256 = "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr";
};
buildInputs = [ libxml2 polkit gnome3.gtk orbit ];
propagatedBuildInputs = [ glib dbus_glib ];
nativeBuildInputs = [ pkgconfig intltool ];
# ToDo: ldap reported as not found but afterwards reported as supported
meta = with stdenv.lib; {
homepage = http://projects.gnome.org/gconf/;
description = "A system for storing application preferences";
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,29 @@
{ stdenv, fetchurl, pkgconfig, intltool, gnupg, p11_kit, glib
, libgcrypt, libtasn1, dbus_glib, gtk, pango, gdk_pixbuf, atk
, gobjectIntrospection, makeWrapper, libxslt, vala, gnome3 }:
stdenv.mkDerivation rec {
name = "gcr-3.14.0";
src = fetchurl {
url = "mirror://gnome/sources/gcr/3.14/${name}.tar.xz";
sha256 = "2a2231147a01e2061f57fa9ca77557ff97bc6ceab028cee5528079f4b2fca63d";
};
buildInputs = [
pkgconfig intltool gnupg p11_kit glib gobjectIntrospection libxslt
libgcrypt libtasn1 dbus_glib gtk pango gdk_pixbuf atk makeWrapper vala
];
#doCheck = true;
preFixup = ''
wrapProgram "$out/bin/gcr-viewer" \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,40 @@
{ stdenv, fetchurl, pkgconfig, glib, itstool, libxml2, xorg, dbus
, intltool, accountsservice, libX11, gnome3, systemd, gnome_session
, gtk, libcanberra_gtk3, pam, libtool, gobjectIntrospection }:
stdenv.mkDerivation rec {
name = "gdm-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gdm/${gnome3.version}/${name}.tar.xz";
sha256 = "0qg2qxlfdvi1081r8bbid5hg7vqlpm91996ck2z7fq6kczy4hvdv";
};
# Only needed to make it build
preConfigure = ''
substituteInPlace ./configure --replace "/usr/bin/X" "${xorg.xorgserver}/bin/X"
substituteInPlace daemon/gdm-simple-slave.c --replace 'BINDIR "/gnome-session' '"${gnome_session}/bin/gnome-session'
substituteInPlace daemon/gdm-launch-environment.c --replace 'BINDIR "/dbus-launch' '"${dbus.tools}/bin/dbus-launch'
substituteInPlace data/gdm.conf-custom.in --replace '#WaylandEnable=false' 'WaylandEnable=false'
'';
configureFlags = [ "--localstatedir=/var" "--with-systemd=yes" "--without-plymouth"
"--with-systemdsystemunitdir=$(out)/etc/systemd/system" ];
buildInputs = [ pkgconfig glib itstool libxml2 intltool
accountsservice gnome3.dconf systemd
gobjectIntrospection libX11 gtk
libcanberra_gtk3 pam libtool ];
#enableParallelBuilding = true; # problems compiling
# Disable Access Control because our X does not support FamilyServerInterpreted yet
patches = [ ./xserver_path.patch ./sessions_dir.patch ./disable_x_access_control.patch ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/GDM;
description = "A program that manages graphical display servers and handles graphical user logins";
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,15 @@
--- gdm-3.16.0/daemon/gdm-display.c.orig 2015-04-08 13:53:14.370274369 +0200
+++ gdm-3.16.0/daemon/gdm-display.c 2015-04-08 13:53:36.287520435 +0200
@@ -1706,9 +1706,10 @@
gdm_error_trap_push ();
- for (i = 0; i < G_N_ELEMENTS (host_entries); i++) {
+ /*for (i = 0; i < G_N_ELEMENTS (host_entries); i++) {
XAddHost (self->priv->x11_display, &host_entries[i]);
- }
+ }*/
+ XDisableAccessControl(self->priv->x11_display);
XSync (self->priv->x11_display, False);
if (gdm_error_trap_pop ()) {

View file

@ -0,0 +1,17 @@
diff --git a/daemon/gdm-session.c b/daemon/gdm-session.c
index f759d2d..d154716 100644
--- a/daemon/gdm-session.c
+++ b/daemon/gdm-session.c
@@ -373,9 +373,12 @@ get_system_session_dirs (void)
#ifdef ENABLE_WAYLAND_SUPPORT
DATADIR "/wayland-sessions/",
#endif
+ NULL,
NULL
};
+ search_dirs[4] = getenv("GDM_SESSIONS_DIR") != NULL ? getenv("GDM_SESSIONS_DIR") : NULL;
+
return search_dirs;
}

View file

@ -0,0 +1,83 @@
--- a/daemon/gdm-server.c 2014-07-30 23:00:17.786841724 +0200
+++ b/daemon/gdm-server.c 2014-07-30 23:02:10.491239180 +0200
@@ -322,7 +322,11 @@
fallback:
#endif
- server->priv->command = g_strdup_printf (X_SERVER X_SERVER_ARG_FORMAT, verbosity, debug_options);
+ if (g_getenv("GDM_X_SERVER") != NULL) {
+ server->priv->command = g_strdup (g_getenv("GDM_X_SERVER"));
+ } else {
+ server->priv->command = g_strdup_printf (X_SERVER X_SERVER_ARG_FORMAT, verbosity, debug_options);
+ }
}
static gboolean
--- gdm-3.16.0/daemon/gdm-x-session.c.orig 2015-04-15 18:44:16.875743928 +0200
+++ gdm-3.16.0/daemon/gdm-x-session.c 2015-04-16 13:34:02.335708638 +0200
@@ -207,6 +207,8 @@
char *display_fd_string = NULL;
char *vt_string = NULL;
char *display_number;
+ int nixos_argc = 0;
+ char **nixos_argv = NULL;
gsize display_number_size;
auth_file = prepare_auth_file ();
@@ -236,7 +238,15 @@
display_fd_string = g_strdup_printf ("%d", DISPLAY_FILENO);
- g_ptr_array_add (arguments, X_SERVER);
+ if (g_getenv("GDM_X_SERVER") != NULL) {
+ int i = 0;
+ g_shell_parse_argv(g_getenv("GDM_X_SERVER"), &nixos_argc, &nixos_argv, NULL);
+ for (i = 0; i < nixos_argc; i++) {
+ g_ptr_array_add (arguments, nixos_argv[i]);
+ }
+ } else {
+ g_ptr_array_add (arguments, X_SERVER);
+ }
if (vt_string != NULL) {
g_ptr_array_add (arguments, vt_string);
@@ -259,12 +269,12 @@
g_ptr_array_add (arguments, "-noreset");
g_ptr_array_add (arguments, "-keeptty");
- g_ptr_array_add (arguments, "-verbose");
+ /*g_ptr_array_add (arguments, "-verbose");
if (state->debug_enabled) {
g_ptr_array_add (arguments, "7");
} else {
g_ptr_array_add (arguments, "3");
- }
+ }*/
if (state->debug_enabled) {
g_ptr_array_add (arguments, "-core");
@@ -275,6 +285,9 @@
(const char * const *) arguments->pdata,
&error);
g_free (display_fd_string);
+ if (nixos_argv) {
+ g_strfreev (nixos_argv);
+ }
g_clear_object (&launcher);
g_ptr_array_free (arguments, TRUE);
--- gdm-3.16.0/daemon/gdm-session.c.orig 2015-04-16 14:19:01.392802683 +0200
+++ gdm-3.16.0/daemon/gdm-session.c 2015-04-16 14:20:36.012296764 +0200
@@ -2359,6 +2359,12 @@
gchar *desktop_names;
const char *locale;
+ if (g_getenv ("GDM_X_SERVER") != NULL) {
+ gdm_session_set_environment_variable (self,
+ "GDM_X_SERVER",
+ g_getenv ("GDM_X_SERVER"));
+ }
+
gdm_session_set_environment_variable (self,
"GDMSESSION",
get_session_name (self));

View file

@ -0,0 +1,42 @@
{ stdenv, fetchurl, pkgconfig, glib, itstool, libxml2, xorg, dbus
, intltool, accountsservice, libX11, gnome3, systemd, gnome_session
, gtk, libcanberra_gtk3, pam, libtool, gobjectIntrospection }:
stdenv.mkDerivation rec {
name = "gdm-3.14.2";
src = fetchurl {
url = "mirror://gnome/sources/gdm/3.14/${name}.tar.xz";
sha256 = "0c2rvgcrf4s0nkxb19hf9pgh9c5pm6pginsq21dxj6hnjqabc3p2";
};
# Only needed to make it build
preConfigure = ''
substituteInPlace ./configure --replace "/usr/bin/X" "${xorg.xorgserver}/bin/X"
'';
configureFlags = [ "--localstatedir=/var" "--with-systemd=yes"
"--with-systemdsystemunitdir=$(out)/etc/systemd/system" ];
buildInputs = [ pkgconfig glib itstool libxml2 intltool
accountsservice gnome3.dconf systemd
gobjectIntrospection libX11 gtk
libcanberra_gtk3 pam libtool ];
#enableParallelBuilding = true; # problems compiling
preBuild = ''
substituteInPlace daemon/gdm-simple-slave.c --replace 'BINDIR "/gnome-session' '"${gnome_session}/bin/gnome-session'
substituteInPlace daemon/gdm-launch-environment.c --replace 'BINDIR "/dbus-launch' '"${dbus.tools}/bin/dbus-launch'
'';
# Disable Access Control because our X does not support FamilyServerInterpreted yet
patches = [ ./xserver_path.patch ./sessions_dir.patch ./disable_x_access_control.patch ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/GDM;
description = "A program that manages graphical display servers and handles graphical user logins";
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,13 @@
--- gdm-3.14.2/daemon/gdm-slave.c.orig 2015-04-16 15:05:27.844353079 +0200
+++ gdm-3.14.2/daemon/gdm-slave.c 2015-04-16 15:05:40.240417915 +0200
@@ -369,8 +369,9 @@
gdm_error_trap_push ();
for (i = 0; i < G_N_ELEMENTS (host_entries); i++) {
- XAddHost (slave->priv->server_display, &host_entries[i]);
+ //XAddHost (slave->priv->server_display, &host_entries[i]);
}
+ XDisableAccessControl(slave->priv->server_display);
XSync (slave->priv->server_display, False);
if (gdm_error_trap_pop ()) {

View file

@ -0,0 +1,17 @@
diff --git a/daemon/gdm-session.c b/daemon/gdm-session.c
index f759d2d..d154716 100644
--- a/daemon/gdm-session.c
+++ b/daemon/gdm-session.c
@@ -373,9 +373,12 @@ get_system_session_dirs (void)
#ifdef ENABLE_WAYLAND_SUPPORT
DATADIR "/wayland-sessions/",
#endif
+ NULL,
NULL
};
+ search_dirs[4] = getenv("GDM_SESSIONS_DIR") != NULL ? getenv("GDM_SESSIONS_DIR") : NULL;
+
return search_dirs;
}

View file

@ -0,0 +1,15 @@
--- a/daemon/gdm-server.c 2014-07-30 23:00:17.786841724 +0200
+++ b/daemon/gdm-server.c 2014-07-30 23:02:10.491239180 +0200
@@ -322,7 +322,11 @@
fallback:
#endif
- server->priv->command = g_strdup_printf (X_SERVER X_SERVER_ARG_FORMAT, verbosity, debug_options);
+ if (g_getenv("GDM_X_SERVER") != NULL) {
+ server->priv->command = g_strdup (g_getenv("GDM_X_SERVER"));
+ } else {
+ server->priv->command = g_strdup_printf (X_SERVER X_SERVER_ARG_FORMAT, verbosity, debug_options);
+ }
}
static gboolean

View file

@ -0,0 +1,21 @@
{ fetchurl, stdenv, pkgconfig, gnome3, intltool, libsoup, json_glib }:
stdenv.mkDerivation rec {
name = "geocode-glib-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/geocode-glib/${gnome3.version}/${name}.tar.xz";
sha256 = "1cbfv0kds6b6k0cl7q47xpj3x1scwcd7m68zl1rf7i4hmhw4hpqj";
};
buildInputs = with gnome3;
[ intltool pkgconfig glib libsoup json_glib ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,23 @@
{ fetchurl, stdenv, pkgconfig, gnome3, gobjectIntrospection, spidermonkey_24, pango }:
let
majorVersion = "1.42";
in
stdenv.mkDerivation rec {
name = "gjs-${majorVersion}.0";
src = fetchurl {
url = "mirror://gnome/sources/gjs/${majorVersion}/${name}.tar.xz";
sha256 = "0c9afb7d5be6ead5b68059596f08eb7c3902b1676ee9c8846aa8df09647dba13";
};
buildInputs = with gnome3;
[ gobjectIntrospection pkgconfig glib pango ];
propagatedBuildInputs = [ spidermonkey_24 ];
meta = with stdenv.lib; {
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,17 @@
{ stdenv, fetchurl, pkgconfig, gnome3, intltool }:
stdenv.mkDerivation rec {
name = "gnome-backgrounds-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-backgrounds/${gnome3.version}/${name}.tar.xz";
sha256 = "0fx0pjz356v4w462i9a3z9r26khxqmj0zhp7wfl5scyq07fzkqvn";
};
nativeBuildInputs = [ pkgconfig intltool ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,22 @@
{ stdenv, fetchurl, gnome3, pkgconfig, intltool, glib
, udev, itstool, libxml2 }:
stdenv.mkDerivation rec {
name = "gnome-bluetooth-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-bluetooth/${gnome3.version}/${name}.tar.xz";
sha256 = "12z0792j5ln238ajhgqx5jrm34wz2yqbbskhlp23p9c0cwnj1srz";
};
buildInputs = with gnome3; [ pkgconfig intltool glib gtk3 udev libxml2
gsettings_desktop_schemas itstool ];
meta = with stdenv.lib; {
homepage = https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en;
description = "Application that let you manage Bluetooth in the GNOME destkop";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,36 @@
{ stdenv, intltool, fetchurl, pkgconfig, libxml2
, bash, gtk3, glib, hicolor_icon_theme, makeWrapper
, itstool, gnome3, librsvg, gdk_pixbuf, mpfr, gmp }:
stdenv.mkDerivation rec {
name = "gnome-calculator-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-calculator/${gnome3.version}/${name}.tar.xz";
sha256 = "068mnwkxliwafcfk70cz85fqna76vjj7kgsm4yqs4c1fd72gphmv";
};
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ bash pkgconfig gtk3 glib intltool itstool
libxml2 gnome3.gtksourceview mpfr gmp
gdk_pixbuf gnome3.adwaita-icon-theme librsvg
hicolor_icon_theme gnome3.adwaita-icon-theme
gnome3.gsettings_desktop_schemas makeWrapper ];
preFixup = ''
wrapProgram "$out/bin/gnome-calculator" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/action/show/Apps/Calculator;
description = "Application that solves mathematical equations and is suitable as a default application in a Desktop environment";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,23 @@
{ stdenv, fetchurl, which, gnome3, autoconf, automake }:
let
majVer = "3.14";
in stdenv.mkDerivation rec {
name = "gnome-common-${majVer}.0";
src = fetchurl {
url = "https://download.gnome.org/sources/gnome-common/${majVer}/${name}.tar.xz";
sha256 = "0b1676g4q44ah73c5gwl1kg88pc93pnq1pa9kwl43d0vg0pj802c";
};
patches = [(fetchurl {
url = "https://bug697543.bugzilla-attachments.gnome.org/attachment.cgi?id=240935";
sha256 = "17abp7czfzirjm7qsn2czd03hdv9kbyhk3lkjxg2xsf5fky7z7jl";
})];
propagatedBuildInputs = [ which autoconf automake ]; # autogen.sh which is using gnome_common tends to require which
meta = with stdenv.lib; {
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,53 @@
{ stdenv, intltool, fetchurl, evolution_data_server, db
, pkgconfig, gtk3, glib, hicolor_icon_theme, libsecret
, libchamplain, clutter_gtk, geocode_glib
, bash, makeWrapper, itstool, folks, libnotify, libxml2
, gnome3, librsvg, gdk_pixbuf, file, telepathy_glib, nspr, nss
, libsoup, vala, dbus_glib, automake115x, autoconf }:
stdenv.mkDerivation rec {
name = "gnome-contacts-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-contacts/${gnome3.version}/${name}.tar.xz";
sha256 = "09syi67ijdx9dhsx9c740mf3fhs6z3kaijdr3fyj8gd80h7a3hym";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard evolution_data_server ];
# force build from vala
preBuild = ''
touch src/*.vala
'';
buildInputs = [ pkgconfig gtk3 glib intltool itstool evolution_data_server
gnome3.gsettings_desktop_schemas makeWrapper file libnotify
folks gnome3.gnome_desktop telepathy_glib libsecret dbus_glib
libxml2 libsoup gnome3.gnome_online_accounts nspr nss
gdk_pixbuf gnome3.adwaita-icon-theme librsvg
libchamplain clutter_gtk geocode_glib
hicolor_icon_theme gnome3.adwaita-icon-theme
vala automake115x autoconf db ];
preFixup = ''
for f in "$out/bin/gnome-contacts" "$out/libexec/gnome-contacts-search-provider"; do
wrapProgram $f \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
done
'';
patches = [ ./gio_unix.patch ];
patchFlags = "-p0";
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Contacts;
description = "Contacts is GNOME's integrated address book";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,10 @@
--- configure.ac.orig 2015-04-09 18:45:50.581232289 +0200
+++ configure.ac 2015-04-09 18:45:59.744280137 +0200
@@ -54,6 +54,7 @@
champlain-0.12
clutter-gtk-1.0
geocode-glib-1.0 >= 3.15.3
+ gio-unix-2.0
"
PKG_CHECK_MODULES(CONTACTS, [$pkg_modules])

View file

@ -0,0 +1,60 @@
{ fetchurl, stdenv, pkgconfig, gnome3, ibus, intltool, upower, makeWrapper
, libcanberra, accountsservice, libpwquality, pulseaudio, fontconfig
, gdk_pixbuf, hicolor_icon_theme, librsvg, libxkbfile, libnotify
, libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk
, cracklib, python, krb5, networkmanagerapplet, networkmanager
, libwacom, samba, shared_mime_info, tzdata, icu, libtool, udev
, docbook_xsl, docbook_xsl_ns, modemmanager, clutter, clutter_gtk }:
# http://ftp.gnome.org/pub/GNOME/teams/releng/3.10.2/gnome-suites-core-3.10.2.modules
# TODO: bluetooth, wacom, printers
stdenv.mkDerivation rec {
name = "gnome-control-center-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-control-center/${gnome3.version}/${name}.tar.xz";
sha256 = "07vvmnqjjcc0cblpr6cdmg3693hihpjrq3q30mm3q68pdyfzbjgf";
};
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard gnome3.libgnomekbd ];
enableParallelBuilding = true;
buildInputs = with gnome3;
[ pkgconfig intltool ibus gtk glib upower libcanberra gsettings_desktop_schemas
libxml2 gnome_desktop gnome_settings_daemon polkit libxslt libgtop gnome-menus
gnome_online_accounts libsoup colord pulseaudio fontconfig colord-gtk libpwquality
accountsservice krb5 networkmanagerapplet libwacom samba libnotify libxkbfile
shared_mime_info icu libtool docbook_xsl docbook_xsl_ns gnome3.grilo
gdk_pixbuf gnome3.adwaita-icon-theme librsvg clutter clutter_gtk
hicolor_icon_theme gnome3.adwaita-icon-theme gnome3.vino udev
networkmanager modemmanager makeWrapper gnome3.gnome-bluetooth ];
preBuild = ''
substituteInPlace tz.h --replace "/usr/share/zoneinfo/zone.tab" "${tzdata}/share/zoneinfo/zone.tab"
substituteInPlace panels/datetime/tz.h --replace "/usr/share/zoneinfo/zone.tab" "${tzdata}/share/zoneinfo/zone.tab"
# hack to make test-endianess happy
mkdir -p $out/share/locale
substituteInPlace panels/datetime/test-endianess.c --replace "/usr/share/locale/" "$out/share/locale/"
'';
patches = [ ./vpn_plugins_path.patch ];
preFixup = with gnome3; ''
wrapProgram $out/bin/gnome-control-center \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$out/share/gnome-control-center:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
for i in $out/share/applications/*; do
substituteInPlace $i --replace "gnome-control-center" "$out/bin/gnome-control-center"
done
'';
meta = with stdenv.lib; {
description = "Single sign-on framework for GNOME";
maintainers = with maintainers; [ lethalman ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,19 @@
diff --git a/panels/network/connection-editor/vpn-helpers.c b/panels/network/connection-editor/vpn-helpers.c
index 7dc23c2..fcb1384 100644
--- a/panels/network/connection-editor/vpn-helpers.c
+++ b/panels/network/connection-editor/vpn-helpers.c
@@ -95,14 +95,6 @@ vpn_get_plugins (GError **error)
if (!so_path)
goto next;
- /* Remove any path and extension components, then reconstruct path
- * to the SO in LIBDIR
- */
- so_name = g_path_get_basename (so_path);
- g_free (so_path);
- so_path = g_build_filename (NM_VPN_MODULE_DIR, so_name, NULL);
- g_free (so_name);
-
module = g_module_open (so_path, G_MODULE_BIND_LAZY | G_MODULE_BIND_LOCAL);
if (!module) {
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, "Cannot load the VPN plugin which provides the "

View file

@ -0,0 +1,30 @@
{ stdenv, fetchurl, pkgconfig, python, libxml2Python, libxslt, which, libX11, gnome3, gtk3, glib
, intltool, gnome_doc_utils, libxkbfile, xkeyboard_config, isocodes, itstool, wayland
, gobjectIntrospection }:
stdenv.mkDerivation rec {
majorVersion = gnome3.version;
minorVersion = "1";
name = "gnome-desktop-${majorVersion}.${minorVersion}";
# this should probably be setuphook for glib
NIX_CFLAGS_COMPILE = "-I${glib}/include/gio-unix-2.0";
enableParallelBuilding = true;
src = fetchurl {
url = "mirror://gnome/sources/gnome-desktop/${majorVersion}/${name}.tar.xz";
sha256 = "0v7md6csbnv55j4kns2q0zjl4040zwf3ld6lc3qvik40fkzzbrjb";
};
buildInputs = [ pkgconfig python libxml2Python libxslt which libX11
xkeyboard_config isocodes itstool wayland
gtk3 glib intltool gnome_doc_utils libxkbfile
gnome3.gsettings_desktop_schemas gobjectIntrospection ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,38 @@
{ stdenv, intltool, fetchurl
, pkgconfig, gtk3, glib, hicolor_icon_theme
, bash, makeWrapper, itstool, libxml2
, gnome3, librsvg, gdk_pixbuf, file }:
stdenv.mkDerivation rec {
name = "gnome-dictionary-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-dictionary/${gnome3.version}/${name}.tar.xz";
sha256 = "17ha4pmnh9v98hxqy4pr3ri9wsck9njfjwd8qa0gycksmbyd1cag";
};
doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
propagatedBuildInputs = [ gdk_pixbuf gnome3.adwaita-icon-theme librsvg
hicolor_icon_theme gnome3.adwaita-icon-theme ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 file
gnome3.gsettings_desktop_schemas makeWrapper ];
preFixup = ''
wrapProgram "$out/bin/gnome-dictionary" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Dictionary;
description = "Dictionary is the GNOME application to look up definitions";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,41 @@
{ stdenv, intltool, fetchurl, pkgconfig, udisks2, libsecret, libdvdread
, bash, gtk3, glib, hicolor_icon_theme, makeWrapper, cracklib, libnotify
, itstool, gnome3, librsvg, gdk_pixbuf, libxml2, python
, libcanberra_gtk3, libxslt, libtool, docbook_xsl, libpwquality }:
stdenv.mkDerivation rec {
name = "gnome-disk-utility-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-disk-utility/${gnome3.version}/${name}.tar.xz";
sha256 = "14h92bznizq0k4qz7hn41axhhfjyw2ncnmbkf8kldi9x909fvpml";
};
doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ bash pkgconfig gtk3 glib intltool itstool
libxslt libtool libsecret libpwquality cracklib
libnotify libdvdread libcanberra_gtk3 docbook_xsl
gdk_pixbuf gnome3.adwaita-icon-theme
librsvg udisks2 gnome3.gnome_settings_daemon
hicolor_icon_theme gnome3.adwaita-icon-theme
gnome3.gsettings_desktop_schemas makeWrapper libxml2 ];
preFixup = ''
wrapProgram "$out/bin/gnome-disks" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = http://en.wikipedia.org/wiki/GNOME_Disks;
description = "A udisks graphical front-end";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,37 @@
{ stdenv, intltool, fetchurl
, pkgconfig, gtk3, glib, hicolor_icon_theme
, bash, makeWrapper, itstool
, gnome3, librsvg, gdk_pixbuf }:
stdenv.mkDerivation rec {
name = "gnome-font-viewer-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-font-viewer/${gnome3.version}/${name}.tar.xz";
sha256 = "0dnkpg1d71dbzazi5chg3vj8bbia2w6k0ji4vh2f4s0b9rvybgzc";
};
doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool gnome3.gnome_desktop
gdk_pixbuf gnome3.adwaita-icon-theme librsvg
hicolor_icon_theme gnome3.adwaita-icon-theme
gnome3.gsettings_desktop_schemas makeWrapper ];
preFixup = ''
wrapProgram "$out/bin/gnome-font-viewer" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
description = "Program that can preview fonts and create thumbnails for fonts";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,41 @@
{ stdenv, fetchurl, pkgconfig, dbus, libgcrypt, libtasn1, pam, python, glib, libxslt
, intltool, pango, gcr, gdk_pixbuf, atk, p11_kit, makeWrapper
, docbook_xsl_ns, docbook_xsl, gnome3 }:
let
majVer = gnome3.version;
in stdenv.mkDerivation rec {
name = "gnome-keyring-${majVer}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-keyring/${majVer}/${name}.tar.xz";
sha256 = "1xg1xha3x3hzlmvdq2zm90hc61pj7pnf9yxxvgq4ynl5af6bp8qm";
};
buildInputs = with gnome3; [
dbus libgcrypt pam python gtk3 gconf libgnome_keyring
pango gcr gdk_pixbuf atk p11_kit makeWrapper
];
propagatedBuildInputs = [ glib libtasn1 libxslt ];
nativeBuildInputs = [ pkgconfig intltool docbook_xsl_ns docbook_xsl ];
configureFlags = [
"--with-ca-certificates=/etc/ssl/certs/ca-bundle.crt" # NixOS hardcoded path
"--with-pkcs11-config=$$out/etc/pkcs11/" # installation directories
"--with-pkcs11-modules=$$out/lib/pkcs11/"
];
preFixup = ''
wrapProgram "$out/bin/gnome-keyring" \
--prefix XDG_DATA_DIRS : "${glib}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
wrapProgram "$out/bin/gnome-keyring-daemon" \
--prefix XDG_DATA_DIRS : "${glib}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,24 @@
{ stdenv, fetchurl, intltool, pkgconfig, glib, gobjectIntrospection }:
stdenv.mkDerivation rec {
name = "gnome-menus-${version}";
version = "3.10.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-menus/3.10/${name}.tar.xz";
sha256 = "0wcacs1vk3pld8wvrwq7fdrm11i56nrajkrp6j1da6jc4yx0m5a6";
};
makeFlags = "INTROSPECTION_GIRDIR=$(out)/share/gir-1.0/ INTROSPECTION_TYPELIBDIR=$(out)/lib/girepository-1.0";
preBuild = "patchShebangs ./scripts";
buildInputs = [ intltool pkgconfig glib gobjectIntrospection ];
meta = {
homepage = "http://www.gnome.org";
description = "Gnome menu specification";
platforms = stdenv.lib.platforms.linux;
};
}

View file

@ -0,0 +1,38 @@
{ stdenv, fetchurl, pkgconfig, glib, libxslt, gtk, makeWrapper
, webkitgtk, json_glib, rest, libsecret, dbus_glib, gnome_common
, telepathy_glib, intltool, dbus_libs, icu, autoreconfHook
, libsoup, docbook_xsl_ns, docbook_xsl, gnome3
}:
stdenv.mkDerivation rec {
name = "gnome-online-accounts-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-online-accounts/${gnome3.version}/${name}.tar.xz";
sha256 = "1mpzj6fc42hhx77lki8cdycgfj9gjrm611rh0wsaqam4qq2c9a9c";
};
NIX_CFLAGS_COMPILE = "-I${dbus_glib}/include/dbus-1.0 -I${dbus_libs}/include/dbus-1.0";
enableParallelBuilding = true;
preAutoreconf = ''
sed '/disable-settings/d' -i configure.ac
sed "/if HAVE_INTROSPECTION/a INTROSPECTION_COMPILER_ARGS = --shared-library=$out/lib/libgoa-1.0.so" -i src/goa/Makefile.am
'';
buildInputs = [ pkgconfig glib libxslt gtk webkitgtk json_glib rest gnome_common makeWrapper
libsecret dbus_glib telepathy_glib intltool icu libsoup autoreconfHook
docbook_xsl_ns docbook_xsl ];
preFixup = ''
for f in "$out/libexec/"*; do
wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
done
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,37 @@
{ stdenv, fetchurl, pkgconfig, glib, gnome3, libxml2
, libsoup, json_glib, gmp, openssl, makeWrapper }:
let
majVer = "3.14";
in stdenv.mkDerivation rec {
name = "gnome-online-miners-${majVer}.2";
src = fetchurl {
url = "mirror://gnome/sources/gnome-online-miners/${majVer}/${name}.tar.xz";
sha256 = "0bbak8srcrvnw18s4ls5mqaamx9nqdi93lij6yjs0a3q320k22xl";
};
doCheck = true;
buildInputs = [ pkgconfig glib gnome3.libgdata libxml2 libsoup gmp openssl
gnome3.grilo gnome3.libzapojit gnome3.grilo-plugins
gnome3.gnome_online_accounts makeWrapper gnome3.libmediaart
gnome3.tracker gnome3.gfbgraph json_glib gnome3.rest ];
enableParallelBuilding = true;
preFixup = ''
for f in $out/libexec/*; do
wrapProgram "$f" \
--prefix GRL_PLUGIN_PATH : "${gnome3.grilo-plugins}/lib/grilo-0.2"
done
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/GnomeOnlineMiners;
description = "A set of crawlers that go through your online content and index them locally in Tracker";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,37 @@
{ stdenv, intltool, fetchurl, pkgconfig, libcanberra_gtk3
, bash, gtk3, glib, hicolor_icon_theme, makeWrapper
, itstool, gnome3, librsvg, gdk_pixbuf }:
stdenv.mkDerivation rec {
name = "gnome-screenshot-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-screenshot/${gnome3.version}/${name}.tar.xz";
sha256 = "0hjbay906xk31rbjmm1ihrhnysh9hf4xgxlkvxj2jlnypx4hvdrv";
};
doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
propagatedBuildInputs = [ gdk_pixbuf gnome3.adwaita-icon-theme librsvg
hicolor_icon_theme gnome3.adwaita-icon-theme ];
buildInputs = [ bash pkgconfig gtk3 glib intltool itstool libcanberra_gtk3
gnome3.gsettings_desktop_schemas makeWrapper ];
preFixup = ''
wrapProgram "$out/bin/gnome-screenshot" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = http://en.wikipedia.org/wiki/GNOME_Screenshot;
description = "Utility used in the GNOME desktop environment for taking screenshots";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,31 @@
{ fetchurl, stdenv, pkgconfig, gnome3, glib, dbus_glib, json_glib, upower
, libxslt, intltool, makeWrapper, systemd, xorg }:
stdenv.mkDerivation rec {
name = "gnome-session-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-session/${gnome3.version}/${name}.tar.xz";
sha256 = "17d9zryq13ajmai6fqynpfgghms52sj9h756f086i7fxbr2nsm4v";
};
configureFlags = "--enable-systemd";
buildInputs = with gnome3;
[ pkgconfig glib gnome_desktop gtk dbus_glib json_glib libxslt
gnome3.gnome_settings_daemon xorg.xtrans
gsettings_desktop_schemas upower intltool gconf makeWrapper systemd ];
preFixup = ''
wrapProgram "$out/bin/gnome-session" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,36 @@
{ fetchurl, stdenv, pkgconfig, gnome3, intltool, glib, libnotify, lcms2, libXtst
, libxkbfile, pulseaudio, libcanberra_gtk3, upower, colord, libgweather, polkit
, geoclue2, librsvg, xf86_input_wacom, udev, libwacom, libxslt, libtool, networkmanager
, docbook_xsl, docbook_xsl_ns, makeWrapper, ibus, xkeyboard_config }:
stdenv.mkDerivation rec {
name = "gnome-settings-daemon-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-settings-daemon/${gnome3.version}/${name}.tar.xz";
sha256 = "1l61h497v57g3iqfmyzjh15z4c4akky3xziymphswzigb1ssv3da";
};
# fatal error: gio/gunixfdlist.h: No such file or directory
NIX_CFLAGS_COMPILE = "-I${glib}/include/gio-unix-2.0";
buildInputs = with gnome3;
[ intltool pkgconfig ibus gtk glib gsettings_desktop_schemas networkmanager
libnotify gnome_desktop lcms2 libXtst libxkbfile pulseaudio
libcanberra_gtk3 upower colord libgweather xkeyboard_config
polkit geocode_glib geoclue2 librsvg xf86_input_wacom udev libwacom libxslt
libtool docbook_xsl docbook_xsl_ns makeWrapper gnome_themes_standard ];
preFixup = ''
wrapProgram "$out/libexec/gnome-settings-daemon-localeexec" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix PATH : "${glib}/bin" \
--prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,26 @@
{ stdenv, intltool, fetchurl, libgtop
, pkgconfig, gtk3, glib, hicolor_icon_theme
, bash, makeWrapper, itstool
, gnome3, file }:
stdenv.mkDerivation rec {
name = "gnome-shell-extensions-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell-extensions/${gnome3.version}/${name}.tar.xz";
sha256 = "0hd7jskwhrki0s9lmx6vc6rw9y689zp2h7zhlxk90hghy4nkvkc8";
};
doCheck = true;
buildInputs = [ pkgconfig gtk3 glib libgtop intltool itstool
makeWrapper file ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/GnomeShell/Extensions;
description = "Modify and extend GNOME Shell functionality and behavior";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,61 @@
{ fetchurl, stdenv, pkgconfig, gnome3, json_glib, libcroco, intltool, libsecret
, python3, libsoup, polkit, clutter, networkmanager, docbook_xsl, docbook_xsl_ns, at_spi2_core
, libstartup_notification, telepathy_glib, telepathy_logger, libXtst, p11_kit, unzip
, hicolor_icon_theme, sqlite, libgweather
, pulseaudio, libical, libtool, nss, gobjectIntrospection, gstreamer, makeWrapper
, accountsservice, gdk_pixbuf, gdm, upower, ibus, networkmanagerapplet, librsvg }:
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild?revision=1.3&view=markup
stdenv.mkDerivation rec {
name = "gnome-shell-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell/${gnome3.version}/${name}.tar.xz";
sha256 = "00gjdfaznpnspb4jmjc19axiz6snd9drvqmzpq4sw0xh1ysgpncv";
};
# Needed to find /etc/NetworkManager/VPN
configureFlags = [ "--sysconfdir=/etc" ];
buildInputs = with gnome3;
[ gsettings_desktop_schemas gnome_keyring gnome-menus glib gcr json_glib accountsservice
libcroco intltool libsecret pkgconfig python3 libsoup polkit libcanberra gdk_pixbuf librsvg
clutter networkmanager libstartup_notification telepathy_glib docbook_xsl docbook_xsl_ns
libXtst p11_kit networkmanagerapplet gjs mutter pulseaudio caribou evolution_data_server
libical libtool nss gobjectIntrospection gtk gstreamer makeWrapper gdm gnome_control_center
hicolor_icon_theme adwaita-icon-theme sqlite gnome3.gnome-bluetooth
libgweather # not declared at build time, but typelib is needed at runtime
gnome3.gnome-clocks # schemas needed
at_spi2_core upower ibus gnome_session gnome_desktop telepathy_logger gnome3.gnome_settings_daemon ];
installFlags = [ "keysdir=$(out)/share/gnome-control-center/keybindings" ];
preBuild = ''
patchShebangs src/data-to-c.pl
substituteInPlace data/Makefile --replace " install-keysDATA" ""
'';
preFixup = with gnome3; ''
wrapProgram "$out/bin/gnome-shell" \
--prefix PATH : "${unzip}/bin" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
wrapProgram "$out/libexec/gnome-shell-calendar-server" \
--prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
echo "${unzip}/bin" > $out/${passthru.mozillaPlugin}/extra-bin-path
'';
passthru = {
mozillaPlugin = "/lib/mozilla/plugins";
};
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,37 @@
{ stdenv, intltool, fetchurl, pkgconfig
, bash, gtk3, glib, hicolor_icon_theme, makeWrapper
, itstool, gnome3, librsvg, gdk_pixbuf, libxml2 }:
stdenv.mkDerivation rec {
name = "gnome-system-log-3.9.90";
src = fetchurl {
url = "mirror://gnome/sources/gnome-system-log/3.9/${name}.tar.xz";
sha256 = "9eeb51982d347aa7b33703031e2c1d8084201374665425cd62199649b29a5411";
};
doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
propagatedBuildInputs = [ gdk_pixbuf gnome3.adwaita-icon-theme librsvg
hicolor_icon_theme gnome3.adwaita-icon-theme ];
buildInputs = [ bash pkgconfig gtk3 glib intltool itstool
gnome3.gsettings_desktop_schemas makeWrapper libxml2 ];
preFixup = ''
wrapProgram "$out/bin/gnome-system-log" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://help.gnome.org/users/gnome-system-log/3.9/;
description = "Graphical, menu-driven viewer that you can use to view and monitor your system logs";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,38 @@
{ stdenv, intltool, fetchurl, pkgconfig, gtkmm3, libxml2
, bash, gtk3, glib, hicolor_icon_theme, makeWrapper
, itstool, gnome3, librsvg, gdk_pixbuf, libgtop }:
stdenv.mkDerivation rec {
name = "gnome-system-monitor-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-system-monitor/${gnome3.version}/${name}.tar.xz";
sha256 = "14akcz4dwjnfx47gncyavjr82zc78a912v5gdp6h3z19bn5nx4q0";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ bash pkgconfig gtk3 glib intltool itstool libxml2
gtkmm3 libgtop makeWrapper
gdk_pixbuf gnome3.adwaita-icon-theme librsvg
hicolor_icon_theme gnome3.adwaita-icon-theme
gnome3.gsettings_desktop_schemas ];
preFixup = ''
wrapProgram "$out/bin/gnome-system-monitor" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = https://help.gnome.org/users/gnome-system-monitor/3.12/;
description = "System Monitor shows you what programs are running and how much processor time, memory, and disk space are being used";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,35 @@
{ stdenv, fetchurl, pkgconfig, cairo, libxml2, gnome3, pango
, gnome_doc_utils, intltool, libX11, which, libuuid, vala
, desktop_file_utils, itstool, makeWrapper, appdata-tools }:
stdenv.mkDerivation rec {
versionMajor = gnome3.version;
versionMinor = "1";
name = "gnome-terminal-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-terminal/${versionMajor}/${name}.tar.xz";
sha256 = "0nxlsz9hwajqfrblvqzc09599dra3van2znmcknnhjcfv3slvkkx";
};
buildInputs = [ gnome3.gtk gnome3.gsettings_desktop_schemas gnome3.vte appdata-tools
gnome3.dconf itstool makeWrapper gnome3.nautilus vala ];
nativeBuildInputs = [ pkgconfig intltool gnome_doc_utils which libuuid libxml2 desktop_file_utils ];
# FIXME: enable for gnome3
configureFlags = [ "--disable-search-provider" "--disable-migration" ];
preFixup = ''
for f in "$out/libexec/gnome-terminal-server"; do
wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH"
done
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,16 @@
{ stdenv, fetchurl, intltool, gtk3, gnome3, librsvg, pkgconfig, pango, atk, gtk2, gdk_pixbuf }:
stdenv.mkDerivation rec {
name = "gnome-themes-standard-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-themes-standard/${gnome3.version}/${name}.tar.xz";
sha256 = "0kyrbfrgl6g6wm6zpllldz36fclvl8vwmn1snwk18kf7f6ncpsac";
};
buildInputs = [ intltool gtk3 librsvg pkgconfig pango atk gtk2 gdk_pixbuf ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,20 @@
{ stdenv, fetchurl, pkgconfig, file, gnome3, itstool, libxml2, intltool }:
stdenv.mkDerivation rec {
name = "gnome-user-docs-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-user-docs/${gnome3.version}/${name}.tar.xz";
sha256 = "0cck9hnp9az6qan97cv2d5lxlnzfss38h73g1a6dbspl4bnghy4n";
};
buildInputs = [ pkgconfig gnome3.yelp itstool libxml2 intltool ];
meta = with stdenv.lib; {
homepage = "https://help.gnome.org/users/gnome-help/${gnome3.version}";
description = "User and system administration help for the GNOME desktop";
maintainers = with maintainers; [ lethalman ];
license = licenses.cc-by-30;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,53 @@
{ stdenv, intltool, fetchurl, apacheHttpd_2_2, nautilus
, pkgconfig, gtk3, glib, hicolor_icon_theme, libxml2, gnused
, bash, makeWrapper, itstool, libnotify, libtool, mod_dnssd
, gnome3, librsvg, gdk_pixbuf, file, libcanberra_gtk3 }:
let
majVer = "3.14";
in stdenv.mkDerivation rec {
name = "gnome-user-share-${majVer}.2";
src = fetchurl {
url = "mirror://gnome/sources/gnome-user-share/${majVer}/${name}.tar.xz";
sha256 = "1s9fjzr161hy53i9ibk6aamc9af0cg8s151zj2fb6fxg67pv61bb";
};
doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
preConfigure = ''
sed -e 's,^LoadModule dnssd_module.\+,LoadModule dnssd_module ${mod_dnssd}/modules/mod_dnssd.so,' -i data/dav_user_2.2.conf
'';
configureFlags = [ "--with-httpd=${apacheHttpd_2_2}/bin/httpd"
"--with-modules-path=${apacheHttpd_2_2}/modules"
"--disable-bluetooth"
"--with-nautilusdir=$(out)/lib/nautilus/extensions-3.0" ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 libtool
makeWrapper file gdk_pixbuf gnome3.adwaita-icon-theme librsvg
hicolor_icon_theme gnome3.adwaita-icon-theme
nautilus libnotify libcanberra_gtk3 ];
postInstall = ''
mkdir -p $out/share/gsettings-schemas/$name
mv $out/share/glib-2.0 $out/share/gsettings-schemas/$name
${glib}/bin/glib-compile-schemas $out/share/gsettings-schemas/$name/glib-2.0/schemas
'';
preFixup = ''
wrapProgram "$out/libexec/gnome-user-share" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://help.gnome.org/users/gnome-user-share/3.8;
description = "Service that exports the contents of the Public folder in your home directory on the local network";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,27 @@
{ stdenv, fetchurl, pkgconfig, file, intltool, glib, sqlite
, gnome3, libxml2, gupnp, gssdp, lua5, liboauth, gupnp_av
, gmime, json_glib, avahi, tracker, itstool }:
stdenv.mkDerivation rec {
name = "grilo-plugins-0.2.13";
src = fetchurl {
url = "mirror://gnome/sources/grilo-plugins/0.2/${name}.tar.xz";
sha256 = "008jwm5ydl0k25p3d2fkcail40fj9y3qknihxb5fg941p8qlhm55";
};
installFlags = [ "GRL_PLUGINS_DIR=$(out)/lib/grilo-0.2" ];
buildInputs = [ pkgconfig gnome3.grilo libxml2 gupnp gssdp gnome3.libgdata
lua5 liboauth gupnp_av sqlite gnome3.gnome_online_accounts
gnome3.totem-pl-parser gnome3.rest gmime json_glib
avahi gnome3.libmediaart tracker intltool itstool ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/action/show/Projects/Grilo;
description = "A collection of plugins for the Grilo framework";
maintainers = with maintainers; [ lethalman ];
license = licenses.lgpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,31 @@
{ stdenv, fetchurl, pkgconfig, file, intltool, glib
, libxml2, gnome3, gobjectIntrospection, libsoup }:
stdenv.mkDerivation rec {
name = "grilo-0.2.12";
src = fetchurl {
url = "mirror://gnome/sources/grilo/0.2/${name}.tar.xz";
sha256 = "11bvc7rsrjjwz8hp67p3fn8zmywrpawrcbi3vgw8b0dwa0sndd2m";
};
configureFlags = [ "--enable-grl-pls" "--enable-grl-net" ];
preConfigure = ''
for f in src/Makefile.in libs/pls/Makefile.in libs/net/Makefile.in; do
substituteInPlace $f --replace @INTROSPECTION_GIRDIR@ "$out/share/gir-1.0/"
substituteInPlace $f --replace @INTROSPECTION_TYPELIBDIR@ "$out/lib/girepository-1.0"
done
'';
buildInputs = [ pkgconfig file intltool glib libxml2 libsoup
gnome3.totem-pl-parser gobjectIntrospection ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/action/show/Projects/Grilo;
description = "Framework that provides access to various sources of multimedia content, using a pluggable system";
maintainers = with maintainers; [ lethalman ];
license = licenses.lgpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,25 @@
{ stdenv, fetchurl, pkgconfig, intltool, glib, gobjectIntrospection
# just for passthru
, gnome3, gtk3, gsettings_desktop_schemas }:
stdenv.mkDerivation rec {
versionMajor = gnome3.version;
versionMinor = "1";
moduleName = "gsettings-desktop-schemas";
name = "${moduleName}-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
sha256 = "0q9l9fr90pcb3s6crbxkj3wiwn7wp9zfpv7bdxkadj0hspd9zzkl";
};
buildInputs = [ glib gobjectIntrospection ];
nativeBuildInputs = [ pkgconfig intltool ];
meta = with stdenv.lib; {
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,22 @@
{ stdenv, fetchurl, pkgconfig, glib, libcanberra, gobjectIntrospection, libtool }:
let
majVer = "1.0";
in stdenv.mkDerivation rec {
name = "gsound-${majVer}.1";
src = fetchurl {
url = "mirror://gnome/sources/gsound/${majVer}/${name}.tar.xz";
sha256 = "ea0dd94429c0645f2f98824274ef04543fe459dd83a5449a68910acc3ba67f29";
};
buildInputs = [ pkgconfig glib libcanberra gobjectIntrospection libtool ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/GSound;
description = "Small library for playing system sounds";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,27 @@
{ stdenv, fetchurl, pkgconfig, atk, cairo, glib, gtk3, pango
, libxml2Python, perl, intltool, gettext, gnome3 }:
stdenv.mkDerivation rec {
name = "gtksourceview-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gtksourceview/${gnome3.version}/${name}.tar.xz";
sha256 = "030v7x1dmx5blqi9jcknsjd91jppbpl7f4z69k8c8kklr939i7k6";
};
propagatedBuildInputs = [ gtk3 ];
buildInputs = [ pkgconfig atk cairo glib pango
libxml2Python perl intltool gettext ];
preBuild = ''
substituteInPlace gtksourceview/gtksourceview-utils.c --replace "@NIX_SHARE_PATH@" "$out/share"
'';
patches = [ ./nix_share_path.patch ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,11 @@
--- a/gtksourceview/gtksourceview-utils.c 2014-07-13 16:13:57.418687726 +0200
+++ b/gtksourceview/gtksourceview-utils.c 2014-07-13 16:14:20.550847767 +0200
@@ -68,6 +68,8 @@
basename,
NULL));
+ g_ptr_array_add (dirs, g_build_filename ("@NIX_SHARE_PATH@", SOURCEVIEW_DIR, basename, NULL));
+
g_ptr_array_add (dirs, NULL);
return (gchar**) g_ptr_array_free (dirs, FALSE);

View file

@ -0,0 +1,38 @@
{ stdenv, intltool, fetchurl, pkgconfig, gtk3
, glib, desktop_file_utils, bash, appdata-tools
, makeWrapper, gnome3, file, itstool, libxml2 }:
# TODO: icons and theme still does not work
# use packaged gnome3.adwaita-icon-theme
stdenv.mkDerivation rec {
name = "gucharmap-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/gucharmap/${gnome3.version}/${name}.tar.xz";
sha256 = "1l26prbi5dmzxs62fz3vrhsif9jwqw4065qxp8hnc8bv34h59phw";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
preConfigure = "substituteInPlace ./configure --replace /usr/bin/file ${file}/bin/file";
buildInputs = [ pkgconfig gtk3 intltool itstool glib appdata-tools
gnome3.yelp_tools libxml2 file desktop_file_utils
gnome3.gsettings_desktop_schemas makeWrapper ];
preFixup = ''
wrapProgram "$out/bin/gucharmap" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Gucharmap;
description = "GNOME Character Map, based on the Unicode Character Database";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl3;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,18 @@
{ stdenv, fetchurl, pkgconfig, libxml2, glib }:
stdenv.mkDerivation rec {
name = "libcroco-0.6.8";
src = fetchurl {
url = "mirror://gnome/sources/libcroco/0.6/${name}.tar.xz";
sha256 = "0w453f3nnkbkrly7spx5lx5pf6mwynzmd5qhszprq8amij2invpa";
};
configureFlags = stdenv.lib.optional stdenv.isDarwin "--disable-Bsymbolic";
buildInputs = [ pkgconfig libxml2 glib ];
meta = with stdenv.lib; {
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,33 @@
{ stdenv, fetchurl, pkgconfig, intltool, libxml2, glib, json_glib
, gobjectIntrospection, liboauth, gnome3, p11_kit, openssl }:
let
majorVersion = "0.16";
in
stdenv.mkDerivation rec {
name = "libgdata-${majorVersion}.1";
src = fetchurl {
url = "mirror://gnome/sources/libgdata/${majorVersion}/${name}.tar.xz";
sha256 = "8740e071ecb2ae0d2a4b9f180d2ae5fdf9dc4c41e7ff9dc7e057f62442800827";
};
# TODO: need libuhttpmock
configureFlags = "--disable-tests";
NIX_CFLAGS_COMPILE = "-I${gnome3.libsoup}/include/libsoup-gnome-2.4/ -I${gnome3.gcr}/include/gcr-3 -I${gnome3.gcr}/include/gck-1";
buildInputs = with gnome3;
[ pkgconfig libsoup intltool libxml2 glib gobjectIntrospection
liboauth gcr gnome_online_accounts p11_kit openssl ];
propagatedBuildInputs = [ json_glib ];
meta = with stdenv.lib; {
description = "GData API library";
maintainers = with maintainers; [ raskin lethalman ];
platforms = platforms.linux;
license = licenses.lgpl21Plus;
};
}

View file

@ -0,0 +1,26 @@
{ stdenv, fetchurl, autoconf, vala, pkgconfig, glib, gobjectIntrospection }:
let
ver_maj = "0.16";
ver_min = "1";
in
stdenv.mkDerivation rec {
name = "libgee-${ver_maj}.${ver_min}";
src = fetchurl {
url = "mirror://gnome/sources/libgee/${ver_maj}/${name}.tar.xz";
sha256 = "d95f8ea8e78f843c71b1958fa2fb445e4a325e4821ec23d0d5108d8170e564a5";
};
doCheck = true;
patches = [ ./fix_introspection_paths.patch ];
buildInputs = [ autoconf vala pkgconfig glib gobjectIntrospection ];
meta = with stdenv.lib; {
description = "Utility library providing GObject-based interfaces and classes for commonly used data structures";
license = licenses.lgpl21Plus;
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,13 @@
--- fix_introspection_paths.patch/configure 2014-01-07 17:43:53.521339338 +0000
+++ fix_introspection_paths.patch/configure-fix 2014-01-07 17:45:11.068635069 +0000
@@ -12085,8 +12085,8 @@
INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
- INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
- INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
+ INTROSPECTION_GIRDIR="${datadir}/gir-1.0"
+ INTROSPECTION_TYPELIBDIR="${libdir}/girepository-1.0"
INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection

View file

@ -0,0 +1,26 @@
{ stdenv, fetchurl, glib, dbus_libs, libgcrypt, pkgconfig, intltool, gobjectIntrospection }:
stdenv.mkDerivation rec {
name = "libgnome-keyring-3.12.0";
src = fetchurl {
url = "mirror://gnome/sources/libgnome-keyring/3.12/${name}.tar.xz";
sha256 = "c4c178fbb05f72acc484d22ddb0568f7532c409b0a13e06513ff54b91e947783";
};
propagatedBuildInputs = [ glib gobjectIntrospection dbus_libs libgcrypt ];
nativeBuildInputs = [ pkgconfig intltool ];
meta = {
description = "Framework for managing passwords and other secrets";
homepage = http://live.gnome.org/GnomeKeyring;
license = with stdenv.lib.licenses; [ gpl2Plus lgpl2Plus ];
inherit (glib.meta) platforms maintainers;
longDescription = ''
gnome-keyring is a program that keeps password and other secrets for
users. The library libgnome-keyring is used by applications to integrate
with the gnome-keyring system.
'';
};
}

View file

@ -0,0 +1,24 @@
{ stdenv, fetchurl, pkgconfig, file, intltool, glib, gtk3, libxklavier, makeWrapper }:
stdenv.mkDerivation rec {
name = "libgnomekbd-3.6.0";
src = fetchurl {
url = "mirror://gnome/sources/libgnomekbd/3.6/${name}.tar.xz";
sha256 = "c41ea5b0f64da470925ba09f9f1b46b26b82d4e433e594b2c71eab3da8856a09";
};
buildInputs = [ pkgconfig file intltool glib gtk3 libxklavier makeWrapper ];
preFixup = ''
wrapProgram $out/bin/gkbd-keyboard-display \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
description = "Keyboard management library";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,22 @@
{ stdenv, fetchurl, pkgconfig, libxml2, gtk, intltool, libsoup, gconf
, pango, gdk_pixbuf, atk, tzdata, gnome3 }:
stdenv.mkDerivation rec {
name = "libgweather-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/libgweather/${gnome3.version}/${name}.tar.xz";
sha256 = "1zadscn3i86fy7xpqiyw14pvz4f5cdw50ir77wd0zfr72hk5a2fv";
};
makeFlags = "INTROSPECTION_GIRDIR=$(out)/share/gir-1.0/ INTROSPECTION_TYPELIBDIR=$(out)/lib/girepository-1.0";
configureFlags = [ "--with-zoneinfo-dir=${tzdata}/share/zoneinfo" ];
propagatedBuildInputs = [ libxml2 gtk libsoup gconf pango gdk_pixbuf atk gnome3.geocode_glib ];
nativeBuildInputs = [ pkgconfig intltool ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,20 @@
{ stdenv, fetchurl, pkgconfig, glib, cairo, libarchive, freetype, libjpeg, libtiff
, openssl, bzip2, acl, attr
}:
stdenv.mkDerivation rec {
name = "libgxps-0.2.2";
src = fetchurl {
url = "http://ftp.acc.umu.se/pub/GNOME/core/3.10/3.10.2/sources/${name}.tar.xz";
sha256 = "1gi0b0x0354jyqc48vspk2hg2q1403cf2p9ibj847nzhkdrh9l9r";
};
buildInputs = [ pkgconfig glib cairo libarchive freetype libjpeg libtiff acl openssl bzip2 attr];
configureFlags = "--without-liblcms2";
meta = with stdenv.lib; {
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,32 @@
{ stdenv, fetchurl, pkgconfig, intltool
, glib, gtk3, gobjectIntrospection, python, pygobject3
}:
let
majorVersion = "1.12";
in
stdenv.mkDerivation rec {
name = "libpeas-${version}";
version = "${majorVersion}.1";
buildInputs = [
intltool pkgconfig
glib gtk3 gobjectIntrospection python pygobject3
];
src = fetchurl {
url = "mirror://gnome/sources/libpeas/${majorVersion}/${name}.tar.xz";
sha256 = "e610be31c9d382580fb5d8686f8311149f27413f55af6abf5c033178b99452d6";
};
preFixup = ''
'';
meta = with stdenv.lib; {
description = "A GObject-based plugins engine";
homepage = "http://ftp.acc.umu.se/pub/GNOME/sources/libpeas/";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,16 @@
{ stdenv, fetchurl, pkgconfig, glib, intltool, json_glib, rest, libsoup, gtk, gnome_online_accounts }:
stdenv.mkDerivation rec {
name = "libzapojit-0.0.3";
src = fetchurl {
url = "mirror://gnome/sources/libzapojit/0.0/${name}.tar.xz";
sha256 = "0zn3s7ryjc3k1abj4k55dr2na844l451nrg9s6cvnnhh569zj99x";
};
buildInputs = [ pkgconfig glib intltool json_glib rest libsoup gtk gnome_online_accounts ];
meta = with stdenv.lib; {
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,35 @@
{ fetchurl, stdenv, pkgconfig, gnome3, intltool, gobjectIntrospection, upower, cairo
, pango, cogl, clutter, libstartup_notification, libcanberra, zenity, libcanberra_gtk3
, libtool, makeWrapper, xkeyboard_config, libxkbfile, libxkbcommon }:
stdenv.mkDerivation rec {
name = "mutter-${gnome3.version}.1.1";
src = fetchurl {
url = "mirror://gnome/sources/mutter/${gnome3.version}/${name}.tar.xz";
sha256 = "07059jmwhc7zf2gww2xw94hhy4csjj2v30ivyzllbas2nvv88l3r";
};
# fatal error: gio/gunixfdlist.h: No such file or directory
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
configureFlags = "--with-x --disable-static --enable-shape --enable-sm --enable-startup-notification --enable-xsync --enable-verbose-mode --with-libcanberra";
buildInputs = with gnome3;
[ pkgconfig intltool glib gobjectIntrospection gtk gsettings_desktop_schemas upower
gnome_desktop cairo pango cogl clutter zenity libstartup_notification libcanberra
gnome3.geocode_glib
libcanberra_gtk3 zenity libtool makeWrapper xkeyboard_config libxkbfile libxkbcommon ];
preFixup = ''
wrapProgram "$out/bin/mutter" \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,30 @@
{ stdenv, fetchurl, pkgconfig, libxml2, dbus_glib, shared_mime_info, libexif
, gtk, gnome3, libunique, intltool, gobjectIntrospection
, libnotify, makeWrapper, exempi, librsvg, tracker }:
stdenv.mkDerivation rec {
name = "nautilus-${gnome3.version}.1";
src = fetchurl {
url = "mirror://gnome/sources/nautilus/${gnome3.version}/${name}.tar.xz";
sha256 = "0y83adhfaq4ns01rdkqmrvdwj0ch2pb10hl43as98kqqzm0qxs3y";
};
buildInputs = [ pkgconfig libxml2 dbus_glib shared_mime_info libexif gtk libunique intltool exempi librsvg
gnome3.gnome_desktop gnome3.adwaita-icon-theme
gnome3.gsettings_desktop_schemas libnotify makeWrapper tracker ];
preFixup = ''
wrapProgram "$out/bin/nautilus" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$out/share:$GSETTINGS_SCHEMAS_PATH"
'';
patches = [ ./extension_dir.patch ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,24 @@
diff --git a/libnautilus-private/nautilus-module.c b/libnautilus-private/nautilus-module.c
index 6273a76..4adcc8a 100644
--- a/libnautilus-private/nautilus-module.c
+++ b/libnautilus-private/nautilus-module.c
@@ -242,11 +242,17 @@ void
nautilus_module_setup (void)
{
static gboolean initialized = FALSE;
+ const gchar* extensiondir = NULL;
if (!initialized) {
initialized = TRUE;
-
- load_module_dir (NAUTILUS_EXTENSIONDIR);
+
+ extensiondir = g_getenv ("NAUTILUS_EXTENSION_DIR");
+ if (extensiondir == NULL) {
+ extensiondir = NAUTILUS_EXTENSIONDIR;
+ }
+
+ load_module_dir (extensiondir);
eel_debug_call_at_shutdown (free_module_objects);
}

View file

@ -0,0 +1,19 @@
{ stdenv, fetchurl, pkgconfig, glib, libsoup, gobjectIntrospection }:
stdenv.mkDerivation rec {
name = "rest-0.7.92";
src = fetchurl {
url = "mirror://gnome/sources/rest/0.7/${name}.tar.xz";
sha256 = "07548c8785a3e743daf54a82b952ff5f32af94fee68997df4c83b00d52f9c0ec";
};
buildInputs = [ pkgconfig glib libsoup gobjectIntrospection];
configureFlags = "--with-ca-certificates=/etc/ssl/certs/ca-bundle.crt";
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = [ maintainers.lethalman ];
};
}

View file

@ -0,0 +1,38 @@
{ stdenv, fetchurl, pkgconfig, file, intltool, gobjectIntrospection, glib
, clutter_gtk, clutter-gst, gnome3, gtksourceview, libmusicbrainz
, webkitgtk, libmusicbrainz5, icu, makeWrapper, gst_all_1
, gdk_pixbuf, librsvg, hicolor_icon_theme, gtk3 }:
stdenv.mkDerivation rec {
name = "sushi-3.12.0";
src = fetchurl {
url = "mirror://gnome/sources/sushi/3.12/${name}.tar.xz";
sha256 = "78594a858371b671671205e7b2518e7eb82ed8c2540b62f45a657aaabdf1a9ff";
};
propagatedUserEnvPkgs = [ gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good ];
buildInputs = [ pkgconfig file intltool gobjectIntrospection glib gtk3
clutter_gtk clutter-gst gnome3.gjs gtksourceview gdk_pixbuf librsvg
gnome3.adwaita-icon-theme hicolor_icon_theme
libmusicbrainz5 webkitgtk gnome3.evince icu makeWrapper ];
enableParallelBuilding = true;
preFixup = ''
wrapProgram $out/libexec/sushi-start \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = "http://en.wikipedia.org/wiki/Sushi_(software)";
description = "A quick previewer for Nautilus";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,20 @@
{ stdenv, fetchurl, pkgconfig, file, intltool, gmime, libxml2, libsoup }:
stdenv.mkDerivation rec {
name = "totem-pl-parser-3.10.2";
src = fetchurl {
url = "mirror://gnome/sources/totem-pl-parser/3.10/${name}.tar.xz";
sha256 = "38be09bddc46ddecd2b5ed7c82144ef52aafe879a5ec3d8b192b4b64ba995469";
};
buildInputs = [ pkgconfig file intltool gmime libxml2 libsoup ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Videos;
description = "Simple GObject-based library to parse and save a host of playlist formats";
maintainers = with maintainers; [ lethalman ];
license = licenses.lgpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,48 @@
{ stdenv, intltool, fetchurl, gst_all_1
, clutter_gtk, clutter-gst, pygobject3, shared_mime_info
, pkgconfig, gtk3, glib, hicolor_icon_theme
, bash, makeWrapper, itstool, libxml2, dbus_glib
, gnome3, librsvg, gdk_pixbuf, file }:
stdenv.mkDerivation rec {
name = "totem-${gnome3.version}.0";
src = fetchurl {
url = "mirror://gnome/sources/totem/${gnome3.version}/${name}.tar.xz";
sha256 = "1qv6s7c06r6kdrd3jjqk8h79y8a7h8pjcx02rzp869jr7d9hkcb9";
};
doCheck = true;
enableParallelBuilding = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 gnome3.grilo
clutter_gtk clutter-gst gnome3.totem-pl-parser gnome3.grilo-plugins
gst_all_1.gstreamer gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad
gnome3.libpeas pygobject3 shared_mime_info dbus_glib
gdk_pixbuf gnome3.adwaita-icon-theme librsvg gnome3.gnome_desktop
hicolor_icon_theme gnome3.adwaita-icon-theme
gnome3.gsettings_desktop_schemas makeWrapper file ];
preFixup = ''
wrapProgram "$out/bin/totem" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
--prefix GRL_PLUGIN_PATH : "${gnome3.grilo-plugins}/lib/grilo-0.2" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Videos;
description = "Movie player for the GNOME desktop based on GStreamer";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,56 @@
{ stdenv, intltool, fetchurl, libxml2, upower
, pkgconfig, gtk3, glib, hicolor_icon_theme
, bash, makeWrapper, itstool, vala, sqlite, libxslt
, gnome3, librsvg, gdk_pixbuf, file, libnotify
, evolution_data_server, gst_all_1, poppler
, icu, taglib, libjpeg, libtiff, giflib, libcue
, libvorbis, flac, exempi, networkmanager
, libpng, libexif, libgsf, libuuid, bzip2 }:
let
majorVersion = "1.4";
in
stdenv.mkDerivation rec {
name = "tracker-${majorVersion}.0";
src = fetchurl {
url = "mirror://gnome/sources/tracker/${majorVersion}/${name}.tar.xz";
sha256 = "1ssisbix7ib3d6bgx9s675gx6ayy68jq2srhpzv038mkbaskaz68";
};
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0 -I${poppler}/include/poppler";
enableParallelBuilding = true;
buildInputs = [ vala pkgconfig gtk3 glib intltool itstool libxml2
bzip2 gnome3.totem-pl-parser libxslt
gnome3.gsettings_desktop_schemas makeWrapper file
gdk_pixbuf gnome3.adwaita-icon-theme librsvg sqlite
upower libnotify evolution_data_server gnome3.libgee
gst_all_1.gstreamer gst_all_1.gst-plugins-base flac
poppler icu taglib libjpeg libtiff giflib libvorbis
exempi networkmanager libpng libexif libgsf libuuid
hicolor_icon_theme gnome3.adwaita-icon-theme ];
preConfigure = ''
substituteInPlace src/libtracker-sparql/Makefile.in --replace "--shared-library=libtracker-sparql" "--shared-library=$out/lib/libtracker-sparql"
'';
preFixup = ''
for f in $out/bin/* $out/libexec/*; do
wrapProgram $f \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
done
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/Tracker;
description = "Desktop-neutral user information store, search tool and indexer";
maintainers = with maintainers; [ lethalman ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,33 @@
{ stdenv, intltool, fetchurl, gtk3, glib, libsoup, pkgconfig, makeWrapper
, hicolor_icon_theme, gnome3
, libnotify, file, telepathy_glib, dbus_glib }:
stdenv.mkDerivation rec {
name = "vino-${versionMajor}.${versionMinor}";
versionMajor = gnome3.version;
versionMinor = "0";
src = fetchurl {
url = "mirror://gnome/sources/vino/${versionMajor}/${name}.tar.xz";
sha256 = "1icdc2y78xfg7czfiz05y9vsxkzzgrc0dpsrcxb41bg0sh9kd3b0";
};
doCheck = true;
buildInputs = [ gtk3 intltool glib libsoup pkgconfig libnotify
hicolor_icon_theme gnome3.adwaita-icon-theme
dbus_glib telepathy_glib file makeWrapper ];
preFixup = ''
wrapProgram "$out/libexec/vino-server" \
--prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/action/show/Projects/Vino;
description = "GNOME desktop sharing server";
maintainers = with maintainers; [ lethalman iElectric ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -1,8 +1,8 @@
{ stdenv, fetchurl, intltool, pkgconfig, gnome3, ncurses, gobjectIntrospection, vala, libxml2
, selectTextPatch ? false }:
, gnutls, selectTextPatch ? false }:
stdenv.mkDerivation rec {
versionMajor = "0.38";
versionMajor = "0.40";
versionMinor = "0";
moduleName = "vte";
@ -10,12 +10,15 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
sha256 = "1llg2xnjpn630vd86ci8csbjjacj3ia6syck2bsq4kinr66z5zsw";
sha256 = "0lnq0bgkmsixjwmfacb2ch9qfjqjxa8zkk1hiv3l29kgca0n3nal";
};
patches = with stdenv.lib; optional selectTextPatch ./expose_select_text.0.38.0.patch;
buildInputs = [ gobjectIntrospection intltool pkgconfig gnome3.glib gnome3.gtk3 ncurses vala libxml2 ];
buildInputs = [ gobjectIntrospection intltool pkgconfig gnome3.glib
gnome3.gtk3 ncurses vala libxml2 ];
propagatedBuildInputs = [ gnutls ];
preConfigure = "patchShebangs .";

Some files were not shown because too many files have changed in this diff Show more