forked from mirrors/nixpkgs
gnome-user-share: new package
Service that exports the contents of the Public folder in your home directory on the local network https://help.gnome.org/users/gnome-user-share/3.8
This commit is contained in:
parent
e08861a4cd
commit
a5b4c74a16
|
@ -101,6 +101,7 @@
|
|||
./services/desktops/gnome3/at-spi2-core.nix
|
||||
./services/desktops/gnome3/evolution-data-server.nix
|
||||
./services/desktops/gnome3/gnome-keyring.nix
|
||||
./services/desktops/gnome3/gnome-user-share.nix
|
||||
./services/desktops/gnome3/sushi.nix
|
||||
./services/desktops/gnome3/tracker.nix
|
||||
./services/desktops/telepathy.nix
|
||||
|
|
42
nixos/modules/services/desktops/gnome3/gnome-user-share.nix
Normal file
42
nixos/modules/services/desktops/gnome3/gnome-user-share.nix
Normal file
|
@ -0,0 +1,42 @@
|
|||
# GNOME User Share daemon.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
|
||||
{
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
services.gnome3.gnome-user-share = {
|
||||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to enable GNOME User Share, a service that exports the
|
||||
contents of the Public folder in your home directory on the local network.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf config.services.gnome3.gnome-user-share.enable {
|
||||
|
||||
environment.systemPackages = [ pkgs.gnome3.gnome-user-share ];
|
||||
|
||||
services.xserver.displayManager.sessionCommands = with pkgs.gnome3; ''
|
||||
# Don't let gnome-control-center depend upon gnome-user-share
|
||||
export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}${gnome-user-share}/share/gsettings-schemas/${gnome-user-share.name}
|
||||
'';
|
||||
|
||||
};
|
||||
|
||||
}
|
|
@ -43,6 +43,7 @@ in {
|
|||
services.gnome3.at-spi2-core.enable = true;
|
||||
services.gnome3.evolution-data-server.enable = true;
|
||||
services.gnome3.gnome-keyring.enable = true;
|
||||
services.gnome3.gnome-user-share.enable = mkDefault true;
|
||||
services.gnome3.sushi.enable = mkDefault true;
|
||||
services.gnome3.tracker.enable = mkDefault true;
|
||||
services.telepathy.enable = mkDefault true;
|
||||
|
|
52
pkgs/desktops/gnome-3/core/gnome-user-share/default.nix
Normal file
52
pkgs/desktops/gnome-3/core/gnome-user-share/default.nix
Normal file
|
@ -0,0 +1,52 @@
|
|||
{ 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 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gnome-user-share-3.10.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gnome-user-share/3.10/${name}.tar.xz";
|
||||
sha256 = "1d1ea57a49224c36e7cba04f80265e835639377f474a7582c9e8ac946eda0f8f";
|
||||
};
|
||||
|
||||
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.gnome_icon_theme librsvg
|
||||
hicolor_icon_theme gnome3.gnome_icon_theme_symbolic
|
||||
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"
|
||||
rm $out/share/icons/hicolor/icon-theme.cache
|
||||
'';
|
||||
|
||||
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;
|
||||
};
|
||||
}
|
|
@ -88,6 +88,8 @@ rec {
|
|||
|
||||
gnome-user-docs = callPackage ./core/gnome-user-docs { };
|
||||
|
||||
gnome-user-share = callPackage ./core/gnome-user-share { };
|
||||
|
||||
grilo = callPackage ./core/grilo { };
|
||||
|
||||
gsettings_desktop_schemas = callPackage ./core/gsettings-desktop-schemas { };
|
||||
|
|
Loading…
Reference in a new issue