Re: [PATCH] gnu: python-2: update to 2.7.10.
Ludovic Courtès writes: > e...@dvorsak.fr skribis: > >> Altough the tests are still failing, I ran them after the build failed >> with : >> >> guix build -K >> cd tmp/nix-build-* >> env -i $(which bash) >> source environment-variables >> >> And they all passed except for some skips and a module that failed >> trying to write to a dir without permissions. >> >> Maybe there is a fix to do to enable the tests, the problem might be >> coming from the OS module. They fail because of an OSError exception, >> so I wonder if it could be because the module doesn't work withing the >> chroot. > > Wild guess: Could it be because Python’s bindings for ‘popen’ or > something like that refer to /bin/sh, which is unavailable in the > chroot, leading to ENOENT? Could you ‘grep -r /bin/sh’ in the source? > > Thanks, > Ludo’. Ag Results for `/bin/sh': plat-freebsd4/regen:1:#! /bin/sh plat-aix3/regen:1:#! /bin/sh plat-beos5/regen:1:#! /bin/sh plat-os2emx/regen:1:#! /bin/sh distutils/tests/test_install_scripts.py:57:write_script("shell.sh", ("#!/bin/sh\n" distutils/tests/test_build_scripts.py:68: ("#!/bin/sh\n" distutils/tests/test_spawn.py:35:self.write_file(exe, '#!/bin/sh\nexit 1') distutils/tests/test_spawn.py:47:self.write_file(exe, '#!/bin/sh\nexit 0') test/test__osx_support.py:47:f.write("#!/bin/sh\n/bin/echo OK\n") test/test__osx_support.py:59:f.write("#!/bin/sh\n/bin/echo ExpectedOutput\n") test/test__osx_support.py:150:f.write("#!/bin/sh\n/bin/echo " + c_output) test/test__osx_support.py:206:f.write("#!/bin/sh\nexit 255") test/test_os.py:365:if os.path.exists("/bin/sh"): test/test_os.py:367:with os.popen("/bin/sh -c 'echo $HELLO'") as popen: test/test_subprocess.py:862:os.write(f, "#!/bin/sh\n") test/test_subprocess.py:906:os.write(f, "#!/bin/sh\n") test/test_subprocess.py:925:sh = '/bin/sh' test/test_subprocess.py:927:# Test will fail if /bin/sh is a symlink to csh. plat-irix5/regen:1:#! /bin/sh plat-generic/regen:1:#! /bin/sh plat-linux2/regen:1:#! /bin/sh plat-netbsd1/regen:1:#! /bin/sh ctypes/macholib/fetch_macholib:1:#!/bin/sh plat-atheos/regen:1:#! /bin/sh plat-aix4/regen:1:#! /bin/sh plat-irix6/regen:1:#! /bin/sh plat-freebsd6/regen:1:#! /bin/sh plat-next3/regen:1:#! /bin/sh plat-freebsd5/regen:1:#! /bin/sh > This one ? > popen2.py:84:cmd = ['/bin/sh', '-c', cmd] plat-freebsd7/regen:1:#! /bin/sh plat-darwin/regen:1:#! /bin/sh subprocess.py:161:/bin/sh implicitly. This means that all characters, including shell subprocess.py:226:Replacing /bin/sh shell backquote subprocess.py:559:>>> check_output(["/bin/sh", "-c", subprocess.py:1209:args = ["/bin/sh", "-c"] + args pipes.py:36:second likewise for the output. The command must be valid /bin/sh pipes.py:262:# Reliably quote a string as a single argument for /bin/sh plat-freebsd8/regen:1:#! /bin/sh plat-sunos5/regen:1:#! /bin/sh plat-unixware7/regen:1:#! /bin/sh Here is the def : def _run_child(self, cmd): if isinstance(cmd, basestring): cmd = ['/bin/sh', '-c', cmd] os.closerange(3, MAXFD) try: os.execvp(cmd[0], cmd) finally: os._exit(1) What should be done to fix this ? Eric
Re: [PATCH 4/7] gnu: Add xcb-util-cursor.
Mark H Weaver writes: > Eric Dvorsak writes: > >> +(define-public xcb-util-cursor >> + (package >> +(name "xcb-util-cursor") >> +(version "0.1.2") >> +(source (origin >> + (method url-fetch) >> + (uri (string-append "http://xcb.freedesktop.org/dist/"; >> + "xcb-util-cursor-" version ".tar.gz")) >> + (sha256 >> + (base32 >> +"0bm0mp99abdfb6v4v60hq3msvk67b2x9ml3kbx5y2g18xdhm3rdr" >> +(build-system gnu-build-system) >> +(native-inputs >> + `(("m4" ,m4) >> + ("pkg-config" ,pkg-config))) >> +(inputs >> + `(("libxcb" ,libxcb) >> + ("xcb-util-renderutil" ,xcb-util-renderutil) >> + ("xcb-util-image" ,xcb-util-image))) >> +(home-page "http://cgit.freedesktop.org/xcb/util-cursor/";) >> +(synopsis "Port of libxcursor") >> +(description "Port of libxcursor.") > > The synopsis and description seem like stubs. Can you make them better? There is no description on freedesktop.org and in the readme either. Should I just add the description of libxcursor itself ? Which is "Xorg Cursor management library" for both the synospis and the description > >Mark Eric
[PATCH 5/7] gnu: Add i3-wm.
* gnu/packages/i3.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. --- gnu-system.am | 1 + gnu/packages/i3.scm | 87 + 2 files changed, 88 insertions(+) create mode 100644 gnu/packages/i3.scm diff --git a/gnu-system.am b/gnu-system.am index 9f46f7b..9686a7e 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -149,6 +149,7 @@ GNU_SYSTEM_MODULES =\ gnu/packages/haskell.scm \ gnu/packages/hugs.scm\ gnu/packages/hurd.scm\ + gnu/packages/i3.scm \ gnu/packages/ibus.scm\ gnu/packages/icu4c.scm \ gnu/packages/idutils.scm \ diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm new file mode 100644 index 000..89837db --- /dev/null +++ b/gnu/packages/i3.scm @@ -0,0 +1,87 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright ?? 2015 Eric Dvorsak +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages i3) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (gnu packages linux) + #:use-module (guix build-system gnu) + #:use-module (gnu packages base) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages perl) + #:use-module (gnu packages xorg) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages qt) + #:use-module (gnu packages asciidoc) + #:use-module (gnu packages xml) + #:use-module (gnu packages m4) + #:use-module (gnu packages docbook) + #:use-module (gnu packages pcre) + #:use-module (gnu packages gtk) + #:use-module (gnu packages libevent) + #:use-module (gnu packages maths) + #:use-module (gnu packages web) + #:use-module (guix download) + #:use-module (guix git-download)) + +(define-public i3-wm + (package +(name "i3-wm") +(version "4.10.3") +(source (origin + (method url-fetch) + (uri (string-append "http://i3wm.org/downloads/i3-"; + version ".tar.bz2")) + (sha256 + (base32 +"1lq7h4w7m0hi31iva8g7yf1sc11ispnknxjdaj9agld4smxqb44j" +(build-system gnu-build-system) +(arguments + `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure)) + #:tests? #f)) ; no test suite +(inputs + `(("libxcb" ,libxcb) + ("xcb-util" ,xcb-util) + ("xcb-util-cursor" ,xcb-util-cursor) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm) + ("libxkbcommon" ,libxkbcommon) + ("libev" ,libev) + ("libyajl" ,libyajl) + ("asciidoc" ,asciidoc) + ("xmlto" ,xmlto) + ("perl-pod-simple" ,perl-pod-simple) + ("docbook-xml" ,docbook-xml) + ("libx11" ,libx11) + ("pcre" ,pcre) + ("startup-notification" ,startup-notification) + ("pango" ,pango) + ("cairo" ,cairo))) +(native-inputs + `(("which" ,which) + ("perl" ,perl) + ("pkg-config" ,pkg-config))) +(home-page "http://i3wm.org/";) +(synopsis "Improved tiling window manager") +(description "i3 is a tiling window manager, completely written +from scratch. i3 is primarily targeted at advanced users and +developers.") +(license bsd-3))) -- 2.4.3
[PATCH 7/7] gnu: Add i3status.
* gnu/packages/i3.scm (i3status): New variable. --- gnu/packages/i3.scm | 38 ++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm index 3daaa9b..eda2aa3 100644 --- a/gnu/packages/i3.scm +++ b/gnu/packages/i3.scm @@ -60,6 +60,44 @@ single/double-quoted strings, environment variable expansion, functions and nested include statements).") (license isc))) +(define-public i3status + (package +(name "i3status") +(version "2.9") +(source (origin + (method url-fetch) + (uri (string-append "http://i3wm.org/i3status/i3status-"; + version ".tar.bz2")) + (sha256 + (base32 +"1qwxbrga2fi5wf742hh9ajwa8b2kpzkjjnhjlz4wlpv21i80kss2" +(build-system gnu-build-system) +(arguments + `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure)) + #:tests? #f)) ; no test suite +(inputs + `(("openlibm" ,openlibm) + ("libconfuse" ,libconfuse) + ("libyajl" ,libyajl) + ("alsa-lib" ,alsa-lib) + ("wireless-tools" ,wireless-tools) + ("libcap" ,libcap) + ("asciidoc" ,asciidoc))) +(home-page "http://i3wm.org/i3status/";) +(synopsis "Generating a status bar for i3bar, dzen2, xmobar or +similar programs") +(description "i3status is a small program for generating a status +bar for i3bar, dzen2, xmobar or similar programs. It is designed to +be very efficient by issuing a very small number of system calls, as +one generally wants to update such a status line every second. This +ensures that even under high load, your status bar is updated +correctly. Also, it saves a bit of energy by not hogging your CPU as +much as spawning the corresponding amount of shell commands would.") +(license bsd-3))) + (define-public i3-wm (package (name "i3-wm") -- 2.4.3
[PATCH 2/7] gnu: Add libyajl.
* gnu/packages/web.scm (libyajl): New variable. --- gnu/packages/web.scm | 21 + 1 file changed, 21 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 48bfbc7..b93b569 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -6,6 +6,7 @@ ;;; Copyright ?? 2015 Ricardo Wurmus ;;; Copyright ?? 2015 Taylan Ulrich Bay??rl??/Kammer ;;; Copyright ?? 2015 Eric Bavier +;;; Copyright ?? 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -287,6 +288,26 @@ parse JSON formatted strings back into the C representation of JSON objects.") style API.") (license l:expat))) +(define-public libyajl + (package +(name "libyajl") +(version "2.1.0") +(source (origin + (method url-fetch) + (uri (string-append "https://github.com/lloyd/yajl/"; + "archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 +"0nmcqpaiq4pv7dymyg3n3jsd57yhp5npxl26a1hzw3m3lmj37drz" +(build-system cmake-build-system) +(home-page "https://lloyd.github.io/yajl/";) +(synopsis "C library for parsing JSON") +(description "Yet Another JSON Library. YAJL is a small +event-driven (SAX-style) JSON parser written in ANSI C, and a small +validating JSON generator.") +(license l:isc))) + (define-public libwebsockets (package (name "libwebsockets") -- 2.4.3
[PATCH 6/7] gnu: Add libconfuse.
* gnu/packages/i3.scm (libconfuse): New variable. --- gnu/packages/i3.scm | 21 + 1 file changed, 21 insertions(+) diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm index 89837db..3daaa9b 100644 --- a/gnu/packages/i3.scm +++ b/gnu/packages/i3.scm @@ -39,6 +39,27 @@ #:use-module (guix download) #:use-module (guix git-download)) +(define-public libconfuse + (package +(name "libconfuse") +(version "2.7") +(source (origin + (method url-fetch) + (uri (string-append "http://savannah.nongnu.org/download/confuse/"; + "confuse-" version ".tar.gz")) + (sha256 + (base32 +"0y47r2ashz44wvnxdb18ivpmj8nxhw3y9bf7v9w0g5byhgyp89g3" +(build-system gnu-build-system) +(home-page "http://www.nongnu.org/confuse/";) +(synopsis "Configuration file parser library") +(description "A configuration file parser library. It supports +sections and (lists of) values (strings, integers, floats, booleans or +other sections), as well as some other features (such as +single/double-quoted strings, environment variable expansion, +functions and nested include statements).") +(license isc))) + (define-public i3-wm (package (name "i3-wm") -- 2.4.3
[PATCH 3/7] gnu: Add libev
* gnu/packages/libevent.scm (libev): New variable. --- gnu/packages/libevent.scm | 24 1 file changed, 24 insertions(+) diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index 88b13ec..c9da139 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright ?? 2013, 2014, 2015 Ludovic Court??s ;;; Copyright ?? 2015 Mark H Weaver +;;; Copyright ?? 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,6 +62,29 @@ then add or remove events dynamically without having to change the event loop.") (license bsd-3))) +(define-public libev + (package +(name "libev") +(version "4.20") +(source (origin + (method url-fetch) + (uri (string-append "http://dist.schmorp.de/libev/libev-"; + version + ".tar.gz")) + (sha256 + (base32 +"17j47pbkr65a18mfvy2861p5k7w4pxmdgiw723ryfqd9gx636w7q" +(build-system gnu-build-system) +(home-page "http://software.schmorp.de/pkg/libev.html";) +(synopsis "An event loop that is loosely modelled after libevent") +(description "A full-featured and high-performance event loop that +is loosely modelled after libevent, but without its limitations and +bugs. It is used in GNU Virtual Private Ethernet, rxvt-unicode, +auditd, the Deliantra MORPG Server and Client, and many other +programs.") +(license + (list bsd-2 gpl2+ + (define-public libuv (package (name "libuv") -- 2.4.3
[PATCH 1/7] gnu: Add Pod-Simple.
* gnu/packages/perl.scm (perl-pod-simple): New variable. --- gnu/packages/perl.scm | 20 1 file changed, 20 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index d2e38cc..8f9d599 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3,6 +3,7 @@ ;;; Copyright ?? 2013 Andreas Enge ;;; Copyright ?? 2015 Ricardo Wurmus ;;; Copyright ?? 2015 Eric Bavier +;;; Copyright ?? 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -3941,6 +3942,25 @@ directory specifications in a cross-platform manner.") for a given module is comprehensive.") (license (package-license perl +(define-public perl-pod-simple + (package +(name "perl-pod-simple") +(version "3.30") +(source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/D/DW/DWHEELER/" +"Pod-Simple-" version ".tar.gz")) + (sha256 + (base32 +"0yzy7mw2jriwcywmh38csjqrwxj207b2b7rlpvkdh1rq5828hary" +(build-system perl-build-system) +(home-page "http://search.cpan.org/dist/Pod-Simple/";) +(synopsis "Parsing library for text in Pod format") +(description "Pod::Simple is a Perl library for parsing text in +the Pod (plain old documentation) markup language that is typically +used for writing documentation for Perl and for Perl modules.") +(license (package-license perl + (define-public perl-posix-strftime-compiler (package (name "perl-posix-strftime-compiler") -- 2.4.3
[PATCH 4/7] gnu: Add xcb-util-cursor.
* gnu/packages/xorg.scm (xcb-util-cursor): New variable. --- gnu/packages/xorg.scm | 30 ++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index a9ecc1e..c5813a0 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -3,6 +3,7 @@ ;;; Copyright ?? 2014, 2015 Mark H Weaver ;;; Copyright ?? 2014 Eric Bavier ;;; Copyright ?? 2015 Ludovic Court??s +;;; Copyright ?? 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -2033,6 +2034,35 @@ legacy X clients.") (license license:x11))) +(define-public xcb-util-cursor + (package +(name "xcb-util-cursor") +(version "0.1.2") +(source (origin + (method url-fetch) + (uri (string-append "http://xcb.freedesktop.org/dist/"; + "xcb-util-cursor-" version ".tar.gz")) + (sha256 + (base32 +"0bm0mp99abdfb6v4v60hq3msvk67b2x9ml3kbx5y2g18xdhm3rdr" +(build-system gnu-build-system) +(native-inputs + `(("m4" ,m4) + ("pkg-config" ,pkg-config))) +(inputs + `(("libxcb" ,libxcb) + ("xcb-util-renderutil" ,xcb-util-renderutil) + ("xcb-util-image" ,xcb-util-image))) +(home-page "http://cgit.freedesktop.org/xcb/util-cursor/";) +(synopsis "Port of libxcursor") +(description "Port of libxcursor.") +(license + ; expat license with added clause regarding advertising + (license:non-copyleft + "file://COPYING" + "See COPYING in the distribution." + + (define-public xcb-proto (package (name "xcb-proto") -- 2.4.3
[PATCHES] Add i3
Hello, Here is a set of patches that add the wonderfull tiling window manager that is i3. I am sorry for this second wave, it fixes things that broke after moving the dependencies into the files that better suite their purpose. I also made some formatting correction after Mark review on IRC. Eric.
[PATCH 6/7] gnu: Add libconfuse.
* gnu/packages/i3.scm (libconfuse): New variable. --- gnu/packages/i3.scm | 22 ++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm index bcb4888..725fdb6 100644 --- a/gnu/packages/i3.scm +++ b/gnu/packages/i3.scm @@ -39,6 +39,28 @@ #:use-module (guix download) #:use-module (guix git-download)) +(define-public libconfuse + (package +(name "libconfuse") +(version "2.7") +(source (origin + (method url-fetch) + (uri (string-append "http://savannah.nongnu.org/download/confuse/"; + "confuse-" version ".tar.gz")) + (sha256 + (base32 +"0y47r2ashz44wvnxdb18ivpmj8nxhw3y9bf7v9w0g5byhgyp89g3" +(build-system gnu-build-system) +(home-page "http://www.nongnu.org/confuse/";) +(synopsis "Configuration file parser library") +(description "A configuration file parser library. It supports +sections and (lists of) values (strings, integers, floats, booleans or +other sections), as well as some other features (such as +single/double-quoted strings, environment variable expansion, +functions and nested include statements). It makes it very easy to +add configuration file capability to a program using a simple API. ") +(license isc))) + (define-public i3-wm (package (name "i3-wm") -- 2.4.3
[PATCH 7/7] gnu: Add i3status.
* gnu/packages/i3.scm (i3status): New variable. --- gnu/packages/i3.scm | 38 ++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm index 725fdb6..a9a5640 100644 --- a/gnu/packages/i3.scm +++ b/gnu/packages/i3.scm @@ -61,6 +61,44 @@ functions and nested include statements). It makes it very easy to add configuration file capability to a program using a simple API. ") (license isc))) +(define-public i3status + (package +(name "i3status") +(version "2.9") +(source (origin + (method url-fetch) + (uri (string-append "http://i3wm.org/i3status/i3status-"; + version ".tar.bz2")) + (sha256 + (base32 +"1qwxbrga2fi5wf742hh9ajwa8b2kpzkjjnhjlz4wlpv21i80kss2" +(build-system gnu-build-system) +(arguments + `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure)) + #:tests? #f)) ; no test suite +(inputs + `(("openlibm" ,openlibm) + ("libconfuse" ,libconfuse) + ("libyajl" ,libyajl) + ("alsa-lib" ,alsa-lib) + ("wireless-tools" ,wireless-tools) + ("libcap" ,libcap) + ("asciidoc" ,asciidoc))) +(home-page "http://i3wm.org/i3status/";) +(synopsis "Generating a status bar for i3bar, dzen2, xmobar or +similar programs") +(description "i3status is a small program for generating a status +bar for i3bar, dzen2, xmobar or similar programs. It is designed to +be very efficient by issuing a very small number of system calls, as +one generally wants to update such a status line every second. This +ensures that even under high load, your status bar is updated +correctly. Also, it saves a bit of energy by not hogging your CPU as +much as spawning the corresponding amount of shell commands would.") +(license bsd-3))) + (define-public i3-wm (package (name "i3-wm") -- 2.4.3
[PATCH 3/7] gnu: Add libev
* gnu/packages/libevent.scm (libev): New variable. --- gnu/packages/libevent.scm | 26 ++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index 88b13ec..efd8df0 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,6 +62,31 @@ then add or remove events dynamically without having to change the event loop.") (license bsd-3))) +(define-public libev + (package +(name "libev") +(version "4.20") +(source (origin + (method url-fetch) + (uri (string-append "http://dist.schmorp.de/libev/libev-"; + version + ".tar.gz")) + (sha256 + (base32 +"17j47pbkr65a18mfvy2861p5k7w4pxmdgiw723ryfqd9gx636w7q" +(build-system gnu-build-system) +(home-page "http://software.schmorp.de/pkg/libev.html";) +(synopsis "An event loop that is loosely modelled after libevent") +(description "A full-featured and high-performance event loop that +is loosely modelled after libevent, but without its limitations and +bugs. It is used in GNU Virtual Private Ethernet, rxvt-unicode, +auditd, the Deliantra MORPG Server and Client, and many other +programs.") +(license + (non-copyleft + "file://LICENSE" + "See LICENSE in the distribution." + (define-public libuv (package (name "libuv") -- 2.4.3
[PATCH 5/7] gnu: Add i3-wm.
* gnu/packages/i3.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. --- gnu-system.am | 1 + gnu/packages/i3.scm | 89 + 2 files changed, 90 insertions(+) create mode 100644 gnu/packages/i3.scm diff --git a/gnu-system.am b/gnu-system.am index 9f46f7b..9686a7e 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -149,6 +149,7 @@ GNU_SYSTEM_MODULES =\ gnu/packages/haskell.scm \ gnu/packages/hugs.scm\ gnu/packages/hurd.scm\ + gnu/packages/i3.scm \ gnu/packages/ibus.scm\ gnu/packages/icu4c.scm \ gnu/packages/idutils.scm \ diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm new file mode 100644 index 000..bcb4888 --- /dev/null +++ b/gnu/packages/i3.scm @@ -0,0 +1,89 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2015 Eric Dvorsak +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages i3) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (gnu packages linux) + #:use-module (guix build-system gnu) + #:use-module (gnu packages base) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages perl) + #:use-module (gnu packages xorg) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages qt) + #:use-module (gnu packages asciidoc) + #:use-module (gnu packages xml) + #:use-module (gnu packages m4) + #:use-module (gnu packages docbook) + #:use-module (gnu packages pcre) + #:use-module (gnu packages gtk) + #:use-module (gnu packages libevent) + #:use-module (gnu packages maths) + #:use-module (gnu packages web) + #:use-module (guix download) + #:use-module (guix git-download)) + +(define-public i3-wm + (package +(name "i3-wm") +(version "4.10.3") +(source (origin + (method url-fetch) + (uri (string-append "http://i3wm.org/downloads/i3-"; + version ".tar.bz2")) + (sha256 + (base32 +"1lq7h4w7m0hi31iva8g7yf1sc11ispnknxjdaj9agld4smxqb44j" +(build-system gnu-build-system) +(arguments + `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure)) + #:tests? #f)) ; no test suite +(inputs + `(("libxcb" ,libxcb) + ("xcb-util" ,xcb-util) + ("xcb-util-cursor" ,xcb-util-cursor) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm) + ("libxkbcommon" ,libxkbcommon) + ("libev" ,libev) + ("libyajl" ,libyajl) + ("asciidoc" ,asciidoc) + ("xmlto" ,xmlto) + ("perl-pod-simple" ,perl-pod-simple) + ("docbook-xml" ,docbook-xml) + ("libx11" ,libx11) + ("pcre" ,pcre) + ("startup-notification" ,startup-notification) + ("pango" ,pango) + ("cairo" ,cairo))) +(native-inputs + `(("which" ,which) + ("perl" ,perl) + ("pkg-config" ,pkg-config))) +(home-page "http://i3wm.org/";) +(synopsis "Improved tiling window manager") +(description "i3 is a tiling window manager, completely written +from scratch. The target platforms are GNU/Linux and BSD operating +systems, our code is Free and Open Source Software (FOSS) under the +BSD license. i3 is primarily targeted at advanced users and +developers.") +(license bsd-3))) -- 2.4.3
[PATCH 4/7] gnu: Add xcb-util-cursor.
* gnu/packages/xorg.scm (xcb-util-cursor): New variable. --- gnu/packages/xorg.scm | 29 + 1 file changed, 29 insertions(+) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index a9ecc1e..dc90918 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2014 Eric Bavier ;;; Copyright © 2015 Ludovic Courtès +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -2033,6 +2034,34 @@ legacy X clients.") (license license:x11))) +(define-public xcb-util-cursor + (package +(name "xcb-util-cursor") +(version "0.1.2") +(source (origin + (method url-fetch) + (uri (string-append "http://xcb.freedesktop.org/dist/"; + "xcb-util-cursor-" version ".tar.gz")) + (sha256 + (base32 +"0bm0mp99abdfb6v4v60hq3msvk67b2x9ml3kbx5y2g18xdhm3rdr" +(build-system gnu-build-system) +(native-inputs + `(("m4" ,m4) + ("pkg-config" ,pkg-config))) +(inputs + `(("libxcb" ,libxcb) + ("xcb-util-renderutil" ,xcb-util-renderutil) + ("xcb-util-image" ,xcb-util-image))) +(home-page "http://cgit.freedesktop.org/xcb/util-cursor/";) +(synopsis "Port of libxcursor") +(description "Port of libxcursor.") +(license + (license:non-copyleft + "file://COPYING" + "See COPYING in the distribution." + + (define-public xcb-proto (package (name "xcb-proto") -- 2.4.3
[PATCH 2/7] gnu: Add libyajl.
* gnu/packages/web.scm (libyajl): New variable. --- gnu/packages/web.scm | 20 1 file changed, 20 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 48bfbc7..c1c461a 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer ;;; Copyright © 2015 Eric Bavier +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -287,6 +288,25 @@ parse JSON formatted strings back into the C representation of JSON objects.") style API.") (license l:expat))) +(define-public libyajl + (package +(name "libyajl") +(version "2.1.0") +(source (origin + (method url-fetch) + (uri (string-append "https://github.com/lloyd/yajl/"; + "archive/" version ".tar.gz")) + (sha256 + (base32 +"0nmcqpaiq4pv7dymyg3n3jsd57yhp5npxl26a1hzw3m3lmj37drz" +(build-system cmake-build-system) +(home-page "https://lloyd.github.io/yajl/";) +(synopsis "C library for parsing JSON") +(description "Yet Another JSON Library. YAJL is a small +event-driven (SAX-style) JSON parser written in ANSI C, and a small +validating JSON generator.") +(license l:isc))) + (define-public libwebsockets (package (name "libwebsockets") -- 2.4.3
[PATCH 1/7] gnu: Add Pod-Simple.
* gnu/packages/perl.scm (perl-pod-simple): New variable. --- gnu/packages/perl.scm | 23 +++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index d2e38cc..2e7df22 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015 Eric Bavier +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -3941,6 +3942,28 @@ directory specifications in a cross-platform manner.") for a given module is comprehensive.") (license (package-license perl +(define-public perl-pod-simple + (package +(name "perl-pod-simple") +(version "3.30-1") +(source (origin + (method url-fetch) + (uri (string-append "http://search.cpan.org/CPAN/authors/id/M/"; + "MA/MARCGREEN/Pod-Simple-" + (string-join (string-split version #\-) "_") + ".tar.gz")) + (sha256 + (base32 +"0yzy7mw2jriwcywmh38csjqrwxj207b2b7rlpvkdh1rq5828hary" +(build-system perl-build-system) +(home-page + "http://search.cpan.org/~marcgreen/Pod-Simple/lib/Pod/Simple.pod";) +(synopsis "Parsing library for text in Pod format") +(description "Pod::Simple is a Perl library for parsing text in +the Pod (plain old documentation) markup language that is typically +used for writing documentation for Perl and for Perl modules.") +(license (package-license perl + (define-public perl-posix-strftime-compiler (package (name "perl-posix-strftime-compiler") -- 2.4.3
[PATCH 5/7] gnu: Add i3-wm.
* gnu/packages/i3.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. --- gnu-system.am | 1 + gnu/packages/i3.scm | 88 + 2 files changed, 89 insertions(+) create mode 100644 gnu/packages/i3.scm diff --git a/gnu-system.am b/gnu-system.am index 9f46f7b..9686a7e 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -149,6 +149,7 @@ GNU_SYSTEM_MODULES =\ gnu/packages/haskell.scm \ gnu/packages/hugs.scm\ gnu/packages/hurd.scm\ + gnu/packages/i3.scm \ gnu/packages/ibus.scm\ gnu/packages/icu4c.scm \ gnu/packages/idutils.scm \ diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm new file mode 100644 index 000..d324a10 --- /dev/null +++ b/gnu/packages/i3.scm @@ -0,0 +1,88 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2015 Eric Dvorsak +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages i3) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (gnu packages linux) + #:use-module (guix build-system gnu) + #:use-module (gnu packages base) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages perl) + #:use-module (gnu packages xorg) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages qt) + #:use-module (gnu packages asciidoc) + #:use-module (gnu packages xml) + #:use-module (gnu packages m4) + #:use-module (gnu packages docbook) + #:use-module (gnu packages pcre) + #:use-module (gnu packages gtk) + #:use-module (gnu packages maths) + #:use-module (gnu packages web) + #:use-module (guix download) + #:use-module (guix git-download)) + +(define-public i3-wm + (package +(name "i3-wm") +(version "4.10.3") +(source (origin + (method url-fetch) + (uri (string-append "http://i3wm.org/downloads/i3-"; + version ".tar.bz2")) + (sha256 + (base32 +"1lq7h4w7m0hi31iva8g7yf1sc11ispnknxjdaj9agld4smxqb44j" +(build-system gnu-build-system) +(arguments + `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check +(inputs + `(("libxcb" ,libxcb) + ("xcb-util" ,xcb-util) + ("xcb-util-cursor" ,xcb-util-cursor) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm) + ("libxkbcommon" ,libxkbcommon) + ("libev" ,libev) + ("libyajl" ,libyajl) + ("asciidoc" ,asciidoc) + ("xmlto" ,xmlto) + ("perl-pod-simple" ,perl-pod-simple) + ("docbook-xml" ,docbook-xml) + ("libx11" ,libx11) + ("pcre" ,pcre) + ("startup-notification" ,startup-notification) + ("pango" ,pango) + ("cairo" ,cairo))) +(native-inputs + `(("which" ,which) + ("perl" ,perl) + ("pkg-config" ,pkg-config))) +(home-page "http://i3wm.org/";) +(synopsis "Improved tiling window manager") +(description "i3 is a tiling window manager, completely written +from scratch. The target platforms are GNU/Linux and BSD operating +systems, our code is Free and Open Source Software (FOSS) under the +BSD license. i3 is primarily targeted at advanced users and +developers.") +(license bsd-3))) -- 2.4.3
[PATCH 1/7] gnu: Add Pod-Simple.
* gnu/packages/perl.scm (perl-pod-simple): New variable. --- gnu/packages/perl.scm | 21 + 1 file changed, 21 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index d2e38cc..7318542 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015 Eric Bavier +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -3941,6 +3942,26 @@ directory specifications in a cross-platform manner.") for a given module is comprehensive.") (license (package-license perl +(define-public perl-pod-simple + (package +(name "perl-pod-simple") +(version "3.30_1") +(source (origin + (method url-fetch) + (uri (string-append "http://search.cpan.org/CPAN/authors/id/M/"; + "MA/MARCGREEN/Pod-Simple-" version + ".tar.gz")) + (sha256 + (base32 +"0yzy7mw2jriwcywmh38csjqrwxj207b2b7rlpvkdh1rq5828hary" +(build-system perl-build-system) +(home-page "http://search.cpan.org/~marcgreen/Pod-Simple/lib/Pod/Simple.pod";) +(synopsis "Parsing library for text in Pod format") +(description "Pod::Simple is a Perl library for parsing text in +the Pod (plain old documentation) markup language that is typically +used for writing documentation for Perl and for Perl modules.") +(license (package-license perl + (define-public perl-posix-strftime-compiler (package (name "perl-posix-strftime-compiler") -- 2.4.3
[PATCH 4/7] gnu: Add xcb-util-cursor.
* gnu/packages/xorg.scm (xcb-util-cursor): New variable. --- gnu/packages/xorg.scm | 28 1 file changed, 28 insertions(+) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index a9ecc1e..00d7885 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2014 Eric Bavier ;;; Copyright © 2015 Ludovic Courtès +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -2033,6 +2034,33 @@ legacy X clients.") (license license:x11))) +(define-public xcb-util-cursor + (package +(name "xcb-util-cursor") +(version "0.1.2") +(source (origin + (method url-fetch) + (uri (string-append "http://xcb.freedesktop.org/dist/xcb-util-cursor-"; version ".tar.gz")) + (sha256 + (base32 +"0bm0mp99abdfb6v4v60hq3msvk67b2x9ml3kbx5y2g18xdhm3rdr" +(build-system gnu-build-system) +(native-inputs + `(("m4" ,m4) + ("pkg-config" ,pkg-config))) +(inputs + `(("libxcb" ,libxcb) + ("xcb-util-renderutil" ,xcb-util-renderutil) + ("xcb-util-image" ,xcb-util-image))) +(home-page "http://cgit.freedesktop.org/xcb/util-cursor/";) +(synopsis "Port of libxcursor") +(description "Port of libxcursor.") +(license + (non-copyleft + "file://COPYING" + "See COPYING in the distribution." + + (define-public xcb-proto (package (name "xcb-proto") -- 2.4.3
[PATCH 6/7] gnu: Add libconfuse.
* gnu/packages/i3.scm (libconfuse): New variable. --- gnu/packages/i3.scm | 21 + 1 file changed, 21 insertions(+) diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm index d324a10..8895a28 100644 --- a/gnu/packages/i3.scm +++ b/gnu/packages/i3.scm @@ -38,6 +38,27 @@ #:use-module (guix download) #:use-module (guix git-download)) +(define-public libconfuse + (package +(name "libconfuse") +(version "2.7") +(source (origin + (method url-fetch) + (uri (string-append "http://savannah.nongnu.org/download/confuse/"; + "confuse-" version ".tar.gz")) + (sha256 + (base32 "0y47r2ashz44wvnxdb18ivpmj8nxhw3y9bf7v9w0g5byhgyp89g3" +(build-system gnu-build-system) +(home-page "http://www.nongnu.org/confuse/";) +(synopsis "Configuration file parser library") +(description "A configuration file parser library. It supports +sections and (lists of) values (strings, integers, floats, booleans or +other sections), as well as some other features (such as +single/double-quoted strings, environment variable expansion, +functions and nested include statements). It makes it very easy to +add configuration file capability to a program using a simple API. ") +(license isc))) + (define-public i3-wm (package (name "i3-wm") -- 2.4.3
[PATCH 7/7] gnu: Add i3status.
* gnu/packages/i3.scm (i3status): New variable. --- gnu/packages/i3.scm | 38 ++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/i3.scm b/gnu/packages/i3.scm index 8895a28..23755fa 100644 --- a/gnu/packages/i3.scm +++ b/gnu/packages/i3.scm @@ -59,6 +59,44 @@ functions and nested include statements). It makes it very easy to add configuration file capability to a program using a simple API. ") (license isc))) +(define-public i3status + (package +(name "i3status") +(version "2.9") +(source (origin + (method url-fetch) + (uri (string-append "http://i3wm.org/i3status/i3status-"; + version ".tar.bz2")) + (sha256 + (base32 +"1qwxbrga2fi5wf742hh9ajwa8b2kpzkjjnhjlz4wlpv21i80kss2" +(build-system gnu-build-system) +(arguments + `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check +(inputs + `(("openlibm" ,openlibm) + ("libconfuse" ,libconfuse) + ("libyajl" ,libyajl) + ("alsa-lib" ,alsa-lib) + ("wireless-tools" ,wireless-tools) + ("libcap" ,libcap) + ("asciidoc" ,asciidoc))) +(home-page "http://i3wm.org/i3status/";) +(synopsis "Generating a status bar for i3bar, dzen2, xmobar or +similar programs") +(description "i3status is a small program for generating a status +bar for i3bar, dzen2, xmobar or similar programs. It is designed to +be very efficient by issuing a very small number of system calls, as +one generally wants to update such a status line every second. This +ensures that even under high load, your status bar is updated +correctly. Also, it saves a bit of energy by not hogging your CPU as +much as spawning the corresponding amount of shell commands would.") +(license bsd-3))) + (define-public i3-wm (package (name "i3-wm") -- 2.4.3
[PATCH 2/7] gnu: Add libyajl.
* gnu/packages/web.scm (libyajl): New variable. --- gnu/packages/web.scm | 19 +++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 48bfbc7..07054c2 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer ;;; Copyright © 2015 Eric Bavier +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -287,6 +288,24 @@ parse JSON formatted strings back into the C representation of JSON objects.") style API.") (license l:expat))) +(define-public libyajl + (package +(name "libyajl") +(version "2.1.0") +(source (origin + (method url-fetch) + (uri (string-append "https://github.com/lloyd/yajl/archive/"; version ".tar.gz")) + (sha256 + (base32 +"0nmcqpaiq4pv7dymyg3n3jsd57yhp5npxl26a1hzw3m3lmj37drz" +(build-system cmake-build-system) +(home-page "https://lloyd.github.io/yajl/";) +(synopsis "C library for parsing JSON") +(description "Yet Another JSON Library. YAJL is a small +event-driven (SAX-style) JSON parser written in ANSI C, and a small +validating JSON generator.") +(license isc))) + (define-public libwebsockets (package (name "libwebsockets") -- 2.4.3
[PATCH 3/7] gnu: Add libev
* gnu/packages/libevent.scm (libev): New variable. --- gnu/packages/libevent.scm | 26 ++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index 88b13ec..efd8df0 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,6 +62,31 @@ then add or remove events dynamically without having to change the event loop.") (license bsd-3))) +(define-public libev + (package +(name "libev") +(version "4.20") +(source (origin + (method url-fetch) + (uri (string-append "http://dist.schmorp.de/libev/libev-"; + version + ".tar.gz")) + (sha256 + (base32 +"17j47pbkr65a18mfvy2861p5k7w4pxmdgiw723ryfqd9gx636w7q" +(build-system gnu-build-system) +(home-page "http://software.schmorp.de/pkg/libev.html";) +(synopsis "An event loop that is loosely modelled after libevent") +(description "A full-featured and high-performance event loop that +is loosely modelled after libevent, but without its limitations and +bugs. It is used in GNU Virtual Private Ethernet, rxvt-unicode, +auditd, the Deliantra MORPG Server and Client, and many other +programs.") +(license + (non-copyleft + "file://LICENSE" + "See LICENSE in the distribution." + (define-public libuv (package (name "libuv") -- 2.4.3
[PATCH 1/2] gnu: Add font-ubuntu
* gnu/packages/fonts/scm (font-ubuntu): New variable. --- gnu/packages/fonts.scm | 53 ++ 1 file changed, 53 insertions(+) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index f72c542..f26a599 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2014 Joshua Grant ;;; Copyright © 2014 Alex Kost ;;; Copyright © 2015 Sou Bunnbu +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,10 +29,62 @@ #:use-module (guix build-system trivial) #:use-module (gnu packages base) #:use-module (gnu packages compression) + #:use-module (gnu packages zip) #:use-module (gnu packages perl) #:use-module (gnu packages xorg) #:use-module (gnu packages pkg-config)) +(define-public font-ubuntu + (package +(name "font-ubuntu") +(version "0.80") +(source (origin + (method url-fetch) + (uri (string-append "http://font.ubuntu.com/download/ubuntu-font-family-"; + version ".zip")) + (sha256 + (base32 +"0k4f548riq23gmw4zhn30qqkcpaj4g2ab5rbc3lflfxwkc4p0w8h" +(build-system trivial-build-system) +(arguments + `(#:modules ((guix build utils)) + #:builder (begin + (use-modules (guix build utils) +(srfi srfi-26)) + + (let ((PATH (string-append (assoc-ref %build-inputs + "unzip") + "/bin")) + (font-dir (string-append %output + "/share/fonts/truetype")) + (doc-dir (string-append %output "/share/doc/" + ,name "-" ,version))) + (setenv "PATH" PATH) + (system* "unzip" (assoc-ref %build-inputs "source")) + + (mkdir-p font-dir) + (mkdir-p doc-dir) + (chdir (string-append "ubuntu-font-family-" ,version)) + (for-each (lambda (ttf) + (copy-file ttf +(string-append font-dir "/" ttf))) + (find-files "." "\\.ttf$")) + (for-each (lambda (doc) + (copy-file doc +(string-append doc-dir "/" doc))) + (find-files "." "\\.txt$")) +(native-inputs `(("source" ,source) + ("unzip" ,unzip))) +(home-page "http://font.ubuntu.com/";) +(synopsis "The Ubuntu Font Family") +(description "The Ubuntu Font Family is a unique, custom designed font +that has a very distinctive look and feel. This package provides the +TrueType (TTF) files.") +(license + (license:non-copyleft + "file://LICENCE.txt" + "See the LICENCE file in the distribution" + (define-public font-dejavu (package (name "font-dejavu") -- 2.4.3
[PATCH 2/2] gnu: Add font-inconsolata
* gnu/packages/fonts.scm (font-inconsolata): New variable. --- gnu/packages/fonts.scm | 28 1 file changed, 28 insertions(+) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index f26a599..b0eac93 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -34,6 +34,34 @@ #:use-module (gnu packages xorg) #:use-module (gnu packages pkg-config)) +(define-public font-incosolata + (package +(name "font-inconsolata") +(version "0.80") +(source (origin + (method url-fetch) + (uri "http://www.levien.com/type/myfonts/Inconsolata.otf";) + (sha256 + (base32 +"06js6znbcf7swn8y3b8ki416bz96ay7d3yvddqnvi88lqhbfcq8m" +(build-system trivial-build-system) +(arguments + `(#:modules ((guix build utils)) + #:builder (begin + (use-modules (guix build utils)) + (let ((font-dir (string-append %output + "/share/fonts/opentype")) + (source (assoc-ref %build-inputs "source"))) + (mkdir-p font-dir) + (copy-file source +(string-append font-dir "/" "inconsolata.otf")) +(native-inputs `(("source" ,source))) +(home-page "http://levien.com/type/myfonts/inconsolata.html";) +(synopsis "Monospace font") +(description "A monospace font, designed for code listings and the like, +in print. With attention to detail for high resolution rendering.") +(license license:silofl1.1))) + (define-public font-ubuntu (package (name "font-ubuntu") -- 2.4.3
Re: [PATCH] python2-ansible, python-ccm and dependencies
Ok I have made all the changes you recommended. Thank you for your help. 2015-07-26 11:56 GMT+02:00 Alex Kost : > Eric Dvorsak (2015-07-25 22:58 +0300) wrote: > > > Thank you Ricardo and Alex for taking the time to review and comment my > > patch. I edited it to take your advices into account. I hope I did not > miss > > anything this time > > Please add the following line to "python.scm": > > ;;; Copyright © 2015 Eric Dvorsak > > I think you can do it in the first patch. > > [...] > > +(synopsis "Cassandra Cluster Manager") > > +(description "A script/library to create, launch and remove an > Apache Cassandra cluster on localhost.") > > Please, do not use long lines (more than 72-78 chars). If you use > Emacs, you may just "M-q" inside descriptions. > > [...] > > +(define-public python2-ansible > > + (package > > +(name "python2-ansible") > > +(version "1.9.2") > > +(source > > + (origin > > + (method url-fetch) > > + (uri (string-append > > + " > https://pypi.python.org/packages/source/a/ansible/ansible-"; > > + version > > + ".tar.gz")) > > + (sha256 > > +(base32 > > + "007fzgsqaahb0y4gjdxxmir9kcni7wph2z14jhqgpz88idrz8pn2" > > +(build-system python-build-system) > > +(native-inputs > > + `(("python2-setuptools" ,python2-setuptools) > > + ("python2-pycrypto" ,python2-pycrypto) > > + ("python2-httplib2" ,python2-httplib2) > > + ("python2-passlib" ,python2-passlib) > > + ("python2-nose" ,python2-nose) > > + ("python2-mock" ,python2-mock) > > + ("python2-jinja2" ,python2-jinja2) > > + ("python2-pyyaml" ,python2-pyyaml) > > + ("python2-paramiko" ,python2-paramiko))) > > +(inputs > > + `(("python2-pycrypto" ,python2-pycrypto) > > + ("python2-jinja2" ,python2-jinja2) > > + ("python2-pyyaml" ,python2-pyyaml) > > + ("python2-paramiko" ,python2-paramiko))) > > +(arguments > > + `(#:python ,python-2)) ; incompatible with Python 3 > > +(home-page "http://ansible.com/";) > > +(synopsis "Radically simple IT automation") > > +(description "Ansible is a radically simple IT automation system. > It handles configuration-management, application deployment, cloud > provisioning, ad-hoc task-execution, and multinode orchestration - > including trivializing things like zero downtime rolling updates with load > balancers.") > > +(license gpl3))) > > I think it should be 'gpl3+'. AFAICS > <https://github.com/ansible/ansible/blob/devel/COPYING> is a usual GPL > license <http://www.gnu.org/licenses/gpl.txt> which has "or any later > version" in it, so we use 'gpl3+' for this. > > Otherwise, the patches look good to me, perhaps the others will notice > more. I can only confirm that the packages built successfully here. > > -- > Alex > From 7bc1543f231993e6e04c2a79e6840663f14c0def Mon Sep 17 00:00:00 2001 From: Eric Dvorsak Date: Sat, 25 Jul 2015 21:31:05 +0200 Subject: [PATCH 1/8] gnu: Add python2-pycrypto. * gnu/packages/python.scm (python2-pycrypto): New variable. --- gnu/packages/python.scm | 4 1 file changed, 4 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 7709fbd..b70d937 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2015 Pierre-Antoine Rault ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015 Christopher Allan Webber +;;; Copyright © 2015 Eric Dvorsak ;;; ;;; This file is part of GNU Guix. ;;; @@ -538,6 +539,9 @@ and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal, etc.). The package is structured to make adding new modules easy.") (license public-domain))) +(define-public python2-pycrypto + (package-with-python2 python-pycrypto)) + (define-public python-keyring (package (name "python-keyring") -- 2.4.3 From d15941992f1a8b882902990641cee2b1e89c2b6d Mon Sep 17 00:00:00 2001 From: Eric Dvorsak Date: Sat, 25 Jul 2015 21:34:19 +0200 Subject: [PATCH 2/8] gnu: Add python-ccm. * gnu/packages/python.scm (python-ccm, python2-ccm): New variables. --- gnu/packages/python.scm | 29 + 1 file changed, 29 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index b
Re: [PATCH] python2-ansible, python-ccm and dependencies
Thank you Ricardo and Alex for taking the time to review and comment my patch. I edited it to take your advices into account. I hope I did not miss anything this time Eric 2015-07-25 12:07 GMT+02:00 Ricardo Wurmus : > > Hi Eric, > > > I added the following package definitions to python.scm : > > > > - python2-ansible > > - python-passlib > > - python-py-bcrypt > > - python-paramiko > > - python-httplib2 > > - python-ecdsa > > - python-ccm > > we normally make separate commits for separate packages. The only > exception is for when we add python- as well as python2-; > they usually go together in the same commit. > > Please also run ‘guix lint package-name’ for each of the new packages. > It will tell you a couple of things that you could do to improve. > > One thing I noticed is that the description you provide for the packages > is the same as the synopsis. The description, however, should provide > more information and it should be complete sentences (with > punctuation). > > Things like ‘("python-setuptools" ,python-setuptools)’ are to be placed > in the list of ‘native-inputs’. ‘native-inputs’ are only used at build > time. > > Finally, there is no space between your definition of ‘python2-ccm’ and > the existing definition of ‘python-pytz’. > > The other patch looks good to me, but it appears that this is a patch by > Mark Weaver. Did you submit it by accident? > > ~~ Ricardo > > From c1dde968fb8b0384fb147b4aa4172816478da974 Mon Sep 17 00:00:00 2001 From: Eric Dvorsak Date: Sat, 25 Jul 2015 21:31:05 +0200 Subject: [PATCH 1/8] gnu: Add python2-pycrypto. * gnu/packages/python.scm (python2-pycrypto): New variable. --- gnu/packages/python.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 7709fbd..6235b48 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -538,6 +538,9 @@ and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal, etc.). The package is structured to make adding new modules easy.") (license public-domain))) +(define-public python2-pycrypto + (package-with-python2 python-pycrypto)) + (define-public python-keyring (package (name "python-keyring") -- 2.4.3 From 80fad0306460b97e3a4de0581be1bed45d699698 Mon Sep 17 00:00:00 2001 From: Eric Dvorsak Date: Sat, 25 Jul 2015 21:34:19 +0200 Subject: [PATCH 2/8] gnu: Add python-ccm. * gnu/packages/python.scm (python-ccm, python2-ccm): New variables. --- gnu/packages/python.scm | 28 1 file changed, 28 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 6235b48..15d62fc 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -297,6 +297,34 @@ pidof, tty, taskset, pmap.") (define-public python2-psutil (package-with-python2 python-psutil)) +(define-public python-ccm + (package +(name "python-ccm") +(version "2.0.4.1") +(source + (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/source/c/ccm/ccm-"; + version + ".tar.gz")) + (sha256 +(base32 + "199jw221albs2iv6xczczq88fxnh0aw8hzmys8qkbzkd99dssng9" +(build-system python-build-system) +(native-inputs + `(("python-setuptools" ,python-setuptools))) +(inputs + `(("python-pyyaml" ,python-pyyaml) + ("python-six" ,python-six))) +(home-page "https://github.com/pcmanus/ccm";) +(synopsis "Cassandra Cluster Manager") +(description "A script/library to create, launch and remove an Apache Cassandra cluster on localhost.") +(license asl2.0))) + +(define-public python2-ccm + (package-with-python2 python-ccm)) + (define-public python-pytz (package (name "python-pytz") -- 2.4.3 From 295fc4b3ccae4d0222ed74e0d6d6031170c8b56e Mon Sep 17 00:00:00 2001 From: Eric Dvorsak Date: Sat, 25 Jul 2015 21:35:35 +0200 Subject: [PATCH 3/8] gnu: Add python-ecdsa. * gnu/packages/python.scm (python-ecdsa, python2-ecdsa): New variables. --- gnu/packages/python.scm | 30 ++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 15d62fc..76eaafd 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -297,6 +297,36 @@ pidof, tty, taskset, pmap.") (define-public python2-psutil (package-with-python2 python-psutil)) +(define-public python-ecdsa + (package +(name "python-ecdsa") +(version "0.13") +(source + (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/sour
[PATCH] python2-ansible, python-ccm and dependencies
I added the following package definitions to python.scm : - python2-ansible - python-passlib - python-py-bcrypt - python-paramiko - python-httplib2 - python-ecdsa - python-ccm This is my first commit ever so if I did something wrong or missed a step in the process please let me know so I can improve for the next ones. Eric Dvorsak. From e766bb8c21294c02d7db19f9789fa0c96c772fae Mon Sep 17 00:00:00 2001 From: Eric Dvorsak Date: Fri, 24 Jul 2015 18:09:48 +0200 Subject: [PATCH 2/2] Add python-ccm, python2-ansible and dependencies --- gnu/packages/python.scm | 213 1 file changed, 213 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 7709fbd..9ac997d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -297,6 +297,219 @@ pidof, tty, taskset, pmap.") (define-public python2-psutil (package-with-python2 python-psutil)) +(define-public python2-ansible + (package +(name "python2-ansible") +(version "1.9.2") +(source + (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/source/a/ansible/ansible-"; + version + ".tar.gz")) + (sha256 +(base32 + "007fzgsqaahb0y4gjdxxmir9kcni7wph2z14jhqgpz88idrz8pn2" +(build-system python-build-system) +(native-inputs + `(("python2-httplib2" ,python2-httplib2) + ("python2-passlib" ,python2-passlib) + ("python2-nose" ,python2-nose) + ("python2-mock" ,python2-mock) + ("python2-jinja2" ,python2-jinja2) + ("python2-pyyaml" ,python2-pyyaml) + ("python2-paramiko" ,python2-paramiko))) +(inputs + `(("python2-setuptools" ,python2-setuptools) + ("python2-jinja2" ,python2-jinja2) + ("python2-pyyaml" ,python2-pyyaml) + ("python2-paramiko" ,python2-paramiko))) +(arguments + `(#:python ,python-2)) ; incompatible with Python 3 +(home-page "http://ansible.com/";) +(synopsis "Radically simple IT automation") +(description "Radically simple IT automation") +(license gpl3))) + +(define-public python-passlib + (package +(name "python-passlib") +(version "1.6.2") +(source + (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/source/p/passlib/passlib-"; + version + ".tar.gz")) + (sha256 +(base32 + "0b9rd161b3mmiwd7nx1v599yh9sp07mlfwac65sjy9qn1l0gd1z9" +(build-system python-build-system) +(inputs + `(("python-nose" ,python-nose) + ("python-py-bcrypt" ,python-py-bcrypt) + ("python-setuptools" ,python-setuptools))) +(arguments + `(#:phases + (alist-cons-before +'check 'set-PYTHON_EGG_CACHE +;; some tests require access to "$HOME/.cython" +(lambda* _ (setenv "PYTHON_EGG_CACHE" "/tmp")) + %standard-phases))) +(home-page "http://passlib.googlecode.com";) +(synopsis + "Comprehensive password hashing framework supporting over 30 schemes") +(description + "Comprehensive password hashing framework supporting over 30 schemes") +(license bsd-3)) + ) + +(define-public python2-passlib + (package-with-python2 python-passlib)) + +(define-public python-py-bcrypt + (package +(name "python-py-bcrypt") +(version "0.4") +(source + (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/source/p/py-bcrypt/py-bcrypt-"; + version + ".tar.gz")) + (sha256 +(base32 + "0y6smdggwi5s72v6p1nn53dg6w05hna3d264cq6kas0lap73p8az" +(build-system python-build-system) +(inputs + `(("python-setuptools" ,python-setuptools))) +(home-page "https://code.google.com/p/py-bcrypt";) +(synopsis + "Bcrypt password hashing and key derivation") +(description + "Bcrypt password hashing and key derivation") +(license bsd-3))) + +(define-public python2-py-bcrypt + (package-with-python2 python-py-bcrypt)) + + +(define-public python-paramiko + (package +(name "python-paramiko") +(version "1.15.2") +(source + (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/source/p/paramiko/paramiko-"; + version + ".tar.gz")) + (sha256 +(base32 + "0mbfzm9zlrz6mla9xakrm8wkll3x035f9rj3