Adding wicd, written by roconnor, sent to the nix-dev list on 2010-01-07
svn path=/nixpkgs/trunk/; revision=19297
This commit is contained in:
parent
645ae45d55
commit
3a400bb64a
78
pkgs/tools/networking/wicd/default.nix
Normal file
78
pkgs/tools/networking/wicd/default.nix
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
{stdenv, fetchurl, python, pygobject, pycairo, pyGtkGlade, pythonDBus,
|
||||||
|
wpa_supplicant, dhcp, wirelesstools, nettools, iproute,
|
||||||
|
locale ? "\\\"C\\\"" }:
|
||||||
|
|
||||||
|
# wicd has a ncurses interface that we do not build because it depends on urwid which has not been packaged at this time (2009-12-27)
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "wicd-1.6.2.2";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://sourceforge/wicd/files/wicd-stable/${name}/${name}.tar.bz2";
|
||||||
|
sha256 = "1gpjrlanz7rrzkchnpm1dgik333rz1fsg4c4046c5pwdfpp1crxr";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ python ];
|
||||||
|
|
||||||
|
patches = [ ./no-var-install.patch ./pygtk.patch ./mkdir-networks.patch ];
|
||||||
|
|
||||||
|
# Should I be using pygtk's propogated build inputs?
|
||||||
|
postPatch = ''
|
||||||
|
sed -i "2iexport PATH=\$PATH\$\{PATH:+:\}${python}/bin:${wpa_supplicant}/sbin:${dhcp}/sbin:${wirelesstools}/sbin:${nettools}/sbin:${iproute}/sbin" in/scripts=wicd.in
|
||||||
|
sed -i "3iexport PYTHONPATH=\$PYTHONPATH\$\{PYTHONPATH:+:\}$(toPythonPath $out):$(toPythonPath ${pygobject})/gtk-2.0:$(toPythonPath ${pythonDBus})" in/scripts=wicd.in
|
||||||
|
sed -i "4iexport LC_ALL=${locale}" in/scripts=wicd.in
|
||||||
|
sed -i "2iexport PATH=\$PATH\$\{PATH:+:\}${python}/bin" in/scripts=wicd-client.in
|
||||||
|
sed -i "3iexport PYTHONPATH=\$PYTHONPATH\$\{PYTHONPATH:+:\}$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject})/gtk-2.0:$(toPythonPath ${pycairo}):$(toPythonPath ${pythonDBus})" in/scripts=wicd-client.in
|
||||||
|
'';
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
python setup.py configure \
|
||||||
|
--lib=$out/lib/ \
|
||||||
|
--etc=/var/lib/wicd/ \
|
||||||
|
--share=$out/share/ \
|
||||||
|
--scripts=$out/etc/scripts/ \
|
||||||
|
--images=$out/share/pixmaps/ \
|
||||||
|
--encryption=$out/etc/encryption/templates/ \
|
||||||
|
--bin=$out/bin/ \
|
||||||
|
--sbin=$out/sbin/ \
|
||||||
|
--backends=$out/lib/backends/ \
|
||||||
|
--networks=/var/lib/wicd/configurations/ \
|
||||||
|
--resume=$out/etc/acpi/resume.d/ \
|
||||||
|
--suspend=$out/etc/acpi/suspend.d/ \
|
||||||
|
--pmutils=$out/lib/pm-utils/sleep.d/ \
|
||||||
|
--dbus=$out/etc/dbus-1/system.d/ \
|
||||||
|
--desktop=$out/share/applications/ \
|
||||||
|
--icons=$out/share/icons/hicolour/ \
|
||||||
|
--translations=$out/share/locale/ \
|
||||||
|
--autostart=$out/etc/xdg/autostart/ \
|
||||||
|
--varlib=$out/share/ \
|
||||||
|
--docdir=$out/share/doc/ \
|
||||||
|
--mandir=$out/share/man/ \
|
||||||
|
--kdedir=$out/share/autostart/ \
|
||||||
|
--python=${python}/bin/python \
|
||||||
|
--distro=nix \
|
||||||
|
--wicdgroup=users \
|
||||||
|
--no-install-init \
|
||||||
|
--no-install-kde \
|
||||||
|
--no-install-acpi \
|
||||||
|
--no-install-pmutils \
|
||||||
|
--no-install-ncurses \
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''python setup.py install --prefix=$out'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = http://wicd.net/;
|
||||||
|
description = "A wiredless and wired network manager";
|
||||||
|
long_description=''
|
||||||
|
A complete network connection manager
|
||||||
|
Wicd supports wired and wireless networks, and capable of
|
||||||
|
creating and tracking profiles for both. It has a
|
||||||
|
template-based wireless encryption system, which allows the user
|
||||||
|
to easily add encryption methods used. It ships with some common
|
||||||
|
encryption types, such as WPA and WEP. Wicd will automatically
|
||||||
|
connect at startup to any preferred network within range.
|
||||||
|
'';
|
||||||
|
license="GPL";
|
||||||
|
};
|
||||||
|
}
|
11
pkgs/tools/networking/wicd/mkdir-networks.patch
Normal file
11
pkgs/tools/networking/wicd/mkdir-networks.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
wicd normally makes the NETWORKS directory at install time, but we cannot do that,
|
||||||
|
so we make it at runtime instead.
|
||||||
|
|
||||||
|
--- wicd-1.6.2.2/in/scripts=wicd.in 2009-09-01 11:05:31.000000000 -0400
|
||||||
|
+++ wicd-1.6.2.2/in/scripts=wicd.in 2010-01-04 18:01:57.000000000 -0500
|
||||||
|
@@ -1,3 +1,5 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
+mkdir -p %NETWORKS%
|
||||||
|
+
|
||||||
|
exec python -O %LIB%wicd-daemon.py $@
|
20
pkgs/tools/networking/wicd/no-var-install.patch
Normal file
20
pkgs/tools/networking/wicd/no-var-install.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
The install tries to create files in /var. This patch removes those steps.
|
||||||
|
|
||||||
|
--- wicd-1.6.2.2/setup.py 2009-09-01 11:05:31.000000000 -0400
|
||||||
|
+++ wicd-1.6.2.2/setup.py 2009-12-27 21:27:57.000000000 -0500
|
||||||
|
@@ -464,7 +464,6 @@
|
||||||
|
data = [
|
||||||
|
(wpath.dbus, ['other/wicd.conf']),
|
||||||
|
(wpath.desktop, ['other/wicd.desktop']),
|
||||||
|
- (wpath.log, []),
|
||||||
|
(wpath.etc, []),
|
||||||
|
(wpath.icons + 'scalable/apps/', ['icons/scalable/wicd-client.svg']),
|
||||||
|
(wpath.icons + '192x192/apps/', ['icons/192px/wicd-client.png']),
|
||||||
|
@@ -481,7 +480,6 @@
|
||||||
|
(wpath.images, [('images/' + b) for b in os.listdir('images') if not b.startswith('.')]),
|
||||||
|
(wpath.encryption, [('encryption/templates/' + b) for b in
|
||||||
|
os.listdir('encryption/templates') if not b.startswith('.')]),
|
||||||
|
- (wpath.networks, []),
|
||||||
|
(wpath.bin, ['scripts/wicd-client', ]),
|
||||||
|
(wpath.sbin, ['scripts/wicd', ]),
|
||||||
|
(wpath.share, ['data/wicd.glade', ]),
|
15
pkgs/tools/networking/wicd/pygtk.patch
Normal file
15
pkgs/tools/networking/wicd/pygtk.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
For some reason nix's pygtk doesn't have a pygtk module so we remove the version check.
|
||||||
|
If this ever changes we could remove this patch.
|
||||||
|
|
||||||
|
--- wicd-1.6.2.2/wicd/wicd-client.py 2009-09-01 11:05:31.000000000 -0400
|
||||||
|
+++ wicd-1.6.2.2/wicd/wicd-client.py 2009-12-28 00:22:57.000000000 -0500
|
||||||
|
@@ -43,9 +43,6 @@
|
||||||
|
import atexit
|
||||||
|
from dbus import DBusException
|
||||||
|
|
||||||
|
-import pygtk
|
||||||
|
-pygtk.require('2.0')
|
||||||
|
-
|
||||||
|
HAS_NOTIFY = True
|
||||||
|
try:
|
||||||
|
import pynotify
|
@ -1632,6 +1632,11 @@ let
|
|||||||
inherit fetchurl stdenv readline;
|
inherit fetchurl stdenv readline;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
wicd = import ../tools/networking/wicd {
|
||||||
|
inherit stdenv fetchurl python pygobject pycairo pyGtkGlade pythonDBus
|
||||||
|
wpa_supplicant dhcp wirelesstools nettools iproute;
|
||||||
|
};
|
||||||
|
|
||||||
wv = import ../tools/misc/wv {
|
wv = import ../tools/misc/wv {
|
||||||
inherit fetchurl stdenv libpng zlib imagemagick
|
inherit fetchurl stdenv libpng zlib imagemagick
|
||||||
pkgconfig libgsf libxml2 bzip2 glib;
|
pkgconfig libgsf libxml2 bzip2 glib;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user