commit
c83e929b94
@ -5,9 +5,7 @@ with lib;
|
||||
let
|
||||
|
||||
cfg = config.services.xserver.windowManager.metacity;
|
||||
xorg = config.services.xserver.package;
|
||||
gnome = pkgs.gnome;
|
||||
|
||||
inherit (pkgs) gnome3;
|
||||
in
|
||||
|
||||
{
|
||||
@ -20,16 +18,12 @@ in
|
||||
services.xserver.windowManager.session = singleton
|
||||
{ name = "metacity";
|
||||
start = ''
|
||||
env LD_LIBRARY_PATH=${lib.makeLibraryPath [ xorg.libX11 xorg.libXext ]}:/usr/lib/
|
||||
# !!! Hack: load the schemas for Metacity.
|
||||
GCONF_CONFIG_SOURCE=xml::~/.gconf ${gnome.GConf.out}/bin/gconftool-2 \
|
||||
--makefile-install-rule ${gnome.metacity}/etc/gconf/schemas/*.schemas # */
|
||||
${gnome.metacity}/bin/metacity &
|
||||
${gnome3.metacity}/bin/metacity &
|
||||
waitPID=$!
|
||||
'';
|
||||
};
|
||||
|
||||
environment.systemPackages = [ gnome.metacity ];
|
||||
environment.systemPackages = [ gnome3.metacity ];
|
||||
|
||||
};
|
||||
|
||||
|
@ -1,118 +1,95 @@
|
||||
{ stdenv, fetchurl, makeWrapper, cmake, pkgconfig
|
||||
, glibc, gnome-keyring, gtk, gtkmm, pcre, swig, sudo
|
||||
, mysql, libxml2, libctemplate, libmysqlconnectorcpp
|
||||
, vsqlite, tinyxml, gdal, libiodbc, libpthreadstubs
|
||||
, libXdmcp, libuuid, libzip, libgnome-keyring, file
|
||||
, pythonPackages, jre, autoconf, automake, libtool
|
||||
, boost, glibmm, libsigcxx, pangomm, libX11, openssl
|
||||
, proj, cairo, libglade
|
||||
{ stdenv, fetchurl, substituteAll, cmake, ninja, pkgconfig
|
||||
, glibc, gtk3, gtkmm3, pcre, swig, antlr4_7, sudo
|
||||
, mysql, libxml2, libmysqlconnectorcpp
|
||||
, vsqlite, gdal, libiodbc, libpthreadstubs
|
||||
, libXdmcp, libuuid, libzip, libsecret, libssh
|
||||
, python2, jre
|
||||
, boost, libsigcxx, libX11, openssl
|
||||
, proj, cairo, libxkbcommon, epoxy, wrapGAppsHook
|
||||
, at-spi2-core, dbus, bash, coreutils
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (pythonPackages) pexpect pycrypto python paramiko;
|
||||
inherit (python2.pkgs) paramiko pycairo pyodbc;
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "mysql-workbench";
|
||||
version = "6.3.8";
|
||||
version = "8.0.12";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community-${version}-src.tar.gz";
|
||||
sha256 = "1bxd828nrawmym6d8awh1vrni8dsbwh1k5am1lrq5ihp5c3kw9ka";
|
||||
sha256 = "0d6k1kw0bi3q5dlilzlgds1gcrlf7pis4asm3d6pssh2jmn5hh82";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ cmake gnome-keyring gtk gtk.dev gtkmm pcre swig python sudo
|
||||
paramiko mysql libxml2 libctemplate libmysqlconnectorcpp vsqlite tinyxml gdal libiodbc file
|
||||
libpthreadstubs libXdmcp libuuid libzip libgnome-keyring libgnome-keyring.dev jre autoconf
|
||||
automake libtool boost glibmm glibmm.dev libsigcxx pangomm libX11 pexpect pycrypto openssl
|
||||
proj cairo cairo.dev makeWrapper libglade ] ;
|
||||
patches = [
|
||||
./fix-gdal-includes.patch
|
||||
(substituteAll {
|
||||
src = ./hardcode-paths.patch;
|
||||
catchsegv = "${glibc.bin}/bin/catchsegv";
|
||||
bash = "${bash}/bin/bash";
|
||||
cp = "${coreutils}/bin/cp";
|
||||
dd = "${coreutils}/bin/dd";
|
||||
ls = "${coreutils}/bin/ls";
|
||||
mkdir = "${coreutils}/bin/mkdir";
|
||||
nohup = "${coreutils}/bin/nohup";
|
||||
rm = "${coreutils}/bin/rm";
|
||||
rmdir = "${coreutils}/bin/rmdir";
|
||||
sudo = "${sudo}/bin/sudo";
|
||||
})
|
||||
];
|
||||
|
||||
prePatch = ''
|
||||
for f in backend/wbpublic/{grt/spatial_handler.h,grtui/geom_draw_box.h,objimpl/db.query/db_query_Resultset.cpp} ;
|
||||
do
|
||||
sed -i 's@#include <gdal/@#include <@' $f ;
|
||||
done
|
||||
nativeBuildInputs = [
|
||||
cmake ninja pkgconfig jre swig wrapGAppsHook
|
||||
];
|
||||
|
||||
sed -i '32s@mysqlparser@mysqlparser sqlparser@' library/mysql.parser/CMakeLists.txt
|
||||
buildInputs = [
|
||||
gtk3 gtkmm3 libX11 antlr4_7.runtime.cpp python2 mysql libxml2
|
||||
libmysqlconnectorcpp vsqlite gdal boost libssh openssl
|
||||
libiodbc pcre cairo libuuid libzip libsecret
|
||||
libsigcxx proj
|
||||
# python dependencies:
|
||||
paramiko pycairo pyodbc # sqlanydb
|
||||
# transitive dependencies:
|
||||
libpthreadstubs libXdmcp libxkbcommon epoxy at-spi2-core dbus
|
||||
];
|
||||
|
||||
cat <<EOF > ext/antlr-runtime/fix-configure
|
||||
#!${stdenv.shell}
|
||||
echo "fixing bundled antlr3c configure" ;
|
||||
sed -i 's@/usr/bin/file@${file}/bin/file@' configure
|
||||
sed -i '12121d' configure
|
||||
EOF
|
||||
chmod +x ext/antlr-runtime/fix-configure
|
||||
sed -i '236s@&&@& ''${PROJECT_SOURCE_DIR}/ext/antlr-runtime/fix-configure &@' CMakeLists.txt
|
||||
|
||||
substituteInPlace $(pwd)/frontend/linux/workbench/mysql-workbench.in --replace "catchsegv" "${glibc.bin}/bin/catchsegv"
|
||||
substituteInPlace $(pwd)/frontend/linux/workbench/mysql-workbench.in --replace "/usr/lib/x86_64-linux-gnu" "${proj}/lib"
|
||||
patchShebangs $(pwd)/library/mysql.parser/grammar/build-parser
|
||||
patchShebangs $(pwd)/tools/get_wb_version.sh
|
||||
postPatch = ''
|
||||
patchShebangs tools/get_wb_version.sh
|
||||
'';
|
||||
|
||||
NIX_CFLAGS_COMPILE = [
|
||||
"-I${libsigcxx}/lib/sigc++-2.0/include"
|
||||
"-I${pangomm}/lib/pangomm-1.4/include"
|
||||
"-I${glibmm}/lib/giomm-2.4/include"
|
||||
# error: 'OGRErr OGRSpatialReference::importFromWkt(char**)' is deprecated
|
||||
"-Wno-error=deprecated-declarations"
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_CXX_FLAGS=-std=c++11"
|
||||
"-DMySQL_CONFIG_PATH=${mysql}/bin/mysql_config"
|
||||
"-DCTemplate_INCLUDE_DIR=${libctemplate}/include"
|
||||
"-DCAIRO_INCLUDE_DIRS=${cairo.dev}/include"
|
||||
"-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk}/lib/gtk-2.0/include"
|
||||
"-DGTK2_GLIBCONFIG_INCLUDE_DIR=${gtk.dev}/include"
|
||||
"-DGTK2_GTKMMCONFIG_INCLUDE_DIR=${gtkmm}/lib/gtkmm-2.4/include"
|
||||
"-DGTK2_GDKMMCONFIG_INCLUDE_DIR=${gtkmm}/lib/gdkmm-2.4/include"
|
||||
"-DGTK2_GLIBMMCONFIG_INCLUDE_DIR=${glibmm}/lib/glibmm-2.4/include"
|
||||
"-DIODBC_CONFIG_PATH=${libiodbc}/bin/iodbc-config"
|
||||
"-DWITH_ANTLR_JAR=${antlr4_7.jarLocation}"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
patchShebangs $out/share/mysql-workbench/extras/build_freetds.sh
|
||||
# There is already an executable and a wrapper in bindir
|
||||
# No need to wrap both
|
||||
dontWrapGApps = true;
|
||||
|
||||
for i in $out/lib/mysql-workbench/modules/wb_utils_grt.py \
|
||||
$out/lib/mysql-workbench/modules/wb_server_management.py \
|
||||
$out/lib/mysql-workbench/modules/wb_admin_grt.py; do
|
||||
substituteInPlace $i \
|
||||
--replace "/bin/bash" ${stdenv.shell} \
|
||||
--replace "/usr/bin/sudo" ${sudo}/bin/sudo
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--prefix PATH : "${python2}/bin"
|
||||
--prefix PROJSO : "${proj}/lib/libproj.so"
|
||||
--set PYTHONPATH $PYTHONPATH
|
||||
)
|
||||
'';
|
||||
|
||||
# Let’s wrap the programs not ending with bin
|
||||
# until https://bugs.mysql.com/bug.php?id=91948 is fixed
|
||||
postFixup = ''
|
||||
find -L "$out/bin" -type f -executable -print0 \
|
||||
| while IFS= read -r -d ''' file; do
|
||||
if [[ "''${file}" != *-bin ]]; then
|
||||
echo "Wrapping program ''${file}"
|
||||
wrapProgram "''${file}" "''${gappsWrapperArgs[@]}"
|
||||
fi
|
||||
done
|
||||
|
||||
wrapProgram "$out/bin/mysql-workbench" \
|
||||
--prefix LD_LIBRARY_PATH : "${python}/lib" \
|
||||
--prefix LD_LIBRARY_PATH : "$(cat ${stdenv.cc}/nix-support/orig-cc)/lib64" \
|
||||
--prefix PATH : "${gnome-keyring}/bin" \
|
||||
--prefix PATH : "${python}/bin" \
|
||||
--set PYTHONPATH $PYTHONPATH \
|
||||
--run '
|
||||
# The gnome-keyring-daemon must be running. To allow for environments like
|
||||
# kde, xfce where this is not so, we start it first.
|
||||
# It is cleaned up using a supervisor subshell which detects that
|
||||
# the parent has finished via the closed pipe as terminate signal idiom,
|
||||
# used because we cannot clean up after ourselves due to the exec call.
|
||||
|
||||
# Start gnome-keyring-daemon, export the environment variables it asks us to set.
|
||||
for expr in $( gnome-keyring-daemon --start ) ; do eval "export "$expr ; done
|
||||
|
||||
# Prepare fifo pipe.
|
||||
FIFOCTL="/tmp/gnome-keyring-daemon-ctl.$$.fifo"
|
||||
[ -p $FIFOCTL ] && rm $FIFOCTL
|
||||
mkfifo $FIFOCTL
|
||||
|
||||
# Supervisor subshell waits reading from pipe, will receive EOF when parent
|
||||
# closes pipe on termination. Negate read with ! operator to avoid subshell
|
||||
# quitting when read EOF returns 1 due to -e option being set.
|
||||
(
|
||||
exec 19< $FIFOCTL
|
||||
! read -u 19
|
||||
|
||||
kill $GNOME_KEYRING_PID
|
||||
rm $FIFOCTL
|
||||
) &
|
||||
|
||||
exec 19> $FIFOCTL
|
||||
'
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
@ -127,6 +104,6 @@ exec 19> $FIFOCTL
|
||||
homepage = http://wb.mysql.com/;
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ maintainers.kkallio ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -0,0 +1,47 @@
|
||||
--- a/backend/wbpublic/grt/spatial_handler.h
|
||||
+++ b/backend/wbpublic/grt/spatial_handler.h
|
||||
@@ -24,12 +24,12 @@
|
||||
#ifndef SPATIAL_HANDLER_H_
|
||||
#define SPATIAL_HANDLER_H_
|
||||
|
||||
-#include <gdal/ogrsf_frmts.h>
|
||||
-#include <gdal/ogr_api.h>
|
||||
-#include <gdal/gdal_pam.h>
|
||||
-#include <gdal/memdataset.h>
|
||||
-#include <gdal/gdal_alg.h>
|
||||
-#include <gdal/gdal.h>
|
||||
+#include <ogrsf_frmts.h>
|
||||
+#include <ogr_api.h>
|
||||
+#include <gdal_pam.h>
|
||||
+#include <memdataset.h>
|
||||
+#include <gdal_alg.h>
|
||||
+#include <gdal.h>
|
||||
#include <deque>
|
||||
#include "base/geometry.h"
|
||||
#include "wbpublic_public_interface.h"
|
||||
--- a/backend/wbpublic/grtui/geom_draw_box.h
|
||||
+++ b/backend/wbpublic/grtui/geom_draw_box.h
|
||||
@@ -25,7 +25,7 @@
|
||||
#define _GEOM_DRAW_BOX_H_
|
||||
|
||||
#include <mforms/drawbox.h>
|
||||
-#include <gdal/ogr_geometry.h>
|
||||
+#include <ogr_geometry.h>
|
||||
#include "wbpublic_public_interface.h"
|
||||
|
||||
class WBPUBLICBACKEND_PUBLIC_FUNC GeomDrawBox : public mforms::DrawBox {
|
||||
--- a/backend/wbpublic/objimpl/db.query/db_query_Resultset.cpp
|
||||
+++ b/backend/wbpublic/objimpl/db.query/db_query_Resultset.cpp
|
||||
@@ -21,9 +21,9 @@
|
||||
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
-#include <gdal/ogrsf_frmts.h>
|
||||
-#include <gdal/ogr_api.h>
|
||||
-#include <gdal/gdal.h>
|
||||
+#include <ogrsf_frmts.h>
|
||||
+#include <ogr_api.h>
|
||||
+#include <gdal.h>
|
||||
|
||||
#include <grts/structs.db.query.h>
|
||||
#include <grtpp_util.h>
|
187
pkgs/applications/misc/mysql-workbench/hardcode-paths.patch
Normal file
187
pkgs/applications/misc/mysql-workbench/hardcode-paths.patch
Normal file
@ -0,0 +1,187 @@
|
||||
--- a/frontend/linux/workbench/mysql-workbench.in
|
||||
+++ b/frontend/linux/workbench/mysql-workbench.in
|
||||
@@ -99,8 +99,8 @@
|
||||
if test "$WB_DEBUG" != ""; then
|
||||
$WB_DEBUG $MWB_BINARIES_DIR/mysql-workbench-bin "$@"
|
||||
else
|
||||
- if type -p catchsegv > /dev/null; then
|
||||
- catchsegv $MWB_BINARIES_DIR/mysql-workbench-bin "$@"
|
||||
+ if type -p @catchsegv@ > /dev/null; then
|
||||
+ @catchsegv@ $MWB_BINARIES_DIR/mysql-workbench-bin "$@"
|
||||
else
|
||||
$MWB_BINARIES_DIR/mysql-workbench-bin "$@"
|
||||
fi
|
||||
--- a/plugins/migration/frontend/migration_bulk_copy_data.py
|
||||
+++ b/plugins/migration/frontend/migration_bulk_copy_data.py
|
||||
@@ -110,7 +110,7 @@
|
||||
return 'sh'
|
||||
|
||||
def generate_import_script(self, connection_args, path_to_file, schema_name):
|
||||
- output = ['#!/bin/bash']
|
||||
+ output = ['#!/usr/bin/env bash']
|
||||
output.append('MYPATH=\`pwd\`')
|
||||
|
||||
output.append('if [ -f \$MYPATH/%s ] ; then' % self.error_log_name)
|
||||
@@ -164,7 +164,7 @@
|
||||
return 'sh'
|
||||
|
||||
def generate_import_script(self, connection_args, path_to_file, schema_name):
|
||||
- output = ['#!/bin/bash']
|
||||
+ output = ['#!/usr/bin/env bash']
|
||||
output.append('MYPATH=\`pwd\`')
|
||||
|
||||
output.append('if [ -f \$MYPATH/%s ] ; then' % self.error_log_name)
|
||||
@@ -417,7 +417,7 @@
|
||||
|
||||
with open(script_path, 'w+') as f:
|
||||
os.chmod(script_path, 0700)
|
||||
- f.write('#!/bin/bash\n\n')
|
||||
+ f.write('#!/usr/bin/env bash\n\n')
|
||||
f.write('MYPATH=`pwd`\n')
|
||||
|
||||
f.write("arg_source_password=\"<put source password here>\"\n")
|
||||
@@ -521,7 +521,7 @@
|
||||
|
||||
with open(script_path, 'w+') as f:
|
||||
os.chmod(script_path, 0700)
|
||||
- f.write('#!/bin/bash\n\n')
|
||||
+ f.write('#!/usr/bin/env bash\n\n')
|
||||
f.write('MYPATH=`pwd`\n')
|
||||
|
||||
f.write("arg_source_password=\"<put source password here>\"\n")
|
||||
--- a/plugins/wb.admin/backend/wb_server_control.py
|
||||
+++ b/plugins/wb.admin/backend/wb_server_control.py
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
UnixVariant = {
|
||||
"" : {
|
||||
- 'sudo_command' : "/usr/bin/sudo -k -S -p EnterPasswordHere ",
|
||||
+ 'sudo_command' : "@sudo@ -k -S -p EnterPasswordHere ",
|
||||
}
|
||||
}
|
||||
|
||||
--- a/plugins/wb.admin/backend/wb_server_management.py
|
||||
+++ b/plugins/wb.admin/backend/wb_server_management.py
|
||||
@@ -40,7 +40,7 @@
|
||||
|
||||
def reset_sudo_prefix():
|
||||
global default_sudo_prefix
|
||||
- default_sudo_prefix = '/usr/bin/sudo -k -S -p EnterPasswordHere'
|
||||
+ default_sudo_prefix = '@sudo@ -k -S -p EnterPasswordHere'
|
||||
|
||||
reset_sudo_prefix()
|
||||
|
||||
@@ -100,7 +100,7 @@
|
||||
|
||||
if to_spawn:
|
||||
command += ' &'
|
||||
- sudo_prefix += ' /usr/bin/nohup'
|
||||
+ sudo_prefix += ' @nohup@'
|
||||
|
||||
# If as_user is the CURRENT then there's no need to sudo
|
||||
if as_user != Users.CURRENT:
|
||||
@@ -111,7 +111,7 @@
|
||||
if '/bin/sh' in sudo_prefix or '/bin/bash' in sudo_prefix:
|
||||
command = "LANG=C " + sudo_prefix + " \"" + command.replace('\\', '\\\\').replace('"', r'\"').replace('$','\\$') + "\""
|
||||
else:
|
||||
- command = "LANG=C " + sudo_prefix + " /bin/bash -c \"" + command.replace('\\', '\\\\').replace('"', r'\"').replace('$','\\$') + "\""
|
||||
+ command = "LANG=C " + sudo_prefix + " @bash@ -c \"" + command.replace('\\', '\\\\').replace('"', r'\"').replace('$','\\$') + "\""
|
||||
|
||||
return command
|
||||
|
||||
@@ -896,9 +896,9 @@
|
||||
if as_user == Users.CURRENT:
|
||||
raise PermissionDeniedError("Cannot set owner of directory %s" % path)
|
||||
else:
|
||||
- command = "/bin/mkdir %s && chown %s %s" % (quote_path(path), with_owner, quote_path(path))
|
||||
+ command = "@mkdir@ %s && chown %s %s" % (quote_path(path), with_owner, quote_path(path))
|
||||
else:
|
||||
- command = "/bin/mkdir %s" % (quote_path(path))
|
||||
+ command = "@mkdir@ %s" % (quote_path(path))
|
||||
|
||||
res = self.process_ops.exec_cmd(command,
|
||||
as_user = as_user,
|
||||
@@ -927,7 +927,7 @@
|
||||
@useAbsPath("path")
|
||||
def remove_directory(self, path, as_user = Users.CURRENT, user_password = None):
|
||||
output = StringIO.StringIO()
|
||||
- res = self.process_ops.exec_cmd('/bin/rmdir ' + quote_path(path),
|
||||
+ res = self.process_ops.exec_cmd('@rmdir@ ' + quote_path(path),
|
||||
as_user = as_user,
|
||||
user_password = user_password,
|
||||
output_handler = output.write,
|
||||
@@ -940,7 +940,7 @@
|
||||
@useAbsPath("path")
|
||||
def remove_directory_recursive(self, path, as_user = Users.CURRENT, user_password = None):
|
||||
output = StringIO.StringIO()
|
||||
- res = self.process_ops.exec_cmd('/bin/rm -R ' + quote_path(path),
|
||||
+ res = self.process_ops.exec_cmd('@rm@ -R ' + quote_path(path),
|
||||
as_user = as_user,
|
||||
user_password = user_password,
|
||||
output_handler = output.write,
|
||||
@@ -953,7 +953,7 @@
|
||||
@useAbsPath("path")
|
||||
def delete_file(self, path, as_user = Users.CURRENT, user_password = None):
|
||||
output = StringIO.StringIO()
|
||||
- res = self.process_ops.exec_cmd("/bin/rm " + quote_path(path),
|
||||
+ res = self.process_ops.exec_cmd("@rm@ " + quote_path(path),
|
||||
as_user = as_user,
|
||||
user_password = user_password,
|
||||
output_handler = output.write,
|
||||
@@ -1001,7 +1001,7 @@
|
||||
def _copy_file(self, source, dest, as_user = Users.CURRENT, user_password = None):
|
||||
output = StringIO.StringIO()
|
||||
|
||||
- res = self.process_ops.exec_cmd("LC_ALL=C /bin/cp " + quote_path(source) + " " + quote_path(dest),
|
||||
+ res = self.process_ops.exec_cmd("LC_ALL=C @cp@ " + quote_path(source) + " " + quote_path(dest),
|
||||
as_user = as_user,
|
||||
user_password = user_password,
|
||||
output_handler = output.write,
|
||||
@@ -1077,9 +1077,9 @@
|
||||
# for ls -l, the output format changes depending on stdout being a terminal or not
|
||||
# since both cases are possible, we need to handle both at the same time (1st line being total <nnnn> or not)
|
||||
# the good news is that if the line is there, then it will always start with total, regardless of the locale
|
||||
- command = 'LC_ALL=C /bin/ls -l -p %s' % quote_path(path)
|
||||
+ command = 'LC_ALL=C @ls@ -l -p %s' % quote_path(path)
|
||||
else:
|
||||
- command = 'LC_ALL=C /bin/ls -1 -p %s' % quote_path(path)
|
||||
+ command = 'LC_ALL=C @ls@ -1 -p %s' % quote_path(path)
|
||||
|
||||
output = StringIO.StringIO()
|
||||
res = self.process_ops.exec_cmd(command,
|
||||
@@ -2160,9 +2160,9 @@
|
||||
def get_range(self, start, end):
|
||||
f = StringIO.StringIO()
|
||||
if not self._need_sudo:
|
||||
- ret = self.server_helper.execute_command("/bin/dd if=%s ibs=1 skip=%i count=%i 2> /dev/null" % (quote_path(self.path), start, end-start), as_user = Users.CURRENT, user_password=None, output_handler=f.write)
|
||||
+ ret = self.server_helper.execute_command("@dd@ if=%s ibs=1 skip=%i count=%i 2> /dev/null" % (quote_path(self.path), start, end-start), as_user = Users.CURRENT, user_password=None, output_handler=f.write)
|
||||
else:
|
||||
- ret = self.server_helper.execute_command("/bin/dd if=%s ibs=1 skip=%i count=%i 2> /dev/null" % (quote_path(self.path), start, end-start), as_user = Users.ADMIN, user_password=self.get_password, output_handler=f.write)
|
||||
+ ret = self.server_helper.execute_command("@dd@ if=%s ibs=1 skip=%i count=%i 2> /dev/null" % (quote_path(self.path), start, end-start), as_user = Users.ADMIN, user_password=self.get_password, output_handler=f.write)
|
||||
|
||||
if ret != 0:
|
||||
raise RuntimeError("Could not get data from file %s" % self.path)
|
||||
@@ -2170,9 +2170,9 @@
|
||||
|
||||
def read_task(self, offset, file):
|
||||
if not self._need_sudo:
|
||||
- self.server_helper.execute_command("/bin/dd if=%s ibs=1 skip=%i 2> /dev/null" % (quote_path(self.path), offset), as_user = Users.CURRENT, user_password=None, output_handler=file.write)
|
||||
+ self.server_helper.execute_command("@dd@ if=%s ibs=1 skip=%i 2> /dev/null" % (quote_path(self.path), offset), as_user = Users.CURRENT, user_password=None, output_handler=file.write)
|
||||
else:
|
||||
- self.server_helper.execute_command("/bin/dd if=%s ibs=1 skip=%i 2> /dev/null" % (quote_path(self.path), offset), as_user = Users.ADMIN, user_password=self.get_password, output_handler=file.write)
|
||||
+ self.server_helper.execute_command("@dd@ if=%s ibs=1 skip=%i 2> /dev/null" % (quote_path(self.path), offset), as_user = Users.ADMIN, user_password=self.get_password, output_handler=file.write)
|
||||
# this will signal the reader end that there's no more data
|
||||
file.close()
|
||||
|
||||
@@ -2198,9 +2198,9 @@
|
||||
self._pos = offset
|
||||
f = StringIO.StringIO()
|
||||
if not self._need_sudo:
|
||||
- self.server_helper.execute_command("/bin/dd if=%s ibs=1 skip=%i 2> /dev/null" % (quote_path(self.path), offset), as_user = Users.CURRENT, user_password=None, output_handler=f.write)
|
||||
+ self.server_helper.execute_command("@dd@ if=%s ibs=1 skip=%i 2> /dev/null" % (quote_path(self.path), offset), as_user = Users.CURRENT, user_password=None, output_handler=f.write)
|
||||
else:
|
||||
- self.server_helper.execute_command("/bin/dd if=%s ibs=1 skip=%i 2> /dev/null" % (quote_path(self.path), offset), as_user = Users.ADMIN, user_password=self._password, output_handler=f.write)
|
||||
+ self.server_helper.execute_command("@dd@ if=%s ibs=1 skip=%i 2> /dev/null" % (quote_path(self.path), offset), as_user = Users.ADMIN, user_password=self._password, output_handler=f.write)
|
||||
self.data = f
|
||||
self.data.seek(0)
|
||||
if self.skip_first_newline:
|
@ -81,8 +81,6 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
|
||||
buildInputs = [ gnome2.gnome-keyring ];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildCommand = ''
|
||||
|
@ -1,45 +1,46 @@
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, glib, dbus-glib
|
||||
, desktopSupport
|
||||
, gtk2, gnome2_panel, GConf2
|
||||
, desktopSupport, xlibs
|
||||
, gtk2
|
||||
, gtk3, gnome3, mate
|
||||
, libxfce4util, xfce4-panel
|
||||
}:
|
||||
|
||||
assert desktopSupport == "gnome2" || desktopSupport == "gnome3" || desktopSupport == "xfce4";
|
||||
assert desktopSupport == "gnomeflashback" || desktopSupport == "mate" || desktopSupport == "xfce4";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.1.0";
|
||||
version = "unstable-2017-09-15";
|
||||
pname = "xmonad-log-applet";
|
||||
name = "${pname}-${version}-${desktopSupport}";
|
||||
name = "${pname}-${desktopSupport}-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alexkay";
|
||||
owner = "kalj";
|
||||
repo = pname;
|
||||
rev = "${version}";
|
||||
sha256 = "1g1fisyaw83v72b25fxfjln8f4wlw3rm6nyk27mrqlhsc1spnb5p";
|
||||
rev = "a1b294cad2f266e4f18d9de34167fa96a0ffdba8";
|
||||
sha256 = "042307grf4zvn61gnflhsj5xsjykrk9sjjsprprm4iij0qpybxcw";
|
||||
};
|
||||
|
||||
buildInputs = with stdenv.lib;
|
||||
[ glib dbus-glib ]
|
||||
++ optionals (desktopSupport == "gnome2") [ gtk2 gnome2_panel GConf2 ]
|
||||
# TODO: no idea where to find libpanelapplet-4.0
|
||||
++ optionals (desktopSupport == "gnome3") [ ]
|
||||
++ optionals (desktopSupport == "xfce4") [ gtk2 libxfce4util xfce4-panel ]
|
||||
;
|
||||
|
||||
buildInputs = [ glib dbus-glib xlibs.xcbutilwm ]
|
||||
++ stdenv.lib.optionals (desktopSupport == "gnomeflashback") [ gtk3 gnome3.gnome-panel ]
|
||||
++ stdenv.lib.optionals (desktopSupport == "mate") [ gtk3 mate.mate-panel ]
|
||||
++ stdenv.lib.optionals (desktopSupport == "xfce4") [ gtk2 libxfce4util xfce4-panel ]
|
||||
;
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
||||
|
||||
configureFlags = [ "--with-panel=${desktopSupport}" ];
|
||||
|
||||
|
||||
patches = [ ./fix-paths.patch ];
|
||||
|
||||
# Setup hook replaces ${prefix} in pc files so we cannot use
|
||||
# --define-variable=prefix=$prefix
|
||||
PKG_CONFIG_LIBXFCE4PANEL_1_0_LIBDIR = "$(out)/lib";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/alexkay/xmonad-log-applet;
|
||||
homepage = https://github.com/kalj/xmonad-log-applet;
|
||||
license = licenses.bsd3;
|
||||
description = "An applet that will display XMonad log information (${desktopSupport} version)";
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ abbradar ];
|
||||
|
||||
broken = desktopSupport == "gnome3";
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -1,50 +1,57 @@
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 619012d..dcc6d3c 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -1,4 +1,5 @@
|
||||
plugindir = $(PLUGIN_DIR)
|
||||
+SESSION_BUS_SERVICES_DIR = $(prefix)/share/dbus-1/services
|
||||
plugin_PROGRAMS = xmonad-log-applet
|
||||
|
||||
xmonad_log_applet_SOURCES = main.c
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index ad4cffb..110c953 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -27,28 +27,28 @@ AC_ARG_WITH(
|
||||
@@ -20,7 +20,7 @@
|
||||
PKG_CHECK_MODULES(XCB, xcb xcb-ewmh)
|
||||
|
||||
PKG_CHECK_MODULES(DBUS_GLIB, dbus-glib-1 >= 0.80)
|
||||
-SESSION_BUS_SERVICES_DIR=`$PKG_CONFIG --variable=session_bus_services_dir dbus-1`
|
||||
+SESSION_BUS_SERVICES_DIR=$prefix/share/dbus-1/services
|
||||
AC_SUBST([SESSION_BUS_SERVICES_DIR])
|
||||
|
||||
AC_ARG_WITH(
|
||||
@@ -32,35 +32,35 @@
|
||||
AS_IF(
|
||||
[test "x$panel" = xgnome2],
|
||||
[PKG_CHECK_MODULES(LIBPANEL, libpanelapplet-3.0 >= 2.32.0)]
|
||||
- LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=prefix libpanelapplet-3.0`/share/gnome-panel/applets
|
||||
- PLUGIN_DIR=`$PKG_CONFIG --variable=prefix libpanelapplet-3.0`/libexec
|
||||
+ LIBPANEL_APPLET_DIR=${prefix}/share/gnome-panel/applets
|
||||
+ PLUGIN_DIR=${prefix}/libexec
|
||||
+ LIBPANEL_APPLET_DIR=$prefix/share/gnome-panel/applets
|
||||
+ PLUGIN_DIR=$prefix/libexec
|
||||
[AC_DEFINE(PANEL_GNOME, 1, [panel type])]
|
||||
[AC_DEFINE(PANEL_GNOME2, 1, [panel type])]
|
||||
,
|
||||
[test "x$panel" = xgnome3],
|
||||
[PKG_CHECK_MODULES(LIBPANEL, libpanelapplet-4.0 >= 3.0.0)]
|
||||
LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=libpanel_applet_dir libpanelapplet-4.0`
|
||||
- LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=libpanel_applet_dir libpanelapplet-4.0`
|
||||
- PLUGIN_DIR=`$PKG_CONFIG --variable=prefix libpanelapplet-4.0`/libexec
|
||||
+ PLUGIN_DIR=${prefix}/libexec
|
||||
+ LIBPANEL_APPLET_DIR=`$PKG_CONFIG --define-variable=prefix=$prefix --variable=libpanel_applet_dir libpanelapplet-4.0`
|
||||
+ PLUGIN_DIR=$prefix/libexec
|
||||
[AC_DEFINE(PANEL_GNOME, 1, [panel type])]
|
||||
[AC_DEFINE(PANEL_GNOME3, 1, [panel type])]
|
||||
,
|
||||
[test "x$panel" = xgnomeflashback],
|
||||
[PKG_CHECK_MODULES(LIBPANEL, libpanel-applet >= 3.0.0)]
|
||||
- LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=libpanel_applet_dir libpanel-applet`
|
||||
- PLUGIN_DIR=`$PKG_CONFIG --variable=prefix libpanel-applet`/libexec
|
||||
+ LIBPANEL_APPLET_DIR=`$PKG_CONFIG --define-variable=prefix=$prefix --variable=libpanel_applet_dir libpanel-applet`
|
||||
+ PLUGIN_DIR=$prefix/libexec
|
||||
[AC_DEFINE(PANEL_GNOME, 1, [panel type])]
|
||||
[AC_DEFINE(PANEL_GNOMEFLASHBACK, 1, [panel type])]
|
||||
,
|
||||
[test "x$panel" = xmate],
|
||||
[PKG_CHECK_MODULES(LIBPANEL, libmatepanelapplet-3.0 >= 1.4.0)]
|
||||
- LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=prefix libmatepanelapplet-3.0`/share/mate-panel/applets
|
||||
- PLUGIN_DIR=`$PKG_CONFIG --variable=prefix libmatepanelapplet-3.0`/libexec
|
||||
+ LIBPANEL_APPLET_DIR=${prefix}/share/mate-panel/applets
|
||||
+ PLUGIN_DIR=${prefix}/libexec
|
||||
[PKG_CHECK_MODULES(LIBPANEL, libmatepanelapplet-4.0 >= 1.4.0)]
|
||||
- LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=prefix libmatepanelapplet-4.0`/share/mate-panel/applets
|
||||
- PLUGIN_DIR=`$PKG_CONFIG --variable=prefix libmatepanelapplet-4.0`/libexec
|
||||
+ LIBPANEL_APPLET_DIR=$prefix/share/mate-panel/applets
|
||||
+ PLUGIN_DIR=$prefix/libexec
|
||||
[AC_DEFINE(PANEL_MATE, 1, [panel type])]
|
||||
,
|
||||
[test "x$panel" = xxfce4],
|
||||
[PKG_CHECK_MODULES(LIBPANEL, libxfce4panel-1.0 >= 4.6.0)]
|
||||
- LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=prefix libxfce4panel-1.0`/share/xfce4/panel-plugins
|
||||
- PLUGIN_DIR=`$PKG_CONFIG --variable=libdir libxfce4panel-1.0`/xfce4/panel/plugins
|
||||
+ LIBPANEL_APPLET_DIR=${prefix}/share/xfce4/panel-plugins
|
||||
+ PLUGIN_DIR=${prefix}/lib/xfce4/panel/plugins
|
||||
+ LIBPANEL_APPLET_DIR=$prefix/share/xfce4/panel-plugins
|
||||
+ PLUGIN_DIR=`$PKG_CONFIG --define-variable=prefix=$prefix --variable=libdir libxfce4panel-1.0`/xfce4/panel/plugins
|
||||
[AC_DEFINE(PANEL_XFCE4, 1, [panel type])]
|
||||
,
|
||||
[AC_MSG_ERROR([Unknown panel type, use gnome2, gnome3, mate or xfce4])]
|
||||
[AC_MSG_ERROR([Unknown panel type, use gnome2, gnome3, gnomeflashback, mate or xfce4])]
|
||||
|
@ -8,12 +8,7 @@ let overridden = set // overrides; set = with overridden; {
|
||||
startupnotification = libstartup_notification;
|
||||
gnomedocutils = self.gnome-doc-utils;
|
||||
gnomeicontheme = self.gnome_icon_theme;
|
||||
gnomepanel = self.gnome_panel;
|
||||
gnome_common = gnome-common;
|
||||
gnome_keyring = gnome-keyring;
|
||||
gnome_desktop = gnome-desktop;
|
||||
gnome_settings_daemon = gnome-settings-daemon;
|
||||
gnome_control_center = gnome-control-center;
|
||||
inherit rarian;
|
||||
|
||||
#### PLATFORM
|
||||
@ -58,8 +53,6 @@ let overridden = set // overrides; set = with overridden; {
|
||||
|
||||
gnome_vfs = callPackage ./platform/gnome-vfs { };
|
||||
|
||||
gnome_vfs_monikers = callPackage ./platform/gnome-vfs-monikers { };
|
||||
|
||||
libgnome = callPackage ./platform/libgnome { };
|
||||
|
||||
libgnomeui = callPackage ./platform/libgnomeui { };
|
||||
@ -68,8 +61,6 @@ let overridden = set // overrides; set = with overridden; {
|
||||
|
||||
libbonoboui = callPackage ./platform/libbonoboui { };
|
||||
|
||||
at_spi = callPackage ./platform/at-spi { };
|
||||
|
||||
gtkhtml = callPackage ./platform/gtkhtml { };
|
||||
|
||||
gtkhtml4 = callPackage ./platform/gtkhtml/4.x.nix { };
|
||||
@ -83,31 +74,11 @@ let overridden = set // overrides; set = with overridden; {
|
||||
|
||||
#### DESKTOP
|
||||
|
||||
gnome-keyring = callPackage ./desktop/gnome-keyring { };
|
||||
|
||||
libgweather = callPackage ./desktop/libgweather { };
|
||||
|
||||
gvfs = gvfs.override { gnome = self; };
|
||||
|
||||
libgnomekbd = callPackage ./desktop/libgnomekbd { };
|
||||
|
||||
# Removed from recent GNOME releases, but still required
|
||||
scrollkeeper = callPackage ./desktop/scrollkeeper { };
|
||||
|
||||
zenity = callPackage ./desktop/zenity { };
|
||||
|
||||
metacity = callPackage ./desktop/metacity { };
|
||||
|
||||
gnome_menus = callPackage ./desktop/gnome-menus { };
|
||||
|
||||
gnome-desktop = callPackage ./desktop/gnome-desktop { };
|
||||
|
||||
gnome_panel = callPackage ./desktop/gnome-panel { };
|
||||
|
||||
gnome-settings-daemon = callPackage ./desktop/gnome-settings-daemon { };
|
||||
|
||||
gnome-control-center = callPackage ./desktop/gnome-control-center { };
|
||||
|
||||
gtksourceview = callPackage ./desktop/gtksourceview { };
|
||||
|
||||
gnome_icon_theme = callPackage ./desktop/gnome-icon-theme { };
|
||||
|
@ -1,22 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, dbus-glib, libxml2Python, libxslt, libxklavier, popt, which, python
|
||||
, shared-mime-info, desktop-file-utils, libunique, libtool, bzip2
|
||||
, gtk, gnome-doc-utils, intltool, GConf, libglade, libgnomeui, libgnomekbd
|
||||
, librsvg, gnome_menus, gnome-desktop, gnome_panel, metacity, gnome-settings-daemon
|
||||
, libSM, docbook_xml_dtd_412 }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gnome-control-center-2.32.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gnome-control-center/2.32/gnome-control-center-2.32.1.tar.bz2;
|
||||
sha256 = "0rkyg6naidql0nv74608mlsr2lzjgnndnxnxv3s0hp4f6mbqnmkw";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ dbus-glib libxml2Python libxslt libxklavier popt which python shared-mime-info desktop-file-utils
|
||||
gtk gnome-doc-utils intltool GConf libglade libgnomekbd libunique libtool bzip2
|
||||
libgnomeui librsvg gnome_menus gnome-desktop gnome_panel metacity gnome-settings-daemon
|
||||
libSM docbook_xml_dtd_412
|
||||
];
|
||||
configureFlags = "--disable-scrollkeeper";
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, python, libxml2Python, libxslt, which, libX11, gtk
|
||||
, intltool, GConf, gnome-doc-utils}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gnome-desktop-2.32.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gnome-desktop/2.32/gnome-desktop-2.32.1.tar.bz2;
|
||||
sha256 = "17bkng6ay37n3492lr9wpb49kms6gh554rn9gbjs27zygvvfrjsm";
|
||||
};
|
||||
|
||||
configureFlags = "--disable-scrollkeeper";
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ python libxml2Python libxslt which libX11 gtk
|
||||
intltool GConf gnome-doc-utils ];
|
||||
}
|
@ -1,17 +0,0 @@
|
||||
{stdenv, fetchurl, pkgconfig, dbus, libgcrypt, libtasn1, pam, python, glib,
|
||||
gtk, intltool, GConf, libgnome-keyring }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gnome-keyring-2.30.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gnome-keyring/2.30/gnome-keyring-2.30.3.tar.bz2;
|
||||
sha256 = "02r9gv3a4a705jf3h7c0bizn33c73wz0iw2500m7z291nrnmqkmj";
|
||||
};
|
||||
|
||||
buildInputs = [ dbus libgcrypt pam python gtk GConf libgnome-keyring ];
|
||||
|
||||
propagatedBuildInputs = [ glib libtasn1 ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool ];
|
||||
}
|
@ -1,13 +0,0 @@
|
||||
{stdenv, fetchurl, pkgconfig, python, glib, intltool}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gnome-menus-2.30.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gnome-menus/2.30/gnome-menus-2.30.5.tar.bz2;
|
||||
sha256 = "1ajckii51spmkgfc0168c56x0syz5vwb2fp8b81c5s6n0r85dk3d";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ python glib intltool ];
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, dbus-glib, popt, which, libxml2Python, libxslt, bzip2, python
|
||||
, gtk, libXau, libcanberra-gtk2
|
||||
, intltool, ORBit2, libglade, libgnome, libgnomeui, libbonobo, libbonoboui, GConf, gnome_menus, gnome-desktop
|
||||
, libwnck, librsvg, libgweather, gnome-doc-utils, libtasn1, libtool, xorg }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gnome-panel-2.32.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gnome-panel/2.32/gnome-panel-2.32.1.tar.bz2;
|
||||
sha256 = "0pyakxyixmcp1yhi8r1q6adhamh2waj48y397fkigj11gbmjhy4g";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
[ gtk dbus-glib popt libxml2Python libxslt bzip2 python libXau intltool
|
||||
ORBit2 libglade libgnome libgnomeui libbonobo libbonoboui GConf
|
||||
gnome_menus gnome-desktop libwnck librsvg libgweather gnome-doc-utils
|
||||
libtasn1 libtool libcanberra-gtk2 xorg.libICE xorg.libSM
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool which ];
|
||||
|
||||
configureFlags = [ "--disable-scrollkeeper" "--disable-introspection"/*not useful AFAIK*/ ];
|
||||
|
||||
NIX_CFLAGS_COMPILE="-I${GConf.dev}/include/gconf/2";
|
||||
}
|
@ -1,19 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, dbus-glib, libxklavier, gtk
|
||||
, intltool, GConf, gnome-desktop, libglade, libgnomekbd, polkit, libpulseaudio
|
||||
, libSM }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gnome-settings-daemon-2.32.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gnome-settings-daemon/2.32/gnome-settings-daemon-2.32.1.tar.bz2;
|
||||
sha256 = "11jyn10w2p2a76pjrkd0pjl1w406df821p053awklvmdqgzb6x00";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
[ dbus-glib libxklavier gtk GConf gnome-desktop libglade libgnomekbd polkit
|
||||
libpulseaudio libSM
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool ];
|
||||
}
|
@ -1,13 +0,0 @@
|
||||
{stdenv, fetchurl, pkgconfig, dbus-glib, libxklavier, glib, gtk, intltool, GConf, libglade}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "libgnomekbd-2.32.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/libgnomekbd/2.32/libgnomekbd-2.32.0.tar.bz2;
|
||||
sha256 = "0mnjhdryx94c106fghzz01dyc1vlp16wn6sajvpxffnqqx62rmfx";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ dbus-glib libxklavier glib gtk intltool GConf libglade ];
|
||||
}
|
@ -1,14 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libxml2, gtk, intltool, GConf, libsoup, libtasn1, nettle, gmp }:
|
||||
|
||||
assert stdenv ? glibc;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libgweather-2.30.3";
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/libgweather/2.30/${name}.tar.bz2";
|
||||
sha256 = "0k16lpdyy8as8wgc5dqpy5b8i9i4mrl77qx8db23fgs2c533fddq";
|
||||
};
|
||||
configureFlags = "--with-zoneinfo-dir=${stdenv.glibc}/share/zoneinfo";
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ libxml2 gtk intltool GConf libsoup libtasn1 nettle gmp ];
|
||||
}
|
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ glib dbus-glib gmime libnotify libgnome-keyring openssl cyrus_sasl gnonlin sylpheed gob2 gettext intltool gnome2.GConf gnome2.libgnomeui dbus-glib gmime libnotify gnome2.gnome-keyring gnome2.scrollkeeper libxml2 gnome2.gnome_icon_theme hicolor-icon-theme tango-icon-theme ];
|
||||
buildInputs = [ glib dbus-glib gmime libnotify libgnome-keyring openssl cyrus_sasl gnonlin sylpheed gob2 gettext intltool gnome2.GConf gnome2.libgnomeui dbus-glib gmime libnotify gnome2.scrollkeeper libxml2 gnome2.gnome_icon_theme hicolor-icon-theme tango-icon-theme ];
|
||||
|
||||
prePatch = ''
|
||||
sed -i -e '/jb_rule_set_install_message/d' -e '/jb_rule_add_install_command/d' jbsrc/jb.c
|
||||
|
@ -1,18 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, glib, gtk, libXcomposite, libXcursor, libXdamage
|
||||
, libcanberra-gtk2, intltool, GConf, startup_notification, zenity, gnome-doc-utils
|
||||
, gsettings-desktop-schemas }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "metacity-2.30.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/metacity/2.30/metacity-2.30.3.tar.bz2;
|
||||
sha256 = "1p8qzj967mmlwdl6gv9vb2vzs19czvivl0sd337lgr55iw0qgy08";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig glib gtk libXcomposite libXcursor libXdamage libcanberra-gtk2
|
||||
intltool GConf startup_notification zenity gnome-doc-utils
|
||||
gsettings-desktop-schemas
|
||||
];
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libxml2, libxslt, gtk
|
||||
, gnome-doc-utils, intltool, libglade, libX11, which, docbook_xml_dtd_412 }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "zenity-2.32.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/zenity/2.32/zenity-2.32.1.tar.bz2;
|
||||
sha256 = "1b0qxb07wif0ds1pl8xk3fq9p874j89rf718lii4ndh7382bwf48";
|
||||
};
|
||||
|
||||
configureFlags = "--disable-scrollkeeper";
|
||||
buildInputs = [ gtk libglade libxml2 libxslt libX11 docbook_xml_dtd_412 ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool gnome-doc-utils which ];
|
||||
|
||||
doCheck = false; # fails, tries to access the net
|
||||
}
|
@ -1,17 +0,0 @@
|
||||
{ stdenv, fetchurl, python, pkgconfig, popt, atk, gtk, libX11, libICE, libXtst, libXi
|
||||
, intltool, libbonobo, ORBit2, GConf, dbus-glib }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "at-spi-1.32.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/at-spi/1.32/at-spi-1.32.0.tar.bz2;
|
||||
sha256 = "0fbh0afzw1gm4r2w68b8l0vhnia1qyzdl407vyxfw4v4fkm1v16c";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ python popt atk gtk libX11 libICE libXtst libXi
|
||||
intltool libbonobo ORBit2 GConf dbus-glib ];
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
{stdenv, fetchurl, pkgconfig, glib, intltool, gnome_vfs, libbonobo}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gnome-vfs-monikers-2.15.3";
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gnome-vfs-monikers/2.15/gnome-vfs-monikers-2.15.3.tar.bz2;
|
||||
sha256 = "0gpgk5vwhgqfhrd8pf1314kh7sv3jfqll2xbdbrs5s5sxy3v7b15";
|
||||
};
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ glib intltool gnome_vfs libbonobo ];
|
||||
}
|
@ -1,27 +1,26 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libxslt, which, libX11, gnome3, gtk3, glib
|
||||
, intltool, gnome-doc-utils, xkeyboard_config, isocodes, itstool, wayland
|
||||
, libseccomp, bubblewrap, gobjectIntrospection }:
|
||||
, intltool, libxml2, xkeyboard_config, isocodes, itstool, wayland
|
||||
, libseccomp, bubblewrap, gobjectIntrospection, gtk-doc, docbook_xsl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gnome-desktop-${version}";
|
||||
version = "3.28.2";
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gnome-desktop/${gnome3.versionBranch version}/${name}.tar.xz";
|
||||
sha256 = "0c439hhpfd9axmv4af6fzhibksh69pnn2nnbghbbqqbwy6zqfl30";
|
||||
};
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript { packageName = "gnome-desktop"; attrPath = "gnome3.gnome-desktop"; };
|
||||
};
|
||||
|
||||
# this should probably be setuphook for glib
|
||||
# TODO: remove with 3.30
|
||||
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgconfig which itstool intltool libxslt gnome-doc-utils gobjectIntrospection
|
||||
pkgconfig which itstool intltool libxslt libxml2 gobjectIntrospection
|
||||
gtk-doc docbook_xsl
|
||||
];
|
||||
buildInputs = [
|
||||
libX11 bubblewrap xkeyboard_config isocodes wayland
|
||||
@ -34,11 +33,22 @@ stdenv.mkDerivation rec {
|
||||
./bubblewrap-paths.patch
|
||||
];
|
||||
|
||||
configureFlags = [
|
||||
"--enable-gtk-doc"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace libgnome-desktop/gnome-desktop-thumbnail-script.c --subst-var-by \
|
||||
BUBBLEWRAP_BIN "${bubblewrap}/bin/bwrap"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = "gnome-desktop";
|
||||
attrPath = "gnome3.gnome-desktop";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Library with common API for various GNOME modules";
|
||||
license = with licenses; [ gpl2 lgpl2 ];
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libxml2, gnome3
|
||||
, gnome-doc-utils, intltool, which, libuuid, vala
|
||||
, desktop-file-utils, itstool, wrapGAppsHook, appdata-tools }:
|
||||
{ stdenv, fetchurl, pkgconfig, libxml2, gnome3, dconf, nautilus
|
||||
, gtk, gsettings-desktop-schemas, vte, intltool, which, libuuid, vala
|
||||
, desktop-file-utils, itstool, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gnome-terminal-${version}";
|
||||
@ -11,15 +11,16 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0ybjansg6lr279191w8z8r45gy4rxwzw1ajm98cgkv0fk2jdr0x2";
|
||||
};
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript { packageName = "gnome-terminal"; attrPath = "gnome3.gnome-terminal"; };
|
||||
};
|
||||
buildInputs = [
|
||||
gtk gsettings-desktop-schemas vte libuuid dconf
|
||||
# For extension
|
||||
nautilus
|
||||
];
|
||||
|
||||
buildInputs = [ gnome3.gtk gnome3.gsettings-desktop-schemas gnome3.vte appdata-tools
|
||||
gnome3.dconf itstool gnome3.nautilus ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool gnome-doc-utils which libuuid libxml2
|
||||
vala desktop-file-utils wrapGAppsHook ];
|
||||
nativeBuildInputs = [
|
||||
pkgconfig intltool itstool which libxml2
|
||||
vala desktop-file-utils wrapGAppsHook
|
||||
];
|
||||
|
||||
# Silly ./configure, it looks for dbus file from gnome-shell in the
|
||||
# installation tree of the package it is configuring.
|
||||
@ -28,15 +29,22 @@ stdenv.mkDerivation rec {
|
||||
substituteInPlace src/Makefile.in --replace '$(dbusinterfacedir)/org.gnome.ShellSearchProvider2.xml' "${gnome3.gnome-shell}/share/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml"
|
||||
'';
|
||||
|
||||
# FIXME: enable for gnome3
|
||||
configureFlags = [ "--disable-migration" ];
|
||||
configureFlags = [ "--disable-migration" ]; # TODO: remove this with 3.30
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = "gnome-terminal";
|
||||
attrPath = "gnome3.gnome-terminal";
|
||||
};
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "The GNOME Terminal Emulator";
|
||||
homepage = https://wiki.gnome.org/Apps/Terminal/;
|
||||
homepage = https://wiki.gnome.org/Apps/Terminal;
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ stdenv, intltool, fetchFromGitLab, pkgconfig, gtk3, defaultIconTheme
|
||||
, glib, desktop-file-utils, appdata-tools, gtk-doc, autoconf, automake, libtool
|
||||
, wrapGAppsHook, gnome3, itstool, libxml2
|
||||
{ stdenv, intltool, fetchFromGitLab, fetchpatch, pkgconfig, gtk3, defaultIconTheme
|
||||
, glib, desktop-file-utils, gtk-doc, autoconf, automake, libtool
|
||||
, wrapGAppsHook, gnome3, itstool, libxml2, yelp-tools
|
||||
, docbook_xsl, docbook_xml_dtd_412, gsettings-desktop-schemas
|
||||
, callPackage, unzip, gobjectIntrospection }:
|
||||
|
||||
let
|
||||
@ -9,6 +10,8 @@ in stdenv.mkDerivation rec {
|
||||
name = "gucharmap-${version}";
|
||||
version = "11.0.1";
|
||||
|
||||
outputs = [ "out" "lib" "dev" "devdoc" ];
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "GNOME";
|
||||
@ -17,16 +20,26 @@ in stdenv.mkDerivation rec {
|
||||
sha256 = "13iw4fa6mv8vi8bkwk0bbhamnzbaih0c93p4rh07khq6mxa6hnpi";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgconfig wrapGAppsHook unzip intltool itstool appdata-tools
|
||||
autoconf automake libtool gtk-doc
|
||||
gnome3.yelp-tools libxml2 desktop-file-utils gobjectIntrospection
|
||||
patches = [
|
||||
# Fix locale path to allow split outputs
|
||||
# https://gitlab.gnome.org/GNOME/gucharmap/issues/10
|
||||
(fetchpatch {
|
||||
url = https://gitlab.gnome.org/GNOME/gucharmap/commit/b2b03f16aa869ac0ec1a05c55c4d4e4c4b513576.patch;
|
||||
sha256 = "1543mcyz96x23m9pzx04ny15m4a2pqmiksl1y5r51k3sw4fyisci";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ gtk3 glib gnome3.gsettings-desktop-schemas defaultIconTheme ];
|
||||
nativeBuildInputs = [
|
||||
pkgconfig wrapGAppsHook unzip intltool itstool
|
||||
autoconf automake libtool gtk-doc docbook_xsl docbook_xml_dtd_412
|
||||
yelp-tools libxml2 desktop-file-utils gobjectIntrospection
|
||||
];
|
||||
|
||||
buildInputs = [ gtk3 glib gsettings-desktop-schemas defaultIconTheme ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-unicode-data=${unicode-data}"
|
||||
"--enable-gtk-doc"
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
@ -187,31 +187,31 @@ lib.makeScope pkgs.newScope (self: with self; {
|
||||
nautilus = callPackage ./core/nautilus { };
|
||||
|
||||
networkmanager-openvpn = pkgs.networkmanager-openvpn.override {
|
||||
inherit gnome3;
|
||||
withGnome = true;
|
||||
};
|
||||
|
||||
networkmanager-vpnc = pkgs.networkmanager-vpnc.override {
|
||||
inherit gnome3;
|
||||
withGnome = true;
|
||||
};
|
||||
|
||||
networkmanager-openconnect = pkgs.networkmanager-openconnect.override {
|
||||
inherit gnome3;
|
||||
withGnome = true;
|
||||
};
|
||||
|
||||
networkmanager-fortisslvpn = pkgs.networkmanager-fortisslvpn.override {
|
||||
inherit gnome3;
|
||||
withGnome = true;
|
||||
};
|
||||
|
||||
networkmanager-l2tp = pkgs.networkmanager-l2tp.override {
|
||||
inherit gnome3;
|
||||
withGnome = true;
|
||||
};
|
||||
|
||||
networkmanager-iodine = pkgs.networkmanager-iodine.override {
|
||||
inherit gnome3;
|
||||
withGnome = true;
|
||||
};
|
||||
|
||||
networkmanagerapplet = pkgs.networkmanagerapplet.override {
|
||||
inherit gnome3 gsettings-desktop-schemas glib-networking;
|
||||
withGnome = true;
|
||||
};
|
||||
|
||||
rest = callPackage ./core/rest { };
|
||||
@ -373,10 +373,18 @@ lib.makeScope pkgs.newScope (self: with self; {
|
||||
|
||||
gexiv2 = callPackage ./misc/gexiv2 { };
|
||||
|
||||
gnome-applets = callPackage ./misc/gnome-applets { };
|
||||
|
||||
gnome-flashback = callPackage ./misc/gnome-flashback { };
|
||||
|
||||
gnome-panel = callPackage ./misc/gnome-panel { };
|
||||
|
||||
gnome-tweaks = callPackage ./misc/gnome-tweaks { };
|
||||
|
||||
gpaste = callPackage ./misc/gpaste { };
|
||||
|
||||
metacity = callPackage ./misc/metacity { };
|
||||
|
||||
pidgin-im-gnome-shell-extension = callPackage ./misc/pidgin { };
|
||||
|
||||
gtkhtml = callPackage ./misc/gtkhtml { };
|
||||
|
110
pkgs/desktops/gnome-3/misc/gnome-applets/default.nix
Normal file
110
pkgs/desktops/gnome-3/misc/gnome-applets/default.nix
Normal file
@ -0,0 +1,110 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, autoreconfHook
|
||||
, intltool
|
||||
, itstool
|
||||
, libxml2
|
||||
, libxslt
|
||||
, pkgconfig
|
||||
, gnome-panel
|
||||
, gtk3
|
||||
, glib
|
||||
, libwnck3
|
||||
, libgtop
|
||||
, libnotify
|
||||
, upower
|
||||
, dbus-glib
|
||||
, wirelesstools
|
||||
, linuxPackages
|
||||
, adwaita-icon-theme
|
||||
, libgweather
|
||||
, gucharmap
|
||||
, gnome-settings-daemon
|
||||
, tracker
|
||||
, polkit
|
||||
, gnome3
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "gnome-applets";
|
||||
version = "3.28.0";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
|
||||
sha256 = "0wd6pirv57rcxm5d32r1s3ni7sp26gnqd4qhjciw0pn5ak627y5h";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://github.com/NixOS/nixpkgs/issues/36468
|
||||
# https://gitlab.gnome.org/GNOME/gnome-applets/issues/3
|
||||
(fetchpatch {
|
||||
url = https://gitlab.gnome.org/GNOME/gnome-applets/commit/1ee719581c33d7d640ae9f656e4e9b192bafef78.patch;
|
||||
sha256 = "05wim7d2ii3pxph3n3am76cvnxmkfpggk0cpy8p5xgm3hcibwfrf";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = https://gitlab.gnome.org/GNOME/gnome-applets/commit/1fa778b01f0e6b70678b0e5755ca0ed7a093fa75.patch;
|
||||
sha256 = "0kppqywn0ab18p64ixz0b58cn5bpqf0xy71bycldlc5ybpdx5mq0";
|
||||
})
|
||||
|
||||
# https://gitlab.gnome.org/GNOME/gnome-applets/issues/4
|
||||
(fetchpatch {
|
||||
url = https://gitlab.gnome.org/GNOME/gnome-applets/commit/e14482a90e6113f211e9328d8c39a69bdf5111d8.patch;
|
||||
sha256 = "10ac0kk38hxqh8yvdlriyyv809qrxbpy9ihp01gizhiw7qpz97ff";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
intltool
|
||||
itstool
|
||||
pkgconfig
|
||||
libxml2
|
||||
libxslt
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gnome-panel
|
||||
gtk3
|
||||
glib
|
||||
libxml2
|
||||
libwnck3
|
||||
libgtop
|
||||
libnotify
|
||||
upower
|
||||
dbus-glib
|
||||
adwaita-icon-theme
|
||||
libgweather
|
||||
gucharmap
|
||||
gnome-settings-daemon
|
||||
tracker
|
||||
polkit
|
||||
wirelesstools
|
||||
linuxPackages.cpupower
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
configureFlags = [
|
||||
"--with-libpanel-applet-dir=$(out)/share/gnome-panel/applets"
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "gnome3.${pname}";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Applets for use with the GNOME panel";
|
||||
homepage = https://wiki.gnome.org/Projects/GnomeApplets;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
92
pkgs/desktops/gnome-3/misc/gnome-flashback/default.nix
Normal file
92
pkgs/desktops/gnome-3/misc/gnome-flashback/default.nix
Normal file
@ -0,0 +1,92 @@
|
||||
{ stdenv
|
||||
, autoreconfHook
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, gettext
|
||||
, glib
|
||||
, gnome-bluetooth
|
||||
, gnome-desktop
|
||||
, gnome-session
|
||||
, gnome3
|
||||
, gsettings-desktop-schemas
|
||||
, gtk
|
||||
, ibus
|
||||
, intltool
|
||||
, libcanberra-gtk3
|
||||
, libpulseaudio
|
||||
, libxkbfile
|
||||
, libxml2
|
||||
, metacity
|
||||
, pkgconfig
|
||||
, polkit
|
||||
, substituteAll
|
||||
, upower
|
||||
, xkeyboard_config }:
|
||||
|
||||
let
|
||||
pname = "gnome-flashback";
|
||||
version = "3.28.0";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
|
||||
sha256 = "1ra8bfwgwqw47zx2h1q999g7l4dnqh7sv02if3zk8pkw3sm769hg";
|
||||
};
|
||||
|
||||
patches =[
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit metacity;
|
||||
gnomeSession = gnome-session;
|
||||
})
|
||||
|
||||
# https://github.com/NixOS/nixpkgs/issues/36468
|
||||
# https://gitlab.gnome.org/GNOME/gnome-flashback/issues/3
|
||||
(fetchpatch {
|
||||
url = https://gitlab.gnome.org/GNOME/gnome-flashback/commit/eabd34f64adc43b8783920bd7a2177ce21f83fbc.patch;
|
||||
sha256 = "116c5zy8cp7d06mrsn943q7vj166086jzrfzfqg7yli14pmf9w1a";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
gettext
|
||||
libxml2
|
||||
pkgconfig
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gnome-bluetooth
|
||||
gnome-desktop
|
||||
gsettings-desktop-schemas
|
||||
gtk
|
||||
ibus
|
||||
libcanberra-gtk3
|
||||
libpulseaudio
|
||||
libxkbfile
|
||||
polkit
|
||||
upower
|
||||
xkeyboard_config
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "gnome3.${pname}";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "GNOME 2.x-like session for GNOME 3";
|
||||
homepage = https://wiki.gnome.org/Projects/GnomeFlashback;
|
||||
license = licenses.gpl2;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
30
pkgs/desktops/gnome-3/misc/gnome-flashback/fix-paths.patch
Normal file
30
pkgs/desktops/gnome-3/misc/gnome-flashback/fix-paths.patch
Normal file
@ -0,0 +1,30 @@
|
||||
--- a/data/Makefile.am
|
||||
+++ b/data/Makefile.am
|
||||
@@ -22,7 +22,7 @@
|
||||
echo 'if [ -z $$XDG_CURRENT_DESKTOP ]; then' && \
|
||||
echo ' export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"' && \
|
||||
echo 'fi' && echo '' && \
|
||||
- echo 'exec gnome-session --session=gnome-flashback-compiz "$$@"') > $@
|
||||
+ echo 'exec @gnomeSession@/bin/gnome-session --session=gnome-flashback-compiz "$$@"') > $@
|
||||
$(AM_V_at) chmod a+x $@
|
||||
|
||||
gnome-flashback-metacity: Makefile
|
||||
@@ -30,7 +30,7 @@
|
||||
echo 'if [ -z $$XDG_CURRENT_DESKTOP ]; then' && \
|
||||
echo ' export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"' && \
|
||||
echo 'fi' && echo '' && \
|
||||
- echo 'exec gnome-session --session=gnome-flashback-metacity --disable-acceleration-check "$$@"') > $@
|
||||
+ echo 'exec @gnomeSession@/bin/gnome-session --session=gnome-flashback-metacity --disable-acceleration-check "$$@"') > $@
|
||||
$(AM_V_at) chmod a+x $@
|
||||
|
||||
CLEANFILES = \
|
||||
--- a/data/xsessions/gnome-flashback-metacity.desktop.in.in
|
||||
+++ b/data/xsessions/gnome-flashback-metacity.desktop.in.in
|
||||
@@ -2,6 +2,6 @@
|
||||
Name=GNOME Flashback (Metacity)
|
||||
Comment=This session logs you into GNOME Flashback with Metacity
|
||||
Exec=@libexecdir@/gnome-flashback-metacity
|
||||
-TryExec=metacity
|
||||
+TryExec=@metacity@/bin/metacity
|
||||
Type=Application
|
||||
DesktopNames=GNOME-Flashback;GNOME;
|
92
pkgs/desktops/gnome-3/misc/gnome-panel/default.nix
Normal file
92
pkgs/desktops/gnome-3/misc/gnome-panel/default.nix
Normal file
@ -0,0 +1,92 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, autoreconfHook
|
||||
, fetchpatch
|
||||
, dconf
|
||||
, evolution-data-server
|
||||
, gdm
|
||||
, gettext
|
||||
, glib
|
||||
, gnome-desktop
|
||||
, gnome-menus
|
||||
, gnome3
|
||||
, gtk
|
||||
, itstool
|
||||
, libgweather
|
||||
, libsoup
|
||||
, libwnck3
|
||||
, libxml2
|
||||
, pkgconfig
|
||||
, polkit
|
||||
, systemd
|
||||
, wrapGAppsHook }:
|
||||
|
||||
let
|
||||
pname = "gnome-panel";
|
||||
version = "3.28.0";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
outputs = [ "out" "dev" "man" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
|
||||
sha256 = "1004cp9cxqpic9lsraqn5c1739acn4sn4ql3c1fja99hv22h1ziv";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://github.com/NixOS/nixpkgs/issues/36468
|
||||
# https://gitlab.gnome.org/GNOME/gnome-panel/issues/6
|
||||
(fetchpatch {
|
||||
url = https://gitlab.gnome.org/GNOME/gnome-panel/commit/be26e170a10c297949a6d9f3cbc70b6caaf04b56.patch;
|
||||
sha256 = "10gxl9fwbv5j0s1lz7gkz6wqpda5wfzs49r5khbk1h05lv0hk4l4";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
gettext
|
||||
itstool
|
||||
libxml2
|
||||
pkgconfig
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dconf
|
||||
evolution-data-server
|
||||
gdm
|
||||
glib
|
||||
gnome-desktop
|
||||
gnome-menus
|
||||
gtk
|
||||
libgweather
|
||||
libsoup
|
||||
libwnck3
|
||||
polkit
|
||||
systemd
|
||||
];
|
||||
|
||||
configureFlags = [
|
||||
"--enable-eds"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "gnome3.${pname}";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Component of Gnome Flashback that provides panels and default applets for the desktop";
|
||||
homepage = https://wiki.gnome.org/Projects/GnomePanel;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
70
pkgs/desktops/gnome-3/misc/metacity/default.nix
Normal file
70
pkgs/desktops/gnome-3/misc/metacity/default.nix
Normal file
@ -0,0 +1,70 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, gettext
|
||||
, glib
|
||||
, gnome3
|
||||
, gsettings-desktop-schemas
|
||||
, gtk
|
||||
, libcanberra-gtk3
|
||||
, libgtop
|
||||
, libstartup_notification
|
||||
, libxml2
|
||||
, pkgconfig
|
||||
, substituteAll
|
||||
, wrapGAppsHook
|
||||
, zenity }:
|
||||
|
||||
let
|
||||
pname = "metacity";
|
||||
version = "3.28.0";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
|
||||
sha256 = "0kzap0lzlkcgkna3h426xgwrn2zpipy8cfsxpfynnaf74vyas3aw";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit zenity;
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
gettext
|
||||
libxml2
|
||||
pkgconfig
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gsettings-desktop-schemas
|
||||
gtk
|
||||
libcanberra-gtk3
|
||||
libgtop
|
||||
libstartup_notification
|
||||
zenity
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "gnome3.${pname}";
|
||||
};
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Window manager used in Gnome Flashback";
|
||||
homepage = https://wiki.gnome.org/Projects/Metacity;
|
||||
license = licenses.gpl2;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
11
pkgs/desktops/gnome-3/misc/metacity/fix-paths.patch
Normal file
11
pkgs/desktops/gnome-3/misc/metacity/fix-paths.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/src/core/util.c
|
||||
+++ b/src/core/util.c
|
||||
@@ -424,7 +424,7 @@
|
||||
g_slist_length (columns)*2 +
|
||||
g_slist_length (entries)));
|
||||
|
||||
- argvl[i++] = "zenity";
|
||||
+ argvl[i++] = "@zenity@/bin/zenity";
|
||||
argvl[i++] = type;
|
||||
argvl[i++] = "--display";
|
||||
argvl[i++] = display;
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, pkgconfig, cmake, zlib, openssl, libsodium }:
|
||||
{ stdenv, fetchurl, fetchpatch, pkgconfig, cmake, zlib, openssl, libsodium }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libssh-0.7.5";
|
||||
@ -8,6 +8,16 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "15bh6dm9c50ndddzh3gqcgw7axp3ghrspjpkb1z3dr90vkanvs2l";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fix mysql-workbench compilation
|
||||
# https://bugs.mysql.com/bug.php?id=91923
|
||||
(fetchpatch {
|
||||
name = "include-fix-segfault-in-getissuebanner-add-missing-wrappers-in-libsshpp.patch";
|
||||
url = https://git.libssh.org/projects/libssh.git/patch/?id=5ea81166bf885d0fd5d4bb232fc22633f5aaf3c4;
|
||||
sha256 = "12q818l3nasqrfrsghxdvjcyya1bfcg0idvsf8xwm5zj7criln0a";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Fix headers to use libsodium instead of NaCl
|
||||
sed -i 's,nacl/,sodium/,g' ./include/libssh/curve25519.h src/curve25519.c
|
||||
|
@ -1,41 +1,79 @@
|
||||
{stdenv, fetchurl, jre}:
|
||||
{ stdenv, fetchurl, jre
|
||||
, fetchFromGitHub, cmake, ninja, pkgconfig, libuuid, darwin }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "antlr-${version}";
|
||||
let
|
||||
version = "4.7.1";
|
||||
src = fetchurl {
|
||||
url ="https://www.antlr.org/download/antlr-${version}-complete.jar";
|
||||
sha256 = "1236gwnzchama92apb2swmklnypj01m7bdwwfvwvl8ym85scw7gl";
|
||||
source = fetchFromGitHub {
|
||||
owner = "antlr";
|
||||
repo = "antlr4";
|
||||
rev = version;
|
||||
sha256 = "1xb4d9bd4hw406v85s64gg8gwcrrsrw171vhga1gz4xj6pzfwxz7";
|
||||
};
|
||||
|
||||
unpackPhase = "true";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out"/{share/java,bin}
|
||||
cp "$src" "$out/share/java/antlr-${version}-complete.jar"
|
||||
runtime = {
|
||||
cpp = stdenv.mkDerivation {
|
||||
name = "antlr-runtime-cpp-${version}";
|
||||
src = source;
|
||||
|
||||
echo "#! ${stdenv.shell}" >> "$out/bin/antlr"
|
||||
echo "'${jre}/bin/java' -cp '$out/share/java/antlr-${version}-complete.jar:$CLASSPATH' -Xmx500M org.antlr.v4.Tool \"\$@\"" >> "$out/bin/antlr"
|
||||
|
||||
echo "#! ${stdenv.shell}" >> "$out/bin/grun"
|
||||
echo "'${jre}/bin/java' -cp '$out/share/java/antlr-${version}-complete.jar:$CLASSPATH' org.antlr.v4.gui.TestRig \"\$@\"" >> "$out/bin/grun"
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
|
||||
chmod a+x "$out/bin/antlr" "$out/bin/grun"
|
||||
ln -s "$out/bin/antlr"{,4}
|
||||
'';
|
||||
nativeBuildInputs = [ cmake ninja pkgconfig ];
|
||||
buildInputs = stdenv.lib.optional stdenv.isLinux libuuid
|
||||
++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.CoreFoundation;
|
||||
|
||||
inherit jre;
|
||||
postUnpack = ''
|
||||
export sourceRoot=$sourceRoot/runtime/Cpp
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Powerful parser generator";
|
||||
longDescription = ''
|
||||
ANTLR (ANother Tool for Language Recognition) is a powerful parser
|
||||
generator for reading, processing, executing, or translating structured
|
||||
text or binary files. It's widely used to build languages, tools, and
|
||||
frameworks. From a grammar, ANTLR generates a parser that can build and
|
||||
walk parse trees.
|
||||
meta = with stdenv.lib; {
|
||||
description = "C++ target for ANTLR 4";
|
||||
homepage = http://www.antlr.org/;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
antlr = stdenv.mkDerivation {
|
||||
name = "antlr-${version}";
|
||||
src = fetchurl {
|
||||
url ="https://www.antlr.org/download/antlr-${version}-complete.jar";
|
||||
sha256 = "1236gwnzchama92apb2swmklnypj01m7bdwwfvwvl8ym85scw7gl";
|
||||
};
|
||||
|
||||
unpackPhase = "true";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out"/{share/java,bin}
|
||||
cp "$src" "$out/share/java/antlr-${version}-complete.jar"
|
||||
|
||||
echo "#! ${stdenv.shell}" >> "$out/bin/antlr"
|
||||
echo "'${jre}/bin/java' -cp '$out/share/java/antlr-${version}-complete.jar:$CLASSPATH' -Xmx500M org.antlr.v4.Tool \"\$@\"" >> "$out/bin/antlr"
|
||||
|
||||
echo "#! ${stdenv.shell}" >> "$out/bin/grun"
|
||||
echo "'${jre}/bin/java' -cp '$out/share/java/antlr-${version}-complete.jar:$CLASSPATH' org.antlr.v4.gui.TestRig \"\$@\"" >> "$out/bin/grun"
|
||||
|
||||
chmod a+x "$out/bin/antlr" "$out/bin/grun"
|
||||
ln -s "$out/bin/antlr"{,4}
|
||||
'';
|
||||
homepage = http://www.antlr.org/;
|
||||
platforms = platforms.unix;
|
||||
|
||||
inherit jre;
|
||||
|
||||
passthru = {
|
||||
inherit runtime;
|
||||
jarLocation = "${antlr}/share/java/antlr-${version}-complete.jar";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Powerful parser generator";
|
||||
longDescription = ''
|
||||
ANTLR (ANother Tool for Language Recognition) is a powerful parser
|
||||
generator for reading, processing, executing, or translating structured
|
||||
text or binary files. It's widely used to build languages, tools, and
|
||||
frameworks. From a grammar, ANTLR generates a parser that can build and
|
||||
walk parse trees.
|
||||
'';
|
||||
homepage = http://www.antlr.org/;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
};
|
||||
}
|
||||
in antlr
|
||||
|
@ -1,26 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, autoconf, automake, m4
|
||||
, intltool, glib, libsoup, gdk_pixbuf }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0_1_7";
|
||||
name = "appdata_tools-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/hughsie/appdata-tools/archive/appdata_tools_${version}.tar.gz";
|
||||
sha256 = "1bzqg4gy8gqhbk2qjizsm0b78li9mv84fb3d8qwfpxh7c7p360x8";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ autoconf automake m4 intltool glib
|
||||
libsoup gdk_pixbuf ];
|
||||
|
||||
configureScript = "./autogen.sh";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://people.freedesktop.org/~hughsient/appdata;
|
||||
description = "CLI designed to validate AppData descriptions for standards compliance and to the style guide";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
};
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchurl, meson, ninja, intltool, gtk-doc, pkgconfig, networkmanager, gnome3
|
||||
, libnotify, libsecret, polkit, isocodes, modemmanager, libxml2, docbook_xsl
|
||||
, mobile-broadband-provider-info, glib-networking, gsettings-desktop-schemas
|
||||
, libgudev, hicolor-icon-theme, jansson, wrapGAppsHook, webkitgtk, gobjectIntrospection
|
||||
, libgudev, jansson, wrapGAppsHook, gobjectIntrospection
|
||||
, libappindicator-gtk3, withGnome ? false }:
|
||||
|
||||
let
|
||||
@ -15,27 +15,28 @@ in stdenv.mkDerivation rec {
|
||||
sha256 = "0lmlkh4yyl9smvkgrzshn127zqfbp9f41f448ks8dlhhm38s38v2";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://gitlab.gnome.org/GNOME/network-manager-applet/merge_requests/19
|
||||
./libnm-gtk-mbpi.patch
|
||||
];
|
||||
|
||||
mesonFlags = [
|
||||
"-Dselinux=false"
|
||||
"-Dappindicator=yes"
|
||||
"-Dgcr=${if withGnome then "true" else "false"}"
|
||||
];
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
outputs = [ "out" "lib" "dev" "devdoc" "man" ];
|
||||
|
||||
buildInputs = [
|
||||
gnome3.gtk networkmanager libnotify libsecret gsettings-desktop-schemas
|
||||
polkit isocodes mobile-broadband-provider-info libgudev
|
||||
modemmanager jansson glib-networking
|
||||
libappindicator-gtk3
|
||||
] ++ stdenv.lib.optionals withGnome [ gnome3.gcr webkitgtk ];
|
||||
] ++ stdenv.lib.optionals withGnome [ gnome3.gcr ]; # advanced certificate chooser
|
||||
|
||||
nativeBuildInputs = [ meson ninja intltool pkgconfig wrapGAppsHook gobjectIntrospection gtk-doc docbook_xsl libxml2 ];
|
||||
|
||||
propagatedUserEnvPkgs = [
|
||||
hicolor-icon-theme
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
chmod +x meson_post_install.py # patchShebangs requires executable file
|
||||
patchShebangs meson_post_install.py
|
||||
|
@ -1,43 +0,0 @@
|
||||
{ stdenv, fetchurl, openfortivpn, automake, autoconf, libtool, intltool, pkgconfig,
|
||||
networkmanager, ppp, libsecret, withGnome ? true, gnome3 }:
|
||||
|
||||
let
|
||||
pname = "NetworkManager-fortisslvpn";
|
||||
version = "1.2.8";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "01gvdv9dknvzx05plq863jh1xz1v8vgj5w7v9fmw5v601ggybf4w";
|
||||
};
|
||||
|
||||
buildInputs = [ openfortivpn networkmanager ppp libtool libsecret ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk gnome3.libgnome-keyring gnome3.networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ automake autoconf intltool pkgconfig ];
|
||||
|
||||
configureFlags = [
|
||||
"${if withGnome then "--with-gnome" else "--without-gnome"}"
|
||||
"--disable-static"
|
||||
"--localstatedir=/tmp"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace "src/nm-fortisslvpn-service.c" \
|
||||
--replace "/bin/openfortivpn" "${openfortivpn}/bin/openfortivpn"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "networkmanager-fortisslvpn";
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "NetworkManager's FortiSSL plugin";
|
||||
inherit (networkmanager.meta) maintainers platforms;
|
||||
};
|
||||
}
|
||||
|
@ -0,0 +1,45 @@
|
||||
{ stdenv, fetchurl, substituteAll, openfortivpn, intltool, pkgconfig,
|
||||
networkmanager, ppp, libsecret, withGnome ? true, gnome3 }:
|
||||
|
||||
let
|
||||
pname = "NetworkManager-fortisslvpn";
|
||||
version = "1.2.8";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "01gvdv9dknvzx05plq863jh1xz1v8vgj5w7v9fmw5v601ggybf4w";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit openfortivpn;
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ openfortivpn networkmanager ppp ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk libsecret gnome3.networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-gnome=${if withGnome then "yes" else "no"}"
|
||||
"--localstatedir=/tmp"
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "networkmanager-fortisslvpn";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "NetworkManager's FortiSSL plugin";
|
||||
inherit (networkmanager.meta) maintainers platforms;
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
}
|
||||
|
@ -0,0 +1,11 @@
|
||||
--- a/src/nm-fortisslvpn-service.c
|
||||
+++ b/src/nm-fortisslvpn-service.c
|
||||
@@ -387,7 +387,7 @@
|
||||
{
|
||||
static const char *openfortivpn_binary_paths[] =
|
||||
{
|
||||
- "/bin/openfortivpn",
|
||||
+ "@openfortivpn@/bin/openfortivpn",
|
||||
"/usr/bin/openfortivpn",
|
||||
"/usr/local/bin/openfortivpn",
|
||||
NULL
|
@ -1,46 +0,0 @@
|
||||
{ stdenv, fetchurl, iodine, intltool, pkgconfig, networkmanager, libsecret
|
||||
, withGnome ? true, gnome3 }:
|
||||
|
||||
let
|
||||
pname = "NetworkManager-iodine";
|
||||
version = "1.2.0";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0njdigakidji6mfmbsp8lfi8wl88z1dk8cljbva2w0xazyddbwyh";
|
||||
};
|
||||
|
||||
buildInputs = [ iodine networkmanager libsecret ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk gnome3.libgnome-keyring
|
||||
gnome3.networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig ];
|
||||
|
||||
# Fixes deprecation errors with networkmanager 1.10.2
|
||||
NIX_CFLAGS_COMPILE = "-Wno-deprecated-declarations";
|
||||
|
||||
configureFlags = [
|
||||
"${if withGnome then "--with-gnome" else "--without-gnome"}"
|
||||
"--disable-static"
|
||||
"--localstatedir=/" # needed for the management socket under /run/NetworkManager
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace "src/nm-iodine-service.c" \
|
||||
--replace "/usr/bin/iodine" "${iodine}/bin/iodine"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "networkmanager-iodine";
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "NetworkManager's iodine plugin";
|
||||
inherit (networkmanager.meta) maintainers platforms;
|
||||
};
|
||||
}
|
47
pkgs/tools/networking/network-manager/iodine/default.nix
Normal file
47
pkgs/tools/networking/network-manager/iodine/default.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{ stdenv, fetchurl, substituteAll, iodine, intltool, pkgconfig, networkmanager, libsecret
|
||||
, withGnome ? true, gnome3 }:
|
||||
|
||||
let
|
||||
pname = "NetworkManager-iodine";
|
||||
version = "1.2.0";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0njdigakidji6mfmbsp8lfi8wl88z1dk8cljbva2w0xazyddbwyh";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit iodine;
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ iodine networkmanager ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk libsecret gnome3.networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig ];
|
||||
|
||||
# Fixes deprecation errors with networkmanager 1.10.2
|
||||
NIX_CFLAGS_COMPILE = "-Wno-deprecated-declarations";
|
||||
|
||||
configureFlags = [
|
||||
"--with-gnome=${if withGnome then "yes" else "no"}"
|
||||
"--localstatedir=/" # needed for the management socket under /run/NetworkManager
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "networkmanager-iodine";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "NetworkManager's iodine plugin";
|
||||
inherit (networkmanager.meta) maintainers platforms;
|
||||
license = licenses.gpl2Plus;
|
||||
};
|
||||
}
|
11
pkgs/tools/networking/network-manager/iodine/fix-paths.patch
Normal file
11
pkgs/tools/networking/network-manager/iodine/fix-paths.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/src/nm-iodine-service.c
|
||||
+++ b/src/nm-iodine-service.c
|
||||
@@ -62,7 +62,7 @@
|
||||
|
||||
static const char *iodine_binary_paths[] =
|
||||
{
|
||||
- "/usr/bin/iodine",
|
||||
+ "@iodine@/bin/iodine",
|
||||
"/usr/sbin/iodine",
|
||||
"/usr/local/bin/iodine",
|
||||
"/usr/local/sbin/iodine",
|
@ -1,52 +0,0 @@
|
||||
{ stdenv, fetchFromGitHub, autoreconfHook, libtool, intltool, pkgconfig
|
||||
, networkmanager, ppp, xl2tpd, strongswan, libsecret
|
||||
, withGnome ? true, gnome3, networkmanagerapplet }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
pname = "NetworkManager-l2tp";
|
||||
version = "1.2.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nm-l2tp";
|
||||
repo = "network-manager-l2tp";
|
||||
rev = "${version}";
|
||||
sha256 = "110157dpamgr7r5kb8aidi0a2ap9z2m52bff94fb4nhxacz69yv8";
|
||||
};
|
||||
|
||||
buildInputs = [ networkmanager ppp libsecret ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk gnome3.libgnome-keyring networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook libtool intltool pkgconfig ];
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e 's%"\(/usr/sbin\|/usr/pkg/sbin\|/usr/local/sbin\)/[^"]*",%%g' ./src/nm-l2tp-service.c
|
||||
|
||||
substituteInPlace ./Makefile.am \
|
||||
--replace '$(sysconfdir)/dbus-1/system.d' "$out/etc/dbus-1/system.d"
|
||||
|
||||
substituteInPlace ./src/nm-l2tp-service.c \
|
||||
--replace /sbin/ipsec ${strongswan}/bin/ipsec \
|
||||
--replace /sbin/xl2tpd ${xl2tpd}/bin/xl2tpd
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
intltoolize -f
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"--with-gnome=${if withGnome then "yes" else "no"}"
|
||||
"--localstatedir=/var"
|
||||
"--sysconfdir=$(out)/etc"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "L2TP plugin for NetworkManager";
|
||||
inherit (networkmanager.meta) platforms;
|
||||
homepage = https://github.com/nm-l2tp/network-manager-l2tp;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ abbradar obadz ];
|
||||
};
|
||||
}
|
48
pkgs/tools/networking/network-manager/l2tp/default.nix
Normal file
48
pkgs/tools/networking/network-manager/l2tp/default.nix
Normal file
@ -0,0 +1,48 @@
|
||||
{ stdenv, substituteAll, fetchFromGitHub, autoreconfHook, libtool, intltool, pkgconfig
|
||||
, networkmanager, ppp, xl2tpd, strongswan, libsecret
|
||||
, withGnome ? true, gnome3, networkmanagerapplet }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
pname = "NetworkManager-l2tp";
|
||||
version = "1.2.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nm-l2tp";
|
||||
repo = "network-manager-l2tp";
|
||||
rev = "${version}";
|
||||
sha256 = "1vm004nj2n5abpywr7ji6r28scf7xs45zw4rqrm8jn7mysf96h0x";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit strongswan xl2tpd;
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ networkmanager ppp ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk libsecret networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook libtool intltool pkgconfig ];
|
||||
|
||||
preConfigure = ''
|
||||
intltoolize -f
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"--with-gnome=${if withGnome then "yes" else "no"}"
|
||||
"--localstatedir=/var"
|
||||
"--sysconfdir=$(out)/etc"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "L2TP plugin for NetworkManager";
|
||||
inherit (networkmanager.meta) platforms;
|
||||
homepage = https://github.com/nm-l2tp/network-manager-l2tp;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ abbradar obadz ];
|
||||
};
|
||||
}
|
20
pkgs/tools/networking/network-manager/l2tp/fix-paths.patch
Normal file
20
pkgs/tools/networking/network-manager/l2tp/fix-paths.patch
Normal file
@ -0,0 +1,20 @@
|
||||
--- a/src/nm-l2tp-service.c
|
||||
+++ b/src/nm-l2tp-service.c
|
||||
@@ -480,7 +480,7 @@
|
||||
{
|
||||
static const char *ipsec_binary_paths[] =
|
||||
{
|
||||
- "/sbin/ipsec",
|
||||
+ "@strongswan@/bin/ipsec",
|
||||
"/usr/sbin/ipsec",
|
||||
"/usr/local/sbin/ipsec",
|
||||
"/sbin/strongswan",
|
||||
@@ -505,7 +505,7 @@
|
||||
{
|
||||
static const char *l2tp_binary_paths[] =
|
||||
{
|
||||
- "/sbin/xl2tpd",
|
||||
+ "@xl2tpd@/bin/xl2tpd",
|
||||
"/usr/sbin/xl2tpd",
|
||||
"/usr/local/sbin/xl2tpd",
|
||||
NULL
|
33
pkgs/tools/networking/network-manager/libnm-gtk-mbpi.patch
Normal file
33
pkgs/tools/networking/network-manager/libnm-gtk-mbpi.patch
Normal file
@ -0,0 +1,33 @@
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -137,7 +137,7 @@
|
||||
mobile_broadband_provider_info_dep = dependency('mobile-broadband-provider-info')
|
||||
config_h.set_quoted('MOBILE_BROADBAND_PROVIDER_INFO_DATABASE', mobile_broadband_provider_info_dep.get_pkgconfig_variable('database'))
|
||||
else
|
||||
- config_h.set_quoted('MOBILE_BROADBAND_PROVIDER_INFO_DATABASE', join_paths(nma_prefix, 'share', 'mobile-broadband-provider-info', 'serviceproviders.xml'))
|
||||
+ config_h.set_quoted('MOBILE_BROADBAND_PROVIDER_INFO_DATABASE', join_paths(nma_datadir, 'mobile-broadband-provider-info', 'serviceproviders.xml'))
|
||||
endif
|
||||
|
||||
gio_dep = dependency('gio-2.0', version: '>= 2.38')
|
||||
--- a/src/libnm-gtk/nm-mobile-providers.c
|
||||
+++ b/src/libnm-gtk/nm-mobile-providers.c
|
||||
@@ -30,10 +30,6 @@
|
||||
|
||||
#include "nm-mobile-providers.h"
|
||||
|
||||
-#ifndef MOBILE_BROADBAND_PROVIDER_INFO
|
||||
-#define MOBILE_BROADBAND_PROVIDER_INFO DATADIR"/mobile-broadband-provider-info/serviceproviders.xml"
|
||||
-#endif
|
||||
-
|
||||
#define ISO_3166_COUNTRY_CODES ISO_CODES_PREFIX"/share/xml/iso-codes/iso_3166.xml"
|
||||
#define ISO_CODES_LOCALESDIR ISO_CODES_PREFIX"/share/locale"
|
||||
|
||||
@@ -990,7 +986,7 @@
|
||||
if (!country_codes)
|
||||
country_codes = ISO_3166_COUNTRY_CODES;
|
||||
if (!service_providers)
|
||||
- service_providers = MOBILE_BROADBAND_PROVIDER_INFO;
|
||||
+ service_providers = MOBILE_BROADBAND_PROVIDER_INFO_DATABASE;
|
||||
|
||||
countries = read_country_codes (country_codes,
|
||||
cancellable,
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchurl, openconnect, intltool, pkgconfig, networkmanager, libsecret
|
||||
, withGnome ? true, gnome3, sysctl, kmod }:
|
||||
{ stdenv, fetchurl, substituteAll, openconnect, intltool, pkgconfig, networkmanager, libsecret
|
||||
, withGnome ? true, gnome3, kmod }:
|
||||
|
||||
let
|
||||
pname = "NetworkManager-openconnect";
|
||||
@ -12,24 +12,22 @@ in stdenv.mkDerivation rec {
|
||||
sha256 = "15j98wwspv6mcmy91w30as5qc1bzsnhlk060xhjy4qrvd37y0xx1";
|
||||
};
|
||||
|
||||
buildInputs = [ openconnect networkmanager libsecret ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk gnome3.libgnome-keyring ];
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit kmod openconnect;
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ openconnect networkmanager ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk libsecret ];
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig ];
|
||||
|
||||
configureFlags = [
|
||||
"${if withGnome then "--with-gnome --with-gtkver=3" else "--without-gnome"}"
|
||||
"--disable-static"
|
||||
"--with-gnome=${if withGnome then "yes" else "no"}"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace "configure" \
|
||||
--replace "/sbin/sysctl" "${sysctl}/bin/sysctl"
|
||||
substituteInPlace "src/nm-openconnect-service.c" \
|
||||
--replace "/usr/sbin/openconnect" "${openconnect}/bin/openconnect" \
|
||||
--replace "/sbin/modprobe" "${kmod}/bin/modprobe"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
@ -37,8 +35,9 @@ in stdenv.mkDerivation rec {
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "NetworkManager's OpenConnect plugin";
|
||||
inherit (networkmanager.meta) maintainers platforms;
|
||||
license = licenses.gpl2Plus;
|
||||
};
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
--- a/src/nm-openconnect-service.c
|
||||
+++ b/src/nm-openconnect-service.c
|
||||
@@ -60,7 +60,7 @@
|
||||
|
||||
static const char *openconnect_binary_paths[] =
|
||||
{
|
||||
- "/usr/bin/openconnect",
|
||||
+ "@openconnect@/bin/openconnect",
|
||||
"/usr/sbin/openconnect",
|
||||
"/usr/local/bin/openconnect",
|
||||
"/usr/local/sbin/openconnect",
|
||||
@@ -734,7 +734,7 @@
|
||||
|
||||
_LOGD ("nm-openconnect-service (version " DIST_VERSION ") starting...");
|
||||
|
||||
- if (system ("/sbin/modprobe tun") == -1)
|
||||
+ if (system ("@kmod@/bin/modprobe tun") == -1)
|
||||
exit (EXIT_FAILURE);
|
||||
|
||||
if (bus_name)
|
@ -2,13 +2,13 @@
|
||||
, withGnome ? true, gnome3, kmod }:
|
||||
|
||||
let
|
||||
pname = "NetworkManager-openvpn";
|
||||
pname = "NetworkManager-openvpn";
|
||||
version = "1.8.4";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0gyrv46h9k17qym48qacq4zpxbap6hi17shn921824zm98m2bdvr";
|
||||
};
|
||||
|
||||
@ -19,15 +19,13 @@ in stdenv.mkDerivation rec {
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ openvpn networkmanager libsecret ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk gnome3.libgnome-keyring
|
||||
gnome3.networkmanagerapplet ];
|
||||
buildInputs = [ openvpn networkmanager ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk libsecret gnome3.networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig libxml2 ];
|
||||
|
||||
configureFlags = [
|
||||
"${if withGnome then "--with-gnome --with-gtkver=3" else "--without-gnome"}"
|
||||
"--disable-static"
|
||||
"--with-gnome=${if withGnome then "yes" else "no"}"
|
||||
"--localstatedir=/" # needed for the management socket under /run/NetworkManager
|
||||
];
|
||||
|
||||
@ -38,8 +36,9 @@ in stdenv.mkDerivation rec {
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "NetworkManager's OpenVPN plugin";
|
||||
inherit (networkmanager.meta) maintainers platforms;
|
||||
license = licenses.gpl2Plus;
|
||||
};
|
||||
}
|
||||
|
@ -1,38 +1,35 @@
|
||||
{ stdenv, fetchurl, intltool, pkgconfig, networkmanager, strongswanNM, sysctl
|
||||
, gnome3, libgnome-keyring, libsecret }:
|
||||
{ stdenv, fetchurl, intltool, pkgconfig, networkmanager, strongswanNM
|
||||
, gnome3, libsecret }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "NetworkManager-strongswan";
|
||||
version = "1.4.3";
|
||||
name = "${pname}-${version}";
|
||||
pname = "NetworkManager-strongswan";
|
||||
version = "1.4.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.strongswan.org/NetworkManager/${name}.tar.bz2";
|
||||
sha256 = "0jzl52wmh2q2djb1s546kxliy7s6akhi5bx6rp2ppjfk3wbi2a2l";
|
||||
url = "https://download.strongswan.org/NetworkManager/${name}.tar.bz2";
|
||||
sha256 = "1xhj5cipwbihf0cna8lpicpz7cd8fgkagpmg0xvj6pshymm5jbcd";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i "s,nm_plugindir=.*,nm_plugindir=$out/lib/NetworkManager," "configure"
|
||||
sed -i "s,nm_libexecdir=.*,nm_libexecdir=$out/libexec," "configure"
|
||||
'';
|
||||
|
||||
buildInputs = [ networkmanager strongswanNM libsecret ]
|
||||
++ (with gnome3; [ gtk libgnome-keyring networkmanagerapplet ]);
|
||||
++ (with gnome3; [ gtk networkmanagerapplet ]);
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig ];
|
||||
|
||||
# Fixes deprecation errors with networkmanager 1.10.2
|
||||
NIX_CFLAGS_COMPILE = "-Wno-deprecated-declarations";
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace "configure" \
|
||||
--replace "/sbin/sysctl" "${sysctl}/bin/sysctl"
|
||||
'';
|
||||
configureFlags = [
|
||||
"--with-charon=${strongswanNM}/libexec/ipsec/charon-nm"
|
||||
"--with-nm-libexecdir=$(out)/libexec"
|
||||
"--with-nm-plugindir=$(out)/lib/NetworkManager"
|
||||
];
|
||||
|
||||
configureFlags = [ "--with-charon=${strongswanNM}/libexec/ipsec/charon-nm" ];
|
||||
PKG_CONFIG_LIBNM_VPNSERVICEDIR = "$(out)/lib/NetworkManager/VPN";
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "NetworkManager's strongswan plugin";
|
||||
inherit (networkmanager.meta) platforms;
|
||||
license = licenses.gpl2Plus;
|
||||
};
|
||||
}
|
||||
|
@ -1,45 +0,0 @@
|
||||
{ stdenv, fetchurl, vpnc, intltool, pkgconfig, networkmanager, libsecret
|
||||
, withGnome ? true, gnome3, procps, kmod, file }:
|
||||
let
|
||||
pname = "NetworkManager-vpnc";
|
||||
version = "1.2.6";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1js5lwcsqws4klgypfxl4ikmakv7v7xgddij1fj6b0y0qicx0kyy";
|
||||
};
|
||||
|
||||
buildInputs = [ vpnc networkmanager libsecret ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk gnome3.libgnome-keyring
|
||||
gnome3.networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig file ];
|
||||
|
||||
configureFlags = [
|
||||
"${if withGnome then "--with-gnome --with-gtkver=3" else "--without-gnome"}"
|
||||
"--disable-static"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace "configure" \
|
||||
--replace "/sbin/sysctl" "${procps}/bin/sysctl"
|
||||
substituteInPlace "src/nm-vpnc-service.c" \
|
||||
--replace "/sbin/vpnc" "${vpnc}/bin/vpnc" \
|
||||
--replace "/sbin/modprobe" "${kmod}/bin/modprobe"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "networkmanager-vpnc";
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "NetworkManager's VPNC plugin";
|
||||
inherit (networkmanager.meta) maintainers platforms;
|
||||
};
|
||||
}
|
||||
|
42
pkgs/tools/networking/network-manager/vpnc/default.nix
Normal file
42
pkgs/tools/networking/network-manager/vpnc/default.nix
Normal file
@ -0,0 +1,42 @@
|
||||
{ stdenv, fetchurl, substituteAll, vpnc, intltool, pkgconfig, networkmanager, libsecret
|
||||
, withGnome ? true, gnome3, kmod, file }:
|
||||
let
|
||||
pname = "NetworkManager-vpnc";
|
||||
version = "1.2.6";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1js5lwcsqws4klgypfxl4ikmakv7v7xgddij1fj6b0y0qicx0kyy";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit vpnc kmod;
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ vpnc networkmanager ]
|
||||
++ stdenv.lib.optionals withGnome [ gnome3.gtk libsecret gnome3.networkmanagerapplet ];
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig file ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-gnome=${if withGnome then "yes" else "no"}"
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "networkmanager-vpnc";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "NetworkManager's VPNC plugin";
|
||||
inherit (networkmanager.meta) maintainers platforms;
|
||||
license = licenses.gpl2Plus;
|
||||
};
|
||||
}
|
31
pkgs/tools/networking/network-manager/vpnc/fix-paths.patch
Normal file
31
pkgs/tools/networking/network-manager/vpnc/fix-paths.patch
Normal file
@ -0,0 +1,31 @@
|
||||
--- a/properties/nm-vpnc-editor-plugin.c
|
||||
+++ b/properties/nm-vpnc-editor-plugin.c
|
||||
@@ -161,7 +161,7 @@
|
||||
GError *error = NULL;
|
||||
|
||||
const char *decrypt_possible_paths[] = {
|
||||
- "/usr/lib/vpnc/cisco-decrypt",
|
||||
+ "@vpnc@/bin/cisco-decrypt",
|
||||
"/usr/bin/cisco-decrypt",
|
||||
NULL
|
||||
};
|
||||
--- a/src/nm-vpnc-service.c
|
||||
+++ b/src/nm-vpnc-service.c
|
||||
@@ -610,7 +610,7 @@
|
||||
find_vpnc (void)
|
||||
{
|
||||
static const char *vpnc_paths[] = {
|
||||
- "/usr/sbin/vpnc",
|
||||
+ "@vpnc@/bin/vpnc",
|
||||
"/sbin/vpnc",
|
||||
"/usr/local/sbin/vpnc",
|
||||
NULL
|
||||
@@ -1308,7 +1308,7 @@
|
||||
_LOGD (" vpnc interactive mode is %s", interactive_available ? "enabled" : "disabled");
|
||||
_LOGD (" uses%s --bus-name \"%s\"", bus_name_free ? "" : " default", bus_name);
|
||||
|
||||
- if (system ("/sbin/modprobe tun") == -1)
|
||||
+ if (system ("@kmod@/bin/modprobe tun") == -1)
|
||||
exit (EXIT_FAILURE);
|
||||
|
||||
plugin = nm_vpnc_plugin_new (bus_name);
|
@ -1547,8 +1547,6 @@ with pkgs;
|
||||
|
||||
apparix = callPackage ../tools/misc/apparix { };
|
||||
|
||||
appdata-tools = callPackage ../tools/misc/appdata-tools { };
|
||||
|
||||
appleseed = callPackage ../tools/graphics/appleseed { };
|
||||
|
||||
arping = callPackage ../tools/networking/arping { };
|
||||
@ -4128,21 +4126,21 @@ with pkgs;
|
||||
|
||||
networkmanager = callPackage ../tools/networking/network-manager { };
|
||||
|
||||
networkmanager-iodine = callPackage ../tools/networking/network-manager/iodine.nix { };
|
||||
networkmanager-iodine = callPackage ../tools/networking/network-manager/iodine { };
|
||||
|
||||
networkmanager-openvpn = callPackage ../tools/networking/network-manager/openvpn { };
|
||||
|
||||
networkmanager-l2tp = callPackage ../tools/networking/network-manager/l2tp.nix { };
|
||||
networkmanager-l2tp = callPackage ../tools/networking/network-manager/l2tp { };
|
||||
|
||||
networkmanager-vpnc = callPackage ../tools/networking/network-manager/vpnc.nix { };
|
||||
networkmanager-vpnc = callPackage ../tools/networking/network-manager/vpnc { };
|
||||
|
||||
networkmanager-openconnect = callPackage ../tools/networking/network-manager/openconnect.nix { };
|
||||
networkmanager-openconnect = callPackage ../tools/networking/network-manager/openconnect { };
|
||||
|
||||
networkmanager-fortisslvpn = callPackage ../tools/networking/network-manager/fortisslvpn.nix { };
|
||||
networkmanager-fortisslvpn = callPackage ../tools/networking/network-manager/fortisslvpn { };
|
||||
|
||||
networkmanager_strongswan = callPackage ../tools/networking/network-manager/strongswan.nix { };
|
||||
|
||||
networkmanagerapplet = newScope gnome2 ../tools/networking/network-manager/applet.nix { };
|
||||
networkmanagerapplet = callPackage ../tools/networking/network-manager/applet.nix { };
|
||||
|
||||
networkmanager_dmenu = callPackage ../tools/networking/network-manager/dmenu.nix { };
|
||||
|
||||
@ -15423,10 +15421,10 @@ with pkgs;
|
||||
(callPackage ../applications/science/electronics/bitscope/packages.nix { });
|
||||
|
||||
bitwig-studio1 = callPackage ../applications/audio/bitwig-studio/bitwig-studio1.nix {
|
||||
inherit (gnome2) zenity;
|
||||
inherit (gnome3) zenity;
|
||||
};
|
||||
bitwig-studio2 = callPackage ../applications/audio/bitwig-studio/bitwig-studio2.nix {
|
||||
inherit (gnome2) zenity;
|
||||
inherit (gnome3) zenity;
|
||||
inherit (self) bitwig-studio1;
|
||||
};
|
||||
bitwig-studio = bitwig-studio2;
|
||||
@ -19285,25 +19283,19 @@ with pkgs;
|
||||
packages = self: [];
|
||||
};
|
||||
|
||||
xmonad_log_applet_gnome2 = xmonad_log_applet.override {
|
||||
desktopSupport = "gnome2";
|
||||
xmonad_log_applet = callPackage ../applications/window-managers/xmonad/log-applet {
|
||||
desktopSupport = "gnomeflashback";
|
||||
inherit (xfce) libxfce4util xfce4-panel;
|
||||
gnome2_panel = gnome2.gnome_panel;
|
||||
GConf2 = gnome2.GConf;
|
||||
};
|
||||
|
||||
xmonad_log_applet = callPackage ../applications/window-managers/xmonad/log-applet {
|
||||
desktopSupport = "gnome3";
|
||||
xmonad_log_applet_mate = xmonad_log_applet.override {
|
||||
desktopSupport = "mate";
|
||||
inherit (xfce) libxfce4util xfce4-panel;
|
||||
gnome2_panel = gnome2.gnome_panel;
|
||||
GConf2 = gnome2.GConf;
|
||||
};
|
||||
|
||||
xmonad_log_applet_xfce = xmonad_log_applet.override {
|
||||
desktopSupport = "xfce4";
|
||||
inherit (xfce) libxfce4util xfce4-panel;
|
||||
gnome2_panel = gnome2.gnome_panel;
|
||||
GConf2 = gnome2.GConf;
|
||||
};
|
||||
|
||||
xmpp-client = callPackage ../applications/networking/instant-messengers/xmpp-client { };
|
||||
@ -21511,7 +21503,7 @@ with pkgs;
|
||||
|
||||
mnemonicode = callPackage ../misc/mnemonicode { };
|
||||
|
||||
mysql-workbench = newScope gnome2 ../applications/misc/mysql-workbench (let mysql = mysql57; in {
|
||||
mysql-workbench = callPackage ../applications/misc/mysql-workbench (let mysql = mysql57; in {
|
||||
gdal = gdal.override {mysql = mysql // {lib = {dev = mysql;};};};
|
||||
mysql = mysql;
|
||||
pcre = pcre-cpp;
|
||||
@ -21842,7 +21834,7 @@ with pkgs;
|
||||
});
|
||||
|
||||
winetricks = callPackage ../misc/emulators/wine/winetricks.nix {
|
||||
inherit (gnome2) zenity;
|
||||
inherit (gnome3) zenity;
|
||||
};
|
||||
|
||||
with-shell = callPackage ../applications/misc/with-shell { };
|
||||
|
Loading…
Reference in New Issue
Block a user