Mirror of GNU Guix
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2181 lines
84 KiB

mailmap: Update entries for Nikita. * .mailmap: change email and name for Nikita. * Makefile.am, doc/guix.texi, etc/completion/fish/guix.fish, gnu/packages/accessibility.scm, gnu/packages/admin.scm, gnu/packages/audio.scm, gnu/packages/autotools.scm, gnu/packages/cdrom.scm, gnu/packages/check.scm, gnu/packages/cinnamon.scm, gnu/packages/compression.scm, gnu/packages/crypto.scm, gnu/packages/databases.scm, gnu/packages/django.scm, gnu/packages/dns.scm, gnu/packages/elixir.scm, gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm, gnu/packages/enlightenment.scm, gnu/packages/erlang.scm, gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/forth.scm, gnu/packages/fvwm.scm, gnu/packages/games.scm, gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm, gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile-xyz.scm, gnu/packages/haskell-apps.scm, gnu/packages/haskell-check.scm, gnu/packages/haskell-crypto.scm, gnu/packages/haskell-xyz.scm, gnu/packages/haskell.scm, gnu/packages/image-viewers.scm, gnu/packages/image.scm, gnu/packages/irc.scm, gnu/packages/language.scm, gnu/packages/libcanberra.scm, gnu/packages/linux.scm, gnu/packages/lisp-xyz.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm, gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm, gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm, gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm, gnu/packages/ncurses.scm, gnu/packages/networking.scm, gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm, gnu/packages/perl-check.scm, gnu/packages/perl.scm, gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm, gnu/packages/python-web.scm, gnu/packages/python-xyz.scm, gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm, gnu/packages/rust.scm, gnu/packages/scheme.scm, gnu/packages/serialization.scm, gnu/packages/shells.scm, gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm, gnu/packages/telephony.scm, gnu/packages/text-editors.scm, gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm, gnu/packages/tor.scm, gnu/packages/version-control.scm, gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm, gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm, gnu/services/desktop.scm, gnu/services/version-control.scm, gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm: Likewise. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2 years ago
gnu: Separate Python core packages from the rest. * gnu/packages/python.scm: Move hundreds of package definitions from here... * gnu/packages/python-xyz.scm: ...to this new module. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/packages/ada.scm, gnu/packages/admin.scm, gnu/packages/android.scm, gnu/packages/audio.scm, gnu/packages/backup.scm, gnu/packages/benchmark.scm, gnu/packages/bioinformatics.scm, gnu/packages/bittorrent.scm, gnu/packages/calendar.scm, gnu/packages/check.scm, gnu/packages/chemistry.scm, gnu/packages/cluster.scm, gnu/packages/compression.scm, gnu/packages/connman.scm, gnu/packages/crypto.scm, gnu/packages/cups.scm, gnu/packages/databases.scm, gnu/packages/dav.scm, gnu/packages/direct-connect.scm, gnu/packages/disk.scm, gnu/packages/django.scm, gnu/packages/dlang.scm, gnu/packages/docker.scm, gnu/packages/ebook.scm, gnu/packages/elf.scm, gnu/packages/emacs.scm, gnu/packages/emulators.scm, gnu/packages/engineering.scm, gnu/packages/enlightenment.scm, gnu/packages/finance.scm, gnu/packages/fltk.scm, gnu/packages/fontutils.scm, gnu/packages/freedesktop.scm, gnu/packages/game-development.scm, gnu/packages/games.scm, gnu/packages/geo.scm, gnu/packages/gl.scm, gnu/packages/glib.scm, gnu/packages/gnome.scm, gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/graph.scm, gnu/packages/graphics.scm, gnu/packages/graphviz.scm, gnu/packages/gtk.scm, gnu/packages/ham-radio.scm, gnu/packages/image-processing.scm, gnu/packages/image-viewers.scm, gnu/packages/image.scm, gnu/packages/irc.scm, gnu/packages/jrnl.scm, gnu/packages/julia.scm, gnu/packages/kde-frameworks.scm, gnu/packages/key-mon.scm, gnu/packages/libffi.scm, gnu/packages/libreoffice.scm, gnu/packages/libusb.scm, gnu/packages/lirc.scm, gnu/packages/logging.scm, gnu/packages/machine-learning.scm, gnu/packages/mail.scm, gnu/packages/mate.scm, gnu/packages/maths.scm, gnu/packages/medical.scm, gnu/packages/messaging.scm, gnu/packages/monitoring.scm, gnu/packages/mp3.scm, gnu/packages/mpd.scm, gnu/packages/music.scm, gnu/packages/networking.scm, gnu/packages/nutrition.scm, gnu/packages/openldap.scm, gnu/packages/openstack.scm, gnu/packages/package-management.scm, gnu/packages/password-utils.scm, gnu/packages/patchutils.scm, gnu/packages/pdf.scm, gnu/packages/photo.scm, gnu/packages/polkit.scm, gnu/packages/protobuf.scm, gnu/packages/python-crypto.scm, gnu/packages/python-web.scm, gnu/packages/qt.scm, gnu/packages/rdf.scm, gnu/packages/ruby.scm, gnu/packages/search.scm, gnu/packages/selinux.scm, gnu/packages/serialization.scm, gnu/packages/shells.scm, gnu/packages/simulation.scm, gnu/packages/ssh.scm, gnu/packages/statistics.scm, gnu/packages/storage.scm, gnu/packages/sync.scm, gnu/packages/terminals.scm, gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm, gnu/packages/tor.scm, gnu/packages/tryton.scm, gnu/packages/version-control.scm, gnu/packages/video.scm, gnu/packages/virtualization.scm, gnu/packages/vpn.scm, gnu/packages/web-browsers.scm, gnu/packages/web.scm, gnu/packages/wicd.scm, gnu/packages/xdisorg.scm, gnu/packages/xorg.scm: Update module references.
3 years ago
3 years ago
gnu: packages: Use 'search-patches' everywhere. * gnu/packages/abiword.scm: Use 'search-patches' for 'patches' field. * gnu/packages/acl.scm: Likewise. * gnu/packages/admin.scm: Likewise. * gnu/packages/algebra.scm: Likewise. * gnu/packages/animation.scm: Likewise. * gnu/packages/apr.scm: Likewise. * gnu/packages/audacity.scm: Likewise. * gnu/packages/audio.scm: Likewise. * gnu/packages/autotools.scm: Likewise. * gnu/packages/avahi.scm: Likewise. * gnu/packages/backup.scm: Likewise. * gnu/packages/base.scm: Likewise. * gnu/packages/bash.scm: Likewise. * gnu/packages/bioinformatics.scm: Likewise. * gnu/packages/cdrom.scm: Likewise. * gnu/packages/ci.scm: Likewise. * gnu/packages/cmake.scm: Likewise. * gnu/packages/cpio.scm: Likewise. * gnu/packages/cross-base.scm: Likewise. * gnu/packages/dico.scm: Likewise. * gnu/packages/doxygen.scm: Likewise. * gnu/packages/ebook.scm: Likewise. * gnu/packages/elf.scm: Likewise. * gnu/packages/emacs.scm: Likewise. * gnu/packages/engineering.scm: Likewise. * gnu/packages/firmware.scm: Likewise. * gnu/packages/flashing-tools.scm: Likewise. * gnu/packages/fltk.scm: Likewise. * gnu/packages/ftp.scm: Likewise. * gnu/packages/games.scm: Likewise. * gnu/packages/gawk.scm: Likewise. * gnu/packages/gcc.scm: Likewise. * gnu/packages/gd.scm: Likewise. * gnu/packages/ghostscript.scm: Likewise. * gnu/packages/glib.scm: Likewise. * gnu/packages/gnome.scm: Likewise. * gnu/packages/gnucash.scm: Likewise. * gnu/packages/gnunet.scm: Likewise. * gnu/packages/gnupg.scm: Likewise. * gnu/packages/gnuzilla.scm: Likewise. * gnu/packages/graphics.scm: Likewise. * gnu/packages/grub.scm: Likewise. * gnu/packages/gtk.scm: Likewise. * gnu/packages/guile.scm: Likewise. * gnu/packages/icu4c.scm: Likewise. * gnu/packages/idutils.scm: Likewise. * gnu/packages/image.scm: Likewise. * gnu/packages/imagemagick.scm: Likewise. * gnu/packages/irc.scm: Likewise. * gnu/packages/ldc.scm: Likewise. * gnu/packages/libcanberra.scm: Likewise. * gnu/packages/libevent.scm: Likewise. * gnu/packages/libreoffice.scm: Likewise. * gnu/packages/libunwind.scm: Likewise. * gnu/packages/libusb.scm: Likewise. * gnu/packages/linux.scm: Likewise. * gnu/packages/lirc.scm: Likewise. * gnu/packages/llvm.scm: Likewise. * gnu/packages/lsh.scm: Likewise. * gnu/packages/lua.scm: Likewise. * gnu/packages/lxqt.scm: Likewise. * gnu/packages/mail.scm: Likewise. * gnu/packages/maths.scm: Likewise. * gnu/packages/mcrypt.scm: Likewise. * gnu/packages/messaging.scm: Likewise. * gnu/packages/mit-krb5.scm: Likewise. * gnu/packages/mp3.scm: Likewise. * gnu/packages/multiprecision.scm: Likewise. * gnu/packages/music.scm: Likewise. * gnu/packages/ninja.scm: Likewise. * gnu/packages/nvi.scm: Likewise. * gnu/packages/ocaml.scm: Likewise. * gnu/packages/orpheus.scm: Likewise. * gnu/packages/ots.scm: Likewise. * gnu/packages/parallel.scm: Likewise. * gnu/packages/patchutils.scm: Likewise. * gnu/packages/pcre.scm: Likewise. * gnu/packages/pdf.scm: Likewise. * gnu/packages/perl.scm: Likewise. * gnu/packages/plotutils.scm: Likewise. * gnu/packages/polkit.scm: Likewise. * gnu/packages/pulseaudio.scm: Likewise. * gnu/packages/python.scm: Likewise. * gnu/packages/qemu.scm: Likewise. * gnu/packages/qt.scm: Likewise. * gnu/packages/ratpoison.scm: Likewise. * gnu/packages/rdf.scm: Likewise. * gnu/packages/readline.scm: Likewise. * gnu/packages/rush.scm: Likewise. * gnu/packages/scheme.scm: Likewise. * gnu/packages/screen.scm: Likewise. * gnu/packages/sdl.scm: Likewise. * gnu/packages/slim.scm: Likewise. * gnu/packages/ssh.scm: Likewise. * gnu/packages/tcl.scm: Likewise. * gnu/packages/tcsh.scm: Likewise. * gnu/packages/texinfo.scm: Likewise. * gnu/packages/tls.scm: Likewise. * gnu/packages/tor.scm: Likewise. * gnu/packages/tv.scm: Likewise. * gnu/packages/valgrind.scm: Likewise. * gnu/packages/version-control.scm: Likewise. * gnu/packages/video.scm: Likewise. * gnu/packages/vpn.scm: Likewise. * gnu/packages/vtk.scm: Likewise. * gnu/packages/w3m.scm: Likewise. * gnu/packages/web.scm: Likewise. * gnu/packages/wicd.scm: Likewise. * gnu/packages/wm.scm: Likewise. * gnu/packages/xdisorg.scm: Likewise. * gnu/packages/xfce.scm: Likewise. * gnu/packages/xiph.scm: Likewise. * gnu/packages/xml.scm: Likewise. * gnu/packages/xorg.scm: Likewise. * gnu/packages/zip.scm: Likewise.
6 years ago
gnu: Fix common unquote typos. It's easy to mistype ‘("foo" foo)’ as ‘("foo", foo)’ (which also works). Fix such typos for the proper edification of our young. * gnu/packages/android.scm: Move unquotes to their operands. * gnu/packages/bootloaders.scm: Likewise. * gnu/packages/build-tools.scm: Likewise. * gnu/packages/chemistry.scm: Likewise. * gnu/packages/compression.scm: Likewise. * gnu/packages/connman.scm: Likewise. * gnu/packages/django.scm: Likewise. * gnu/packages/emulators.scm: Likewise. * gnu/packages/engineering.scm: Likewise. * gnu/packages/file-systems.scm: Likewise. * gnu/packages/freedesktop.scm: Likewise. * gnu/packages/games.scm: Likewise. * gnu/packages/gimp.scm: Likewise. * gnu/packages/gl.scm: Likewise. * gnu/packages/gnome.scm: Likewise. * gnu/packages/graphics.scm: Likewise. * gnu/packages/haskell.scm: Likewise. * gnu/packages/irc.scm: Likewise. * gnu/packages/julia.scm: Likewise. * gnu/packages/kde-frameworks.scm: Likewise. * gnu/packages/linux.scm: Likewise. * gnu/packages/lua.scm: Likewise. * gnu/packages/mail.scm: Likewise. * gnu/packages/make-bootstrap.scm: Likewise. * gnu/packages/messaging.scm: Likewise. * gnu/packages/music.scm: Likewise. * gnu/packages/networking.scm: Likewise. * gnu/packages/ocaml.scm: Likewise. * gnu/packages/perl.scm: Likewise. * gnu/packages/python.scm: Likewise. * gnu/packages/python-web.scm: Likewise. * gnu/packages/qt.scm: Likewise. * gnu/packages/ratpoison.scm: Likewise. * gnu/packages/sdl.scm: Likewise. * gnu/packages/sml.scm: Likewise. * gnu/packages/terminals.scm: Likewise. * gnu/packages/text-editors.scm: Likewise. * gnu/packages/video.scm: Likewise. * gnu/packages/virtualization.scm: Likewise. * gnu/packages/vulkan.scm: Likewise. * gnu/packages/wget.scm: Likewise. * gnu/packages/wine.scm: Likewise. * gnu/packages/wm.scm: Likewise. * gnu/packages/xdisorg.scm: Likewise. * gnu/packages/xml.scm: Likewise. * gnu/packages/xorg.scm: Likewise.
4 years ago
gnu: Use 'modify-phases' syntax. * gnu/packages/admin.scm (mingetty, clusterssh, wpa-supplicant-minimal, wpa-supplicant, wakelan, acpica, tree, direvent, dstat)[arguments]: Use 'modify-phases' syntax. * gnu/packages/algebra.scm (arb)[arguments]: Likewise. * gnu/packages/apr.scm (apr-util)[arguments]: Likewise. * gnu/packages/audio.scm (clalsadrv, fluidsynth, faad2, lv2-mda-piano, lv2-mda-epiano, timidity++, vamp, soundtouch, portaudio, rsound, zita-convolver, zita-alsa-pcmi)[arguments]: Likewise. * gnu/packages/backup.scm (rdup, btar)[arguments]: Likewise. * gnu/packages/bioinformatics.scm (bedops, bwa, crossmap, express, flexbar, grit, hisat, ngs-sdk, subread)[arguments]: Likewise. * gnu/packages/bittorrent.scm (transmission)[arguments]: Likewise. * gnu/packages/cdrom.scm (cd-discid)[arguments]: Likewise. * gnu/packages/compression.scm (sharutils)[arguments]: Likewise. * gnu/packages/conky.scm (conky)[arguments]: Likewise. * gnu/packages/databases.scm (bdb, bdb-5.3)[arguments]: Likewise. * gnu/packages/debug.scm (delta, c-reduce)[arguments]: Likewise. * gnu/packages/display-managers.scm (slim)[arguments]: Likewise. * gnu/packages/dns.scm (dnsmasq)[arguments]: Likewise. * gnu/packages/emacs.scm (geiser, emacs-wget, bbdb)[arguments]: Likewise. * gnu/packages/engineering.scm (pcb)[arguments]: Likewise. * gnu/packages/firmware.scm (ath9k-htc-firmware)[arguments]: Likewise. * gnu/packages/flashing-tools.scm (flashrom)[arguments]: Likewise. * gnu/packages/fltk.scm (fltk)[arguments]: Likewise. * gnu/packages/freedesktop.scm (python-pyxdg)[arguments]: Likewise. * gnu/packages/gd.scm (perl-gd)[arguments]: Likewise. * gnu/packages/gkrellm.scm (gkrellm)[arguments]: Likewise. * gnu/packages/glib.scm (glibmm)[arguments]: Likewise. * gnu/packages/gl.scm (glew)[arguments]: Likewise. * gnu/packages/gnome.scm (icon-naming-utils, orbit2, libbonobo, gnome-vfs, libgnome, libbonoboui, goffice-0.8, dconf)[arguments]: Likewise. * gnu/packages/gprolog.scm (gprolog)[arguments]: Likewise. * gnu/packages/gps.scm (gpscorrelate)[arguments]: Likewise. * gnu/packages/graphics.scm (agg)[arguments]: Likewise. * gnu/packages/gtk.scm (ganv, girara, gtksourceview-2, guile-present, python2-pycairo)[arguments]: Likewise. * gnu/packages/guile.scm (guile-1.8)[arguments]: Likewise. * gnu/packages/guile-wm.scm (guile-wm)[arguments]: Likewise. * gnu/packages/hugs.scm (hugs)[arguments]: Likewise. * gnu/packages/hurd.scm (gnumach-headers, hurd-headers, hurd-minimal) [arguments]: Likewise. * gnu/packages/image-viewers.scm (feh, sxiv)[arguments]: Likewise. * gnu/packages/libcanberra.scm (libcanberra)[arguments]: Likewise. * gnu/packages/linux.scm (bridge-utils, iw, fuse, unionfs-fuse/static, lm-sensors, i2c-tools, xsensors, perf, mdadm, libaio, module-init-tools) [arguments]: Likewise. * gnu/packages/lisp.scm (ccl)[arguments]: Likewise. * gnu/packages/lout.scm (lout)[arguments]: Likewise. * gnu/packages/lua.scm (luajit)[arguments]: Likewise. * gnu/packages/machine-learning.scm (shogun)[arguments]: Likewise. * gnu/packages/mail.scm (exim)[arguments]: Likewise. * gnu/packages/man.scm (man-pages, txt2man)[arguments]: Likewise. * gnu/packages/maths.scm (lapack, superlu-dist, openlibm, openspecfun) [arguments]: Likewise. * gnu/packages/messaging.scm (bitlbee)[arguments]: Likewise. * gnu/packages/mp3.scm (libmad, id3lib, mp3info)[arguments]: Likewise. * gnu/packages/music.scm (solfege)[arguments]: Likewise. * gnu/packages/noweb.scm (noweb)[arguments]: Likewise. * gnu/packages/patchutils.scm (patchutils, quilt, colordiff)[arguments]: Likewise. * gnu/packages/pdf.scm (xpdf, zathura-cb, zathura-ps, zathura-djvu, zathura-pdf-poppler, zathura, podofo, fbida)[arguments]: Likewise. * gnu/packages/perl.scm (perl-file-list, perl-test-harness)[arguments]: Likewise. * gnu/packages/photo.scm (gphoto2)[arguments]: Likewise. * gnu/packages/popt.scm (popt)[arguments]: Likewise. * gnu/packages/pretty-print.scm (source-highlight, astyle)[arguments]: Likewise. * gnu/packages/pumpio.scm (pumpa)[arguments]: Likewise. * gnu/packages/python.scm (python-passlib, python-pycrypto, python2-empy, python-sqlalchemy, python-docopt)[arguments]: Likewise. * gnu/packages/rdf.scm (lrdf)[arguments]: Likewise. * gnu/packages/regex.scm (tre)[arguments]: Likewise. * gnu/packages/rrdtool.scm (rrdtool)[arguments]: Likewise. * gnu/packages/ruby.scm (ruby-2.1, ruby-1.8)[arguments]: Likewise. * gnu/packages/sawfish.scm (sawfish)[arguments]: Likewise. * gnu/packages/scheme.scm (racket)[arguments]: Likewise. * gnu/packages/sdl.scm (guile-sdl)[arguments]: Likewise. * gnu/packages/serveez.scm (serveez)[arguments]: Likewise. * gnu/packages/skribilo.scm (skribilo)[arguments]: Likewise. * gnu/packages/smalltalk.scm (smalltalk)[arguments]: Likewise. * gnu/packages/suckless.scm (dmenu, slock)[arguments]: Likewise. * gnu/packages/tcl.scm (expect)[arguments]: Likewise. * gnu/packages/telephony.scm (commoncpp)[arguments]: Likewise. * gnu/packages/textutils.scm (recode, libgtextutils)[arguments]: Likewise. * gnu/packages/time.scm (time)[arguments]: Likewise. * gnu/packages/tor.scm (privoxy)[arguments]: Likewise. * gnu/packages/uucp.scm (uucp)[arguments]: Likewise. * gnu/packages/video.scm (libdvdnav-4)[arguments]: Likewise. * gnu/packages/web-browsers.scm (lynx)[arguments]: Likewise. * gnu/packages/web.scm (tinyproxy)[arguments]: Likewise. * gnu/packages/wicd.scm (wicd)[arguments]: Likewise. * gnu/packages/wm.scm (bspwm)[arguments]: Likewise. * gnu/packages/xdisorg.scm (sxhkd, xcape)[arguments]: Likewise. * gnu/packages/xfce.scm (xfconf)[arguments]: Likewise. * gnu/packages/xfig.scm (transfig)[arguments]: Likewise. * gnu/packages/xorg.scm (imake)[arguments]: Likewise.
5 years ago
gnu: Use 'modify-phases' syntax. * gnu/packages/admin.scm (mingetty, clusterssh, wpa-supplicant-minimal, wpa-supplicant, wakelan, acpica, tree, direvent, dstat)[arguments]: Use 'modify-phases' syntax. * gnu/packages/algebra.scm (arb)[arguments]: Likewise. * gnu/packages/apr.scm (apr-util)[arguments]: Likewise. * gnu/packages/audio.scm (clalsadrv, fluidsynth, faad2, lv2-mda-piano, lv2-mda-epiano, timidity++, vamp, soundtouch, portaudio, rsound, zita-convolver, zita-alsa-pcmi)[arguments]: Likewise. * gnu/packages/backup.scm (rdup, btar)[arguments]: Likewise. * gnu/packages/bioinformatics.scm (bedops, bwa, crossmap, express, flexbar, grit, hisat, ngs-sdk, subread)[arguments]: Likewise. * gnu/packages/bittorrent.scm (transmission)[arguments]: Likewise. * gnu/packages/cdrom.scm (cd-discid)[arguments]: Likewise. * gnu/packages/compression.scm (sharutils)[arguments]: Likewise. * gnu/packages/conky.scm (conky)[arguments]: Likewise. * gnu/packages/databases.scm (bdb, bdb-5.3)[arguments]: Likewise. * gnu/packages/debug.scm (delta, c-reduce)[arguments]: Likewise. * gnu/packages/display-managers.scm (slim)[arguments]: Likewise. * gnu/packages/dns.scm (dnsmasq)[arguments]: Likewise. * gnu/packages/emacs.scm (geiser, emacs-wget, bbdb)[arguments]: Likewise. * gnu/packages/engineering.scm (pcb)[arguments]: Likewise. * gnu/packages/firmware.scm (ath9k-htc-firmware)[arguments]: Likewise. * gnu/packages/flashing-tools.scm (flashrom)[arguments]: Likewise. * gnu/packages/fltk.scm (fltk)[arguments]: Likewise. * gnu/packages/freedesktop.scm (python-pyxdg)[arguments]: Likewise. * gnu/packages/gd.scm (perl-gd)[arguments]: Likewise. * gnu/packages/gkrellm.scm (gkrellm)[arguments]: Likewise. * gnu/packages/glib.scm (glibmm)[arguments]: Likewise. * gnu/packages/gl.scm (glew)[arguments]: Likewise. * gnu/packages/gnome.scm (icon-naming-utils, orbit2, libbonobo, gnome-vfs, libgnome, libbonoboui, goffice-0.8, dconf)[arguments]: Likewise. * gnu/packages/gprolog.scm (gprolog)[arguments]: Likewise. * gnu/packages/gps.scm (gpscorrelate)[arguments]: Likewise. * gnu/packages/graphics.scm (agg)[arguments]: Likewise. * gnu/packages/gtk.scm (ganv, girara, gtksourceview-2, guile-present, python2-pycairo)[arguments]: Likewise. * gnu/packages/guile.scm (guile-1.8)[arguments]: Likewise. * gnu/packages/guile-wm.scm (guile-wm)[arguments]: Likewise. * gnu/packages/hugs.scm (hugs)[arguments]: Likewise. * gnu/packages/hurd.scm (gnumach-headers, hurd-headers, hurd-minimal) [arguments]: Likewise. * gnu/packages/image-viewers.scm (feh, sxiv)[arguments]: Likewise. * gnu/packages/libcanberra.scm (libcanberra)[arguments]: Likewise. * gnu/packages/linux.scm (bridge-utils, iw, fuse, unionfs-fuse/static, lm-sensors, i2c-tools, xsensors, perf, mdadm, libaio, module-init-tools) [arguments]: Likewise. * gnu/packages/lisp.scm (ccl)[arguments]: Likewise. * gnu/packages/lout.scm (lout)[arguments]: Likewise. * gnu/packages/lua.scm (luajit)[arguments]: Likewise. * gnu/packages/machine-learning.scm (shogun)[arguments]: Likewise. * gnu/packages/mail.scm (exim)[arguments]: Likewise. * gnu/packages/man.scm (man-pages, txt2man)[arguments]: Likewise. * gnu/packages/maths.scm (lapack, superlu-dist, openlibm, openspecfun) [arguments]: Likewise. * gnu/packages/messaging.scm (bitlbee)[arguments]: Likewise. * gnu/packages/mp3.scm (libmad, id3lib, mp3info)[arguments]: Likewise. * gnu/packages/music.scm (solfege)[arguments]: Likewise. * gnu/packages/noweb.scm (noweb)[arguments]: Likewise. * gnu/packages/patchutils.scm (patchutils, quilt, colordiff)[arguments]: Likewise. * gnu/packages/pdf.scm (xpdf, zathura-cb, zathura-ps, zathura-djvu, zathura-pdf-poppler, zathura, podofo, fbida)[arguments]: Likewise. * gnu/packages/perl.scm (perl-file-list, perl-test-harness)[arguments]: Likewise. * gnu/packages/photo.scm (gphoto2)[arguments]: Likewise. * gnu/packages/popt.scm (popt)[arguments]: Likewise. * gnu/packages/pretty-print.scm (source-highlight, astyle)[arguments]: Likewise. * gnu/packages/pumpio.scm (pumpa)[arguments]: Likewise. * gnu/packages/python.scm (python-passlib, python-pycrypto, python2-empy, python-sqlalchemy, python-docopt)[arguments]: Likewise. * gnu/packages/rdf.scm (lrdf)[arguments]: Likewise. * gnu/packages/regex.scm (tre)[arguments]: Likewise. * gnu/packages/rrdtool.scm (rrdtool)[arguments]: Likewise. * gnu/packages/ruby.scm (ruby-2.1, ruby-1.8)[arguments]: Likewise. * gnu/packages/sawfish.scm (sawfish)[arguments]: Likewise. * gnu/packages/scheme.scm (racket)[arguments]: Likewise. * gnu/packages/sdl.scm (guile-sdl)[arguments]: Likewise. * gnu/packages/serveez.scm (serveez)[arguments]: Likewise. * gnu/packages/skribilo.scm (skribilo)[arguments]: Likewise. * gnu/packages/smalltalk.scm (smalltalk)[arguments]: Likewise. * gnu/packages/suckless.scm (dmenu, slock)[arguments]: Likewise. * gnu/packages/tcl.scm (expect)[arguments]: Likewise. * gnu/packages/telephony.scm (commoncpp)[arguments]: Likewise. * gnu/packages/textutils.scm (recode, libgtextutils)[arguments]: Likewise. * gnu/packages/time.scm (time)[arguments]: Likewise. * gnu/packages/tor.scm (privoxy)[arguments]: Likewise. * gnu/packages/uucp.scm (uucp)[arguments]: Likewise. * gnu/packages/video.scm (libdvdnav-4)[arguments]: Likewise. * gnu/packages/web-browsers.scm (lynx)[arguments]: Likewise. * gnu/packages/web.scm (tinyproxy)[arguments]: Likewise. * gnu/packages/wicd.scm (wicd)[arguments]: Likewise. * gnu/packages/wm.scm (bspwm)[arguments]: Likewise. * gnu/packages/xdisorg.scm (sxhkd, xcape)[arguments]: Likewise. * gnu/packages/xfce.scm (xfconf)[arguments]: Likewise. * gnu/packages/xfig.scm (transfig)[arguments]: Likewise. * gnu/packages/xorg.scm (imake)[arguments]: Likewise.
5 years ago
gnu: Use 'modify-phases' syntax. * gnu/packages/admin.scm (mingetty, clusterssh, wpa-supplicant-minimal, wpa-supplicant, wakelan, acpica, tree, direvent, dstat)[arguments]: Use 'modify-phases' syntax. * gnu/packages/algebra.scm (arb)[arguments]: Likewise. * gnu/packages/apr.scm (apr-util)[arguments]: Likewise. * gnu/packages/audio.scm (clalsadrv, fluidsynth, faad2, lv2-mda-piano, lv2-mda-epiano, timidity++, vamp, soundtouch, portaudio, rsound, zita-convolver, zita-alsa-pcmi)[arguments]: Likewise. * gnu/packages/backup.scm (rdup, btar)[arguments]: Likewise. * gnu/packages/bioinformatics.scm (bedops, bwa, crossmap, express, flexbar, grit, hisat, ngs-sdk, subread)[arguments]: Likewise. * gnu/packages/bittorrent.scm (transmission)[arguments]: Likewise. * gnu/packages/cdrom.scm (cd-discid)[arguments]: Likewise. * gnu/packages/compression.scm (sharutils)[arguments]: Likewise. * gnu/packages/conky.scm (conky)[arguments]: Likewise. * gnu/packages/databases.scm (bdb, bdb-5.3)[arguments]: Likewise. * gnu/packages/debug.scm (delta, c-reduce)[arguments]: Likewise. * gnu/packages/display-managers.scm (slim)[arguments]: Likewise. * gnu/packages/dns.scm (dnsmasq)[arguments]: Likewise. * gnu/packages/emacs.scm (geiser, emacs-wget, bbdb)[arguments]: Likewise. * gnu/packages/engineering.scm (pcb)[arguments]: Likewise. * gnu/packages/firmware.scm (ath9k-htc-firmware)[arguments]: Likewise. * gnu/packages/flashing-tools.scm (flashrom)[arguments]: Likewise. * gnu/packages/fltk.scm (fltk)[arguments]: Likewise. * gnu/packages/freedesktop.scm (python-pyxdg)[arguments]: Likewise. * gnu/packages/gd.scm (perl-gd)[arguments]: Likewise. * gnu/packages/gkrellm.scm (gkrellm)[arguments]: Likewise. * gnu/packages/glib.scm (glibmm)[arguments]: Likewise. * gnu/packages/gl.scm (glew)[arguments]: Likewise. * gnu/packages/gnome.scm (icon-naming-utils, orbit2, libbonobo, gnome-vfs, libgnome, libbonoboui, goffice-0.8, dconf)[arguments]: Likewise. * gnu/packages/gprolog.scm (gprolog)[arguments]: Likewise. * gnu/packages/gps.scm (gpscorrelate)[arguments]: Likewise. * gnu/packages/graphics.scm (agg)[arguments]: Likewise. * gnu/packages/gtk.scm (ganv, girara, gtksourceview-2, guile-present, python2-pycairo)[arguments]: Likewise. * gnu/packages/guile.scm (guile-1.8)[arguments]: Likewise. * gnu/packages/guile-wm.scm (guile-wm)[arguments]: Likewise. * gnu/packages/hugs.scm (hugs)[arguments]: Likewise. * gnu/packages/hurd.scm (gnumach-headers, hurd-headers, hurd-minimal) [arguments]: Likewise. * gnu/packages/image-viewers.scm (feh, sxiv)[arguments]: Likewise. * gnu/packages/libcanberra.scm (libcanberra)[arguments]: Likewise. * gnu/packages/linux.scm (bridge-utils, iw, fuse, unionfs-fuse/static, lm-sensors, i2c-tools, xsensors, perf, mdadm, libaio, module-init-tools) [arguments]: Likewise. * gnu/packages/lisp.scm (ccl)[arguments]: Likewise. * gnu/packages/lout.scm (lout)[arguments]: Likewise. * gnu/packages/lua.scm (luajit)[arguments]: Likewise. * gnu/packages/machine-learning.scm (shogun)[arguments]: Likewise. * gnu/packages/mail.scm (exim)[arguments]: Likewise. * gnu/packages/man.scm (man-pages, txt2man)[arguments]: Likewise. * gnu/packages/maths.scm (lapack, superlu-dist, openlibm, openspecfun) [arguments]: Likewise. * gnu/packages/messaging.scm (bitlbee)[arguments]: Likewise. * gnu/packages/mp3.scm (libmad, id3lib, mp3info)[arguments]: Likewise. * gnu/packages/music.scm (solfege)[arguments]: Likewise. * gnu/packages/noweb.scm (noweb)[arguments]: Likewise. * gnu/packages/patchutils.scm (patchutils, quilt, colordiff)[arguments]: Likewise. * gnu/packages/pdf.scm (xpdf, zathura-cb, zathura-ps, zathura-djvu, zathura-pdf-poppler, zathura, podofo, fbida)[arguments]: Likewise. * gnu/packages/perl.scm (perl-file-list, perl-test-harness)[arguments]: Likewise. * gnu/packages/photo.scm (gphoto2)[arguments]: Likewise. * gnu/packages/popt.scm (popt)[arguments]: Likewise. * gnu/packages/pretty-print.scm (source-highlight, astyle)[arguments]: Likewise. * gnu/packages/pumpio.scm (pumpa)[arguments]: Likewise. * gnu/packages/python.scm (python-passlib, python-pycrypto, python2-empy, python-sqlalchemy, python-docopt)[arguments]: Likewise. * gnu/packages/rdf.scm (lrdf)[arguments]: Likewise. * gnu/packages/regex.scm (tre)[arguments]: Likewise. * gnu/packages/rrdtool.scm (rrdtool)[arguments]: Likewise. * gnu/packages/ruby.scm (ruby-2.1, ruby-1.8)[arguments]: Likewise. * gnu/packages/sawfish.scm (sawfish)[arguments]: Likewise. * gnu/packages/scheme.scm (racket)[arguments]: Likewise. * gnu/packages/sdl.scm (guile-sdl)[arguments]: Likewise. * gnu/packages/serveez.scm (serveez)[arguments]: Likewise. * gnu/packages/skribilo.scm (skribilo)[arguments]: Likewise. * gnu/packages/smalltalk.scm (smalltalk)[arguments]: Likewise. * gnu/packages/suckless.scm (dmenu, slock)[arguments]: Likewise. * gnu/packages/tcl.scm (expect)[arguments]: Likewise. * gnu/packages/telephony.scm (commoncpp)[arguments]: Likewise. * gnu/packages/textutils.scm (recode, libgtextutils)[arguments]: Likewise. * gnu/packages/time.scm (time)[arguments]: Likewise. * gnu/packages/tor.scm (privoxy)[arguments]: Likewise. * gnu/packages/uucp.scm (uucp)[arguments]: Likewise. * gnu/packages/video.scm (libdvdnav-4)[arguments]: Likewise. * gnu/packages/web-browsers.scm (lynx)[arguments]: Likewise. * gnu/packages/web.scm (tinyproxy)[arguments]: Likewise. * gnu/packages/wicd.scm (wicd)[arguments]: Likewise. * gnu/packages/wm.scm (bspwm)[arguments]: Likewise. * gnu/packages/xdisorg.scm (sxhkd, xcape)[arguments]: Likewise. * gnu/packages/xfce.scm (xfconf)[arguments]: Likewise. * gnu/packages/xfig.scm (transfig)[arguments]: Likewise. * gnu/packages/xorg.scm (imake)[arguments]: Likewise.
5 years ago
build-system/gnu: Add 'bootstrap' phase. This factorizes what has become a widespread idiom. * guix/build/gnu-build-system.scm (%bootstrap-scripts): New variable. (bootstrap): New procedure. (%standard-phases): Add it after 'unpack'. * guix/build/ant-build-system.scm (%standard-phases): Delete 'bootstrap. * guix/build/asdf-build-system.scm (%standard-phases/source) (%standard-phases): Likewise. * guix/build/cargo-build-system.scm (%standard-phases): Likewise. * guix/build/cmake-build-system.scm (%standard-phases): Likewise. * guix/build/dub-build-system.scm (%standard-phases): Likewise. * guix/build/emacs-build-system.scm (%standard-phases): Likewise. * guix/build/font-build-system.scm (%standard-phases): Likewise. * guix/build/go-build-system.scm (%standard-phases): Likewise. * guix/build/haskell-build-system.scm (%standard-phases): Likewise. * guix/build/minify-build-system.scm (%standard-phases): Likewise. * guix/build/ocaml-build-system.scm (%standard-phases): Likewise. * guix/build/perl-build-system.scm (%standard-phases): Likewise. * guix/build/python-build-system.scm (%standard-phases): Likewise. * guix/build/r-build-system.scm (%standard-phases): Likewise. * guix/build/ruby-build-system.scm (%standard-phases): Likewise. * guix/build/scons-build-system.scm (%standard-phases): Likewise. * guix/build/texlive-build-system.scm (%standard-phases): Likewise. * guix/build/waf-build-system.scm (%standard-phases): Likewise. * gnu/packages/audio.scm (faad2)[arguments]: Replace 'bootstrap. (soundtouch, cuetools, bluez-alsa): Remove 'arguments'. (cava)[arguments]: Replace 'bootstrap. * gnu/packages/backup.scm (rdup): Remove 'bootstrap. * gnu/packages/bioinformatics.scm (seek)[arguments]: Replace 'bootstrap. * gnu/packages/bioinformatics.scm (htslib-for-sambamba): Remove 'arguments'. * gnu/packages/ci.scm (hydra, cuirass): Remove 'bootstrap'. * gnu/packages/crypto.scm (libb2): Remove #:phases. * gnu/packages/databases.scm (guile-wiredtiger): Likewise. * gnu/packages/debug.scm (stress-make): Remove 'bootstrap'. * gnu/packages/documentation.scm (asciidoc): Likewise. * gnu/packages/fontutils.scm (libuninameslist): Remove 'arguments'. * gnu/packages/ftp.scm (weex): Remove 'arguments'. * gnu/packages/game-development.scm (ois): Remove 'arguments'. * gnu/packages/games.scm (pioneer): Remove 'bootstrap. * gnu/packages/gnome.scm (vte-ng, byzanz): Replace 'bootstrap. (arc-theme): Remove 'arguments'. (faba-icon-theme): Remove 'bootstrap. (arc-icon-theme): Remove 'arguments'. * gnu/packages/gnunet.scm (guile-gnunet): Likewise. * gnu/packages/gtk.scm (guile-rsvg): Likewise. * gnu/packages/guile.scm (mcron2): Remove 'bootstrap. (guile-bash): Remove #:phases. (guile-git): Remove 'bootstrap. (guile-syntax-highlight): Remove 'arguments'. (guile-sjson): Likewise. * gnu/packages/java.scm (classpath-devel): Remove 'bootstrap. * gnu/packages/kodi.scm (libdvdnav/kodi) (libdvdread/kodi, libdvdcss/kodi): Likewise. * gnu/packages/libreoffice.scm (hunspell): Remove 'arguments'. * gnu/packages/libusb.scm (hidapi): Likewise. * gnu/packages/linux.scm (bridge-utils): Rename 'bootstrap' to 'patch-stuff'; move it before 'bootstrap', without autoreconf invocation. (eudev): Rename 'bootstrap' to 'patch-file-names', without 'autogen.sh' invocation; move it before 'bootstrap. (gpm): Replace 'bootstrap'. (f2fs-tools): Remove 'arguments'. (rng-tools): Remove #:phases. * gnu/packages/messaging.scm (hexchat): Rename 'bootstrap' to 'copy-intltool-makefile'; remove "autoreconf" invocation and move before 'bootstrap'. (libmesode): Remove 'arguments'. (libstrophe): Likewise. * gnu/packages/microcom.scm (microcom): Likewise. * gnu/packages/networking.scm (libnet): Remove 'bootstrap. * gnu/packages/onc-rpc.scm (libnsl): Remove 'arguments'. * gnu/packages/package-management.scm (guix): Replace 'bootstrap. * gnu/packages/sawfish.scm (librep): Remove 'arguments'. * gnu/packages/version-control.scm (findnewest): Likewise. * gnu/packages/video.scm (liba52, handbrake, motion): Replace 'bootstrap. * gnu/packages/web.scm (fcgiwrap): Remove #:phases. (tidy): Replace 'bootstrap. (gumbo-parser): Remove #:phases. * gnu/packages/wget.scm (wget2): Replace 'bootstrap. * gnu/packages/wm.scm (i3lock-color): Remove #:phases. * gnu/packages/xdisorg.scm (xclip): Likewise. * gnu/packages/xml.scm (libxls): Replace 'bootstrap'. * gnu/packages/xorg.scm (xf86-video-freedreno) (xf86-video-intel): Remove #:phases. * gnu/packages/zile.scm (zile-on-guile): Replace 'bootstrap.
4 years ago
  1. ;;; GNU Guix --- Functional package management for GNU
  2. ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
  3. ;;; Copyright © 2014, 2017 Julien Lepiller <julien@lepiller.eu>
  4. ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
  5. ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
  6. ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
  7. ;;; Copyright © 2015, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
  8. ;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
  9. ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
  10. ;;; Copyright © 2016, 2017, 2018, 2019 Clément Lassieur <clement@lassieur.org>
  11. ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
  12. ;;; Copyright © 2017, 2018, 2020 Arun Isaac <arunisaac@systemreboot.net>
  13. ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
  14. ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
  15. ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
  16. ;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
  17. ;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
  18. ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
  19. ;;; Copyright © 2019, 2020 Brett Gilio <brettg@gnu.org>
  20. ;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si>
  21. ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
  22. ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
  23. ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
  24. ;;; Copyright © 2020 Reza Alizadeh Majd <r.majd@pantherx.org>
  25. ;;;
  26. ;;; This file is part of GNU Guix.
  27. ;;;
  28. ;;; GNU Guix is free software; you can redistribute it and/or modify it
  29. ;;; under the terms of the GNU General Public License as published by
  30. ;;; the Free Software Foundation; either version 3 of the License, or (at
  31. ;;; your option) any later version.
  32. ;;;
  33. ;;; GNU Guix is distributed in the hope that it will be useful, but
  34. ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
  35. ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  36. ;;; GNU General Public License for more details.
  37. ;;;
  38. ;;; You should have received a copy of the GNU General Public License
  39. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
  40. (define-module (gnu packages messaging)
  41. #:use-module (gnu packages)
  42. #:use-module (gnu packages admin)
  43. #:use-module (gnu packages aidc)
  44. #:use-module (gnu packages aspell)
  45. #:use-module (gnu packages audio)
  46. #:use-module (gnu packages autotools)
  47. #:use-module (gnu packages avahi)
  48. #:use-module (gnu packages base)
  49. #:use-module (gnu packages bash)
  50. #:use-module (gnu packages bison)
  51. #:use-module (gnu packages boost)
  52. #:use-module (gnu packages check)
  53. #:use-module (gnu packages compression)
  54. #:use-module (gnu packages cpp)
  55. #:use-module (gnu packages crypto)
  56. #:use-module (gnu packages curl)
  57. #:use-module (gnu packages cyrus-sasl)
  58. #:use-module (gnu packages databases)
  59. #:use-module (gnu packages documentation)
  60. #:use-module (gnu packages enchant)
  61. #:use-module (gnu packages fontutils)
  62. #:use-module (gnu packages gettext)
  63. #:use-module (gnu packages glib)
  64. #:use-module (gnu packages gnome)
  65. #:use-module (gnu packages gnupg)
  66. #:use-module (gnu packages gperf)
  67. #:use-module (gnu packages gtk)
  68. #:use-module (gnu packages guile)
  69. #:use-module (gnu packages icu4c)
  70. #:use-module (gnu packages image)
  71. #:use-module (gnu packages less)
  72. #:use-module (gnu packages libcanberra)
  73. #:use-module (gnu packages libidn)
  74. #:use-module (gnu packages linux)
  75. #:use-module (gnu packages logging)
  76. #:use-module (gnu packages lua)
  77. #:use-module (gnu packages man)
  78. #:use-module (gnu packages markup)
  79. #:use-module (gnu packages ncurses)
  80. #:use-module (gnu packages networking)
  81. #:use-module (gnu packages pcre)
  82. #:use-module (gnu packages perl)
  83. #:use-module (gnu packages photo)
  84. #:use-module (gnu packages php)
  85. #:use-module (gnu packages pkg-config)
  86. #:use-module (gnu packages protobuf)
  87. #:use-module (gnu packages python)
  88. #:use-module (gnu packages python-crypto)
  89. #:use-module (gnu packages python-web)
  90. #:use-module (gnu packages python-xyz)
  91. #:use-module (gnu packages qt)
  92. #:use-module (gnu packages readline)
  93. #:use-module (gnu packages sqlite)
  94. #:use-module (gnu packages tcl)
  95. #:use-module (gnu packages texinfo)
  96. #:use-module (gnu packages textutils)
  97. #:use-module (gnu packages tls)
  98. #:use-module (gnu packages video)
  99. #:use-module (gnu packages web)
  100. #:use-module (gnu packages xdisorg)
  101. #:use-module (gnu packages xiph)
  102. #:use-module (gnu packages xml)
  103. #:use-module (gnu packages xorg)
  104. #:use-module (guix build-system cmake)
  105. #:use-module (guix build-system glib-or-gtk)
  106. #:use-module (guix build-system gnu)
  107. #:use-module (guix build-system meson)
  108. #:use-module (guix build-system perl)
  109. #:use-module (guix build-system python)
  110. #:use-module (guix build-system qt)
  111. #:use-module (guix build-system trivial)
  112. #:use-module (guix download)
  113. #:use-module (guix git-download)
  114. #:use-module (guix hg-download)
  115. #:use-module ((guix licenses) #:prefix license:)
  116. #:use-module (guix packages)
  117. #:use-module (guix utils))
  118. (define-public libotr
  119. (package
  120. (name "libotr")
  121. (version "4.1.1")
  122. (source (origin
  123. (method url-fetch)
  124. (uri (string-append "https://otr.cypherpunks.ca/libotr-"
  125. version ".tar.gz"))
  126. (sha256
  127. (base32
  128. "1x8rliydhbibmzwdbyr7pd7n87m2jmxnqkpvaalnf4154hj1hfwb"))
  129. (patches (search-patches "libotr-test-auth-fix.patch"))))
  130. (build-system gnu-build-system)
  131. (propagated-inputs
  132. `(("libgcrypt" ,libgcrypt))) ; libotr headers include gcrypt.h
  133. (inputs `(("libgpg-error" ,libgpg-error)))
  134. (native-inputs `(("perl" ,perl))) ; for the test suite
  135. (synopsis "Off-the-Record (OTR) Messaging Library and Toolkit")
  136. (description
  137. "OTR allows you to have private conversations over instant messaging by
  138. providing: (1) Encryption: No one else can read your instant messages. (2)
  139. Authentication: You are assured the correspondent is who you think it is. (3)
  140. Deniability: The messages you send do not have digital signatures that are
  141. checkable by a third party. Anyone can forge messages after a conversation to
  142. make them look like they came from you. However, during a conversation, your
  143. correspondent is assured the messages he sees are authentic and
  144. unmodified. (4) Perfect forward secrecy: If you lose control of your private
  145. keys, no previous conversation is compromised.")
  146. (home-page "https://otr.cypherpunks.ca/")
  147. (license (list license:lgpl2.1 license:gpl2))))
  148. (define-public libsignal-protocol-c
  149. (package
  150. (name "libsignal-protocol-c")
  151. (version "2.3.2")
  152. (source (origin
  153. (method url-fetch)
  154. (uri (string-append "https://github.com/WhisperSystems/"
  155. "libsignal-protocol-c/archive/v" version
  156. ".tar.gz"))
  157. (file-name (string-append name "-" version ".tar.gz"))
  158. (sha256
  159. (base32
  160. "0380hl6fw3ppf265fg897pyrpqygpx4m9j8ifq118bim8lq6z0pk"))))
  161. (arguments
  162. `(;; Required for proper linking and for tests to run.
  163. #:configure-flags '("-DBUILD_SHARED_LIBS=on" "-DBUILD_TESTING=1")))
  164. (build-system cmake-build-system)
  165. (inputs `( ;; Required for tests:
  166. ("check" ,check)
  167. ("openssl" ,openssl)))
  168. (native-inputs `(("pkg-config" ,pkg-config)))
  169. (home-page "https://github.com/WhisperSystems/libsignal-protocol-c")
  170. (synopsis "Implementation of a ratcheting forward secrecy protocol")
  171. (description "libsignal-protocol-c is an implementation of a ratcheting
  172. forward secrecy protocol that works in synchronous and asynchronous
  173. messaging environments. It can be used with messaging software to provide
  174. end-to-end encryption.")
  175. (license license:gpl3+)))
  176. (define-public bitlbee
  177. (package
  178. (name "bitlbee")
  179. (version "3.6")
  180. (source (origin
  181. (method url-fetch)
  182. (uri (string-append "https://get.bitlbee.org/src/bitlbee-"
  183. version ".tar.gz"))
  184. (sha256
  185. (base32 "0zhhcbcr59sx9h4maf8zamzv2waya7sbsl7w74gbyilvy93dw5cz"))))
  186. (build-system gnu-build-system)
  187. (native-inputs `(("pkg-config" ,pkg-config)
  188. ;; Note: Change to 'check' for versions > 3.6.
  189. ("check" ,check-0.12)))
  190. (inputs `(("glib" ,glib)
  191. ("libotr" ,libotr)
  192. ("gnutls" ,gnutls)
  193. ("python" ,python)
  194. ("perl" ,perl)))
  195. (arguments
  196. `(#:phases
  197. (modify-phases %standard-phases
  198. (add-before 'configure 'set-python
  199. (lambda _ (setenv "PYTHON" (which "python3")) #t))
  200. (add-after 'install 'install-etc
  201. (lambda* (#:key (make-flags '()) #:allow-other-keys)
  202. (apply invoke "make" "install-etc" make-flags)))
  203. (add-after 'install-etc 'install-lib
  204. (lambda* (#:key (make-flags '()) #:allow-other-keys)
  205. (apply invoke "make" "install-dev" make-flags)))
  206. (replace 'configure
  207. ;; bitlbee's configure script does not tolerate many of the
  208. ;; variable settings that Guix would pass to it.
  209. (lambda* (#:key outputs #:allow-other-keys)
  210. (invoke "./configure"
  211. (string-append "--prefix="
  212. (assoc-ref outputs "out"))
  213. "--otr=1"))))))
  214. (synopsis "IRC to instant messaging gateway")
  215. (description "BitlBee brings IM (instant messaging) to IRC clients, for
  216. people who have an IRC client running all the time and don't want to run an
  217. additional IM client. BitlBee currently supports XMPP/Jabber (including
  218. Google Talk), MSN Messenger, Yahoo! Messenger, AIM and ICQ, and the Twitter
  219. microblogging network (plus all other Twitter API compatible services like
  220. identi.ca and status.net).")
  221. (home-page "https://www.bitlbee.org/")
  222. (license (list license:gpl2+ license:bsd-2))))
  223. (define-public bitlbee-discord
  224. (package
  225. (name "bitlbee-discord")
  226. (version "0.4.2")
  227. (source
  228. (origin
  229. (method git-fetch)
  230. (uri (git-reference
  231. (url "https://github.com/sm00th/bitlbee-discord.git")
  232. (commit version)))
  233. (file-name (git-file-name name version))
  234. (sha256
  235. (base32 "02pigk2vbz0jdz11f96sygdvp1j762yjn62h124fkcsc070g7a2f"))))
  236. (build-system gnu-build-system)
  237. (arguments
  238. `(#:phases
  239. (modify-phases %standard-phases
  240. (add-after 'unpack 'patch-autogen
  241. (lambda _
  242. (let ((sh (which "sh")))
  243. (substitute* "autogen.sh" (("/bin/sh") sh))
  244. (setenv "CONFIG_SHELL" sh))
  245. #t))
  246. (replace 'configure
  247. (lambda* (#:key inputs outputs #:allow-other-keys)
  248. (invoke "./configure"
  249. (string-append "--with-plugindir="
  250. (assoc-ref outputs "out")
  251. "/lib/bitlbee/")))))))
  252. (inputs `(("glib" ,glib)))
  253. (native-inputs `(("pkg-config" ,pkg-config)
  254. ("autoconf" ,autoconf)
  255. ("automake" ,automake)
  256. ("texinfo" ,texinfo)
  257. ("libtool" ,libtool)
  258. ("bitlbee" ,bitlbee) ; needs bitlbee headers
  259. ("bash" ,bash)))
  260. (synopsis "Discord plugin for Bitlbee")
  261. (description "Bitlbee-discord is a plugin for Bitlbee witch provides
  262. access to servers running the Discord protocol.")
  263. (home-page "https://github.com/sm00th/bitlbee-discord/")
  264. (license license:gpl2+)))
  265. (define-public purple-mattermost
  266. (package
  267. (name "purple-mattermost")
  268. (version "1.2")
  269. (home-page "https://github.com/EionRobb/purple-mattermost")
  270. (source (origin
  271. (method git-fetch)
  272. (uri (git-reference (url home-page)
  273. (commit (string-append "v" version))))
  274. (file-name (git-file-name name version))
  275. (sha256
  276. (base32
  277. "0fm49iv58l09qpy8vkca3am642fxiwcrrh6ykimyc2mas210b5g2"))))
  278. (build-system gnu-build-system)
  279. (arguments
  280. `(#:phases (modify-phases %standard-phases
  281. (replace 'configure
  282. (lambda* (#:key inputs outputs #:allow-other-keys)
  283. ;; Adjust the makefile to install files in the right
  284. ;; place.
  285. (let ((out (assoc-ref outputs "out")))
  286. (substitute* "Makefile"
  287. (("MATTERMOST_DEST = .*")
  288. (string-append "MATTERMOST_DEST = " out
  289. "/lib/purple-2\n")) ;XXX: hardcoded
  290. (("MATTERMOST_ICONS_DEST = .*")
  291. (string-append "MATTERMOST_ICONS_DEST = "
  292. out
  293. "/share/pixmaps/pidgin/protocols\n")))
  294. #t))))
  295. #:make-flags (list "CC=gcc"
  296. ,(string-append "PLUGIN_VERSION=" version))
  297. #:tests? #f))
  298. (inputs `(("glib" ,glib)
  299. ("json-glib" ,json-glib)
  300. ("discount" ,discount)
  301. ("pidgin" ,pidgin)))
  302. (native-inputs `(("pkg-config" ,pkg-config)))
  303. (synopsis "Purple plug-in to access Mattermost instant messaging")
  304. (description
  305. "Purple-Mattermost is a plug-in for Purple, the instant messaging library
  306. used by Pidgin and Bitlbee, among others, to access
  307. @uref{https://mattermost.com/, Mattermost} servers.")
  308. (license license:gpl3+)))
  309. (define-public hexchat
  310. (package
  311. (name "hexchat")
  312. (version "2.14.3")
  313. (source (origin
  314. (method url-fetch)
  315. (uri (string-append "https://dl.hexchat.net/hexchat/hexchat-"
  316. version ".tar.xz"))
  317. (sha256
  318. (base32
  319. "10p829jm1r6kidkgf5lhqhyqc5mxdcq96q3zhadsckasvc9rs6lh"))))
  320. (build-system meson-build-system)
  321. (native-inputs `(("gettext" ,gettext-minimal)
  322. ("glib:bin" ,glib "bin") ;need glib-genmarshal
  323. ("perl" ,perl)
  324. ("pkg-config" ,pkg-config)))
  325. (inputs `(("dbus-glib" ,dbus-glib)
  326. ("dbus" ,dbus)
  327. ("enchant" ,enchant)
  328. ("gtk" ,gtk+-2)
  329. ("libcanberra" ,libcanberra)
  330. ("libnotify" ,libnotify)
  331. ("libproxy" ,libproxy)
  332. ("openssl" ,openssl)
  333. ;; Bindings for add-on scripts.
  334. ("luajit" ,luajit)
  335. ("perl-xml-parser" ,perl-xml-parser)
  336. ("python-2" ,python-2)))
  337. (arguments
  338. `(#:phases
  339. (modify-phases %standard-phases
  340. (add-after 'unpack 'skip-desktop-database-updates
  341. (lambda _
  342. ;; The build scripts update icon and desktop file databases when
  343. ;; DESTDIR is not set. We can't update these databases from
  344. ;; within the build chroot, but we also don't set DESTDIR. So, we
  345. ;; just skip this code.
  346. (substitute* "meson_post_install.py"
  347. (("if 'DESTDIR' not in os.environ:")
  348. "if False:"))
  349. #t)))))
  350. (synopsis "Graphical IRC client")
  351. (description
  352. "HexChat lets you connect to multiple IRC networks at once. The main
  353. window shows the list of currently connected networks and their channels, the
  354. current conversation and the list of users. It uses colors to differentiate
  355. between users and to highlight messages. It checks spelling using available
  356. dictionaries. HexChat can be extended with multiple addons.")
  357. (home-page "https://hexchat.net/")
  358. (license license:gpl2+)))
  359. (define-public ngircd
  360. (package
  361. (name "ngircd")
  362. (version "25")
  363. (source (origin
  364. (method url-fetch)
  365. (uri (string-append "https://arthur.barton.de/pub/ngircd/ngircd-"
  366. version ".tar.xz"))
  367. (sha256
  368. (base32
  369. "0kpf5qi98m9f833r4rx9n6h9p31biwk798jwc1mgzmix7sp7r6f4"))
  370. (patches (search-patches "ngircd-handle-zombies.patch"))))
  371. (build-system gnu-build-system)
  372. ;; Needed for the test suite.
  373. (native-inputs `(("procps" ,procps)
  374. ("expect" ,expect)
  375. ("inetutils" ,inetutils)))
  376. ;; XXX Add libident.
  377. (inputs `(("zlib" ,zlib)
  378. ("libwrap" ,tcp-wrappers)
  379. ("gnutls" ,gnutls)
  380. ,@(if (string-suffix? "-linux"
  381. (or (%current-target-system)
  382. (%current-system)))
  383. `(("linux-pam" ,linux-pam))
  384. '())))
  385. (arguments
  386. `(#:configure-flags
  387. '("--with-gnutls" "--with-iconv" "--enable-ipv6" "--with-tcp-wrappers"
  388. ,@(if (string-suffix? "-linux"
  389. (or (%current-target-system)
  390. (%current-system)))
  391. '("--with-pam")
  392. '()))
  393. #:phases
  394. (modify-phases %standard-phases
  395. ;; Necessary for the test suite.
  396. (add-after 'configure 'post-configure
  397. (lambda _
  398. (substitute* "src/ngircd/Makefile"
  399. (("/bin/sh") (which "sh")))
  400. ;; The default getpid.sh does a sloppy grep over 'ps -ax' output,
  401. ;; which fails arbitrarily.
  402. (with-output-to-file "src/testsuite/getpid.sh"
  403. (lambda ()
  404. (display
  405. (string-append
  406. "#!" (which "sh") "\n"
  407. "ps -C \"$1\" -o pid=\n"))))
  408. ;; Our variant of getpid.sh does not match interpreter names
  409. ;; when the script's shebang is invoked directly as "./foo".
  410. ;; Patch cases where the test suite relies on this.
  411. (substitute* "src/testsuite/start-server.sh"
  412. ;; It runs 'getpid.sh sh' to test if it works at all. Run it on
  413. ;; 'make' instead.
  414. (("getpid.sh sh") "getpid.sh make")))))))
  415. (home-page "https://ngircd.barton.de/")
  416. (synopsis "Lightweight Internet Relay Chat server for small networks")
  417. (description
  418. "ngIRCd is a lightweight @dfn{Internet Relay Chat} (IRC) server for small
  419. or private networks. It is easy to configure, can cope with dynamic IP
  420. addresses, and supports IPv6, SSL-protected connections, as well as PAM for
  421. authentication.")
  422. (license license:gpl2+)))
  423. (define-public pidgin
  424. (package
  425. (name "pidgin")
  426. (version "2.13.0")
  427. (source
  428. (origin
  429. (method url-fetch)
  430. (uri (string-append "mirror://sourceforge/pidgin/Pidgin/"
  431. version "/pidgin-" version ".tar.bz2"))
  432. (sha256
  433. (base32 "13vdqj70315p9rzgnbxjp9c51mdzf1l4jg1kvnylc4bidw61air7"))
  434. (patches (search-patches "pidgin-add-search-path.patch"
  435. ;; Remove the snippet and bootstrapping
  436. ;; native-inputs together with this patch.
  437. "pidgin-libnm.patch"))
  438. (modules '((guix build utils)))
  439. (snippet
  440. '(begin
  441. ;; Remove stale generated file after applying pidgin-libnm.patch.
  442. (delete-file "configure")
  443. #t))))
  444. (build-system glib-or-gtk-build-system)
  445. (native-inputs
  446. `(("pkg-config" ,pkg-config)
  447. ("check" ,check)
  448. ("intltool" ,intltool)
  449. ("gconf" ,gconf)
  450. ("python" ,python-2)
  451. ("doxygen" ,doxygen)
  452. ;; For bootstrapping after applying pidgin-libnm.patch.
  453. ("autoconf" ,autoconf)
  454. ("automake" ,automake)
  455. ("libtool" ,libtool)))
  456. (inputs
  457. `(("gtk+" ,gtk+-2)
  458. ("libgcrypt" ,libgcrypt)
  459. ("gnutls" ,gnutls)
  460. ("cyrus-sasl" ,cyrus-sasl)
  461. ("dbus" ,dbus)
  462. ("dbus-glib" ,dbus-glib)
  463. ("python2-dbus" ,python2-dbus)
  464. ("libidn" ,libidn)
  465. ("libltdl" ,libltdl)
  466. ("libxml2" ,libxml2)
  467. ;; TODO: gstreamer: patches needed to support gstreamer-1.0 or later
  468. ;; TODO: farstream
  469. ;; TODO: meanwhile
  470. ;; TODO: gtkspell
  471. ;; TODO: libxephyr
  472. ;; TODO: libgadu
  473. ("libxslt" ,libxslt)
  474. ("avahi" ,avahi)
  475. ("ncurses" ,ncurses)
  476. ("network-manager" ,network-manager)
  477. ("sqlite" ,sqlite)
  478. ("libice" ,libice)
  479. ("libsm" ,libsm)
  480. ("libxscrnsaver" ,libxscrnsaver)
  481. ("startup-notification" ,startup-notification)))
  482. (arguments
  483. `(#:configure-flags
  484. (list "--disable-gtkspell"
  485. "--disable-tcl"
  486. "--disable-meanwhile"
  487. "--disable-vv" ; XXX remove when we have farstream and gstreamer
  488. "--disable-gstreamer" ; XXX patches needed to support gstreamer-1.0
  489. "--enable-cyrus-sasl"
  490. (string-append "--with-ncurses-headers="
  491. (assoc-ref %build-inputs "ncurses")
  492. "/include"))))
  493. (native-search-paths
  494. (list (search-path-specification
  495. (variable "PURPLE_PLUGIN_PATH")
  496. (files (list (string-append "lib/purple-"
  497. (version-major version))
  498. "lib/pidgin")))))
  499. (home-page "https://www.pidgin.im/")
  500. (synopsis "Graphical multi-protocol instant messaging client")
  501. (description
  502. "Pidgin is a modular instant messaging client that supports many popular
  503. chat protocols.")
  504. (license
  505. (list
  506. license:gpl2+ ; Most of the code
  507. license:lgpl2.1 ; GG protocol plugin (libpurple/protocols/gg/lib)
  508. license:lgpl2.0+ ; OSCAR protocol plugin (libpurple/protocols/oscar)
  509. ;; The following licenses cover the zephyr protocol plugin:
  510. (license:non-copyleft
  511. "file://libpurple/protocols/zephyr/mit-copyright.h"
  512. "See libpurple/protocols/zephyr/mit-copyright.h in the distribution.")
  513. (license:non-copyleft
  514. "file://libpurple/protocols/zephyr/mit-sipb-copyright.h"
  515. "See libpurple/protocols/zephyr/mit-sipb-copyright.h in the distribution.")))))
  516. (define-public pidgin-otr
  517. (package
  518. (name "pidgin-otr")
  519. (version "4.0.2")
  520. (source (origin
  521. (method url-fetch)
  522. (uri (string-append "https://otr.cypherpunks.ca/"
  523. name "-" version ".tar.gz"))
  524. (sha256
  525. (base32
  526. "1i5s9rrgbyss9rszq6c6y53hwqyw1k86s40cpsfx5ccl9bprxdgl"))))
  527. (build-system gnu-build-system)
  528. (native-inputs
  529. `(("pkg-config" ,pkg-config)
  530. ("intltool" ,intltool)))
  531. (inputs
  532. `(("pidgin" ,pidgin)
  533. ("libotr" ,libotr)
  534. ("libgpg-error" ,libgpg-error)
  535. ("libgcrypt" ,libgcrypt)
  536. ("glib" ,glib)
  537. ("gtk+" ,gtk+-2)))
  538. (home-page "https://otr.cypherpunks.ca/")
  539. (synopsis "Off-the-Record Messaging plugin for Pidgin")
  540. (description
  541. "Pidgin-OTR is a plugin that adds support for OTR to the Pidgin instant
  542. messaging client. OTR (Off-the-Record) Messaging allows you to have private
  543. conversations over instant messaging by providing: (1) Encryption: No one else
  544. can read your instant messages. (2) Authentication: You are assured the
  545. correspondent is who you think it is. (3) Deniability: The messages you send
  546. do not have digital signatures that are checkable by a third party. Anyone
  547. can forge messages after a conversation to make them look like they came from
  548. you. However, during a conversation, your correspondent is assured the
  549. messages he sees are authentic and unmodified. (4) Perfect forward secrecy:
  550. If you lose control of your private keys, no previous conversation is
  551. compromised.")
  552. (license license:gpl2)))
  553. (define-public znc
  554. (package
  555. (name "znc")
  556. (version "1.8.1")
  557. (source (origin
  558. (method url-fetch)
  559. (uri (string-append "http://znc.in/releases/archive/znc-"
  560. version ".tar.gz"))
  561. (sha256
  562. (base32
  563. "0hb1v167aa6gv5bcwz352l6b8gnd74ymjw92y4x882l099hzg59i"))))
  564. (build-system cmake-build-system)
  565. (arguments
  566. `(#:configure-flags
  567. (list "-DWANT_CYRUS=ON"
  568. "-DWANT_I18N=ON"
  569. "-DWANT_PERL=ON"
  570. "-DWANT_PYTHON=ON")
  571. #:phases
  572. (modify-phases %standard-phases
  573. (add-after 'unpack 'unpack-googletest
  574. ;; Copy the googletest sources to where the CMake build expects them.
  575. (lambda* (#:key inputs #:allow-other-keys)
  576. (let ((source (assoc-ref inputs "googletest-source"))
  577. (target "third_party/googletest"))
  578. (mkdir-p target)
  579. (copy-recursively source target)
  580. #t))))))
  581. (native-inputs
  582. `(("boost" ,boost)
  583. ("gettext" ,gettext-minimal)
  584. ("googletest-source" ,(package-source googletest))
  585. ("pkg-config" ,pkg-config)))
  586. (inputs
  587. `(("cyrus-sasl" ,cyrus-sasl)
  588. ("icu4c" ,icu4c)
  589. ("openssl" ,openssl)
  590. ("perl" ,perl)
  591. ("python" ,python)
  592. ("zlib" ,zlib)))
  593. (home-page "https://znc.in")
  594. (synopsis "IRC network bouncer")
  595. (description "ZNC is an @dfn{IRC network bouncer} or @dfn{BNC}. It can
  596. detach the client from the actual IRC server, and also from selected channels.
  597. Multiple clients from different locations can connect to a single ZNC account
  598. simultaneously and therefore appear under the same nickname on IRC.")
  599. (license license:asl2.0)))
  600. (define-public python-nbxmpp
  601. (package
  602. (name "python-nbxmpp")
  603. (version "0.6.10")
  604. (source
  605. (origin
  606. (method url-fetch)
  607. (uri (pypi-uri "nbxmpp" version))
  608. (sha256
  609. (base32
  610. "1vq89nhamciblyi5579bppnm4sb0zk5cg5hdipfpz174fxvl2wyd"))))
  611. (build-system python-build-system)
  612. (arguments
  613. `(#:tests? #f)) ; no tests
  614. (home-page "https://dev.gajim.org/gajim/python-nbxmpp")
  615. (synopsis "Non-blocking Jabber/XMPP module")
  616. (description
  617. "The goal of this python library is to provide a way for Python
  618. applications to use Jabber/XMPP networks in a non-blocking way. This library
  619. was initially a fork of xmpppy, but uses non-blocking sockets.")
  620. (license license:gpl3+)))
  621. (define-public python2-nbxmpp
  622. (package-with-python2 python-nbxmpp))
  623. (define-public gajim
  624. (package
  625. (name "gajim")
  626. (version "1.1.3")
  627. (source (origin
  628. (method url-fetch)
  629. (uri (string-append "https://gajim.org/downloads/"
  630. (version-major+minor version)
  631. "/gajim-" version ".tar.bz2"))
  632. (sha256
  633. (base32
  634. "0bzxwcpdd4ydh6d6mzpr0gxwhcb0x9ympk55fpvm1hcw9d28a716"))))
  635. (build-system python-build-system)
  636. (arguments
  637. `(#:phases
  638. (modify-phases %standard-phases
  639. (add-after 'unpack 'add-plugin-dirs
  640. (lambda _
  641. (substitute* "gajim/common/configpaths.py"
  642. (("_paths\\['PLUGINS_USER'\\]\\]")
  643. "_paths['PLUGINS_USER']] + \
  644. ([os.getenv('GAJIM_PLUGIN_PATH')] \
  645. if os.getenv('GAJIM_PLUGIN_PATH') \
  646. and Path(os.getenv('GAJIM_PLUGIN_PATH')).is_dir() \
  647. else [])"))
  648. #t))
  649. (replace 'check
  650. (lambda _
  651. (invoke "python" "./setup.py" "test" "-s" "test.no_gui")))
  652. (add-after 'install 'wrap-gi-typelib-path
  653. (lambda* (#:key outputs #:allow-other-keys)
  654. (let ((out (assoc-ref outputs "out")))
  655. (for-each
  656. (lambda (name)
  657. (let ((file (string-append out "/bin/" name))
  658. (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
  659. (wrap-program file
  660. `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
  661. ;; For translations
  662. `("XDG_DATA_DIRS" ":" prefix
  663. (,(string-append (assoc-ref outputs "out") "/share"))))))
  664. '("gajim" "gajim-remote" "gajim-history-manager")))
  665. #t))
  666. (add-after 'install 'install-icons
  667. (lambda* (#:key inputs outputs #:allow-other-keys)
  668. (let* ((out (assoc-ref outputs "out"))
  669. (adwaita (string-append
  670. (assoc-ref inputs "adwaita-icon-theme")
  671. "/share/icons/Adwaita"))
  672. (hicolor (string-append
  673. (assoc-ref inputs "hicolor-icon-theme")
  674. "/share/icons/hicolor"))
  675. (icons (string-append
  676. out "/lib/python"
  677. ,(version-major+minor (package-version python))
  678. "/site-packages/gajim/data/icons")))
  679. (with-directory-excursion icons
  680. (symlink adwaita "Adwaita")
  681. (copy-recursively hicolor "hicolor")))
  682. #t))
  683. (add-after 'install-icons 'wrap-gsettings-schema-dir
  684. (lambda* (#:key inputs outputs #:allow-other-keys)
  685. (wrap-program (string-append (assoc-ref outputs "out")
  686. "/bin/gajim")
  687. ;; For GtkFileChooserDialog.
  688. `("GSETTINGS_SCHEMA_DIR" =
  689. (,(string-append (assoc-ref inputs "gtk+")
  690. "/share/glib-2.0/schemas"))))
  691. #t)))))
  692. (native-search-paths
  693. (list (search-path-specification
  694. (variable "GAJIM_PLUGIN_PATH")
  695. (separator #f) ;single entry
  696. (files '("share/gajim/plugins")))
  697. ;; Gajim needs to use the propagated inputs of its plugins.
  698. (search-path-specification
  699. (variable "PYTHONPATH")
  700. (files (list (string-append
  701. "lib/python"
  702. ;; FIXME: Cannot use this expression as it would
  703. ;; introduce a circular dependency at the top level.
  704. ;; (version-major+minor (package-version python))
  705. "3.8"
  706. "/site-packages"))))))
  707. (native-inputs
  708. `(("intltool" ,intltool)
  709. ("python-docutils" ,python-docutils)
  710. ("xorg-server" ,xorg-server-for-tests)))
  711. (inputs
  712. `(("adwaita-icon-theme" ,adwaita-icon-theme)
  713. ("gnome-keyring" ,gnome-keyring)
  714. ("gtk+" ,gtk+)
  715. ("gtkspell3" ,gtkspell3)
  716. ("hicolor-icon-theme" ,hicolor-icon-theme)
  717. ("libsecret" ,libsecret)
  718. ("python-cssutils" ,python-cssutils)
  719. ("python-dbus" ,python-dbus)
  720. ("python-gnupg" ,python-gnupg)
  721. ("python-keyring" ,python-keyring)
  722. ("python-nbxmpp" ,python-nbxmpp)
  723. ("python-pillow" ,python-pillow)
  724. ("python-precis-i18n" ,python-precis-i18n)
  725. ("python-pycairo" ,python-pycairo)
  726. ("python-pygobject" ,python-pygobject)
  727. ("python-pyopenssl" ,python-pyopenssl)
  728. ("python-qrcode" ,python-qrcode)))
  729. (home-page "https://gajim.org/")
  730. (synopsis "Jabber (XMPP) client")
  731. (description "Gajim is a feature-rich and easy to use Jabber/XMPP client.
  732. Among its features are: a tabbed chat window and single window modes; support
  733. for group chat (with Multi-User Chat protocol), invitation, chat to group chat
  734. transformation; audio and video conferences; file transfer; TLS, GPG and
  735. end-to-end encryption support; XML console.")
  736. (license license:gpl3)))
  737. (define-public gajim-omemo
  738. (package
  739. (name "gajim-omemo")
  740. (version "2.7.4")
  741. (source (origin
  742. (method url-fetch/zipbomb)
  743. (uri (string-append
  744. "https://ftp.gajim.org/plugins_releases/omemo_"
  745. version ".zip"))
  746. (sha256
  747. (base32
  748. "00zrj57n86c2m99n0swmmaws4f8zccbgbi8fknv6f9b1vif9jc8p"))))
  749. (build-system trivial-build-system)
  750. (arguments
  751. `(#:modules ((guix build utils))
  752. #:builder
  753. (begin
  754. (use-modules (guix build utils))
  755. (let* ((out (assoc-ref %outputs "out"))
  756. (share (in-vicinity out "share/gajim/plugins"))
  757. (source (assoc-ref %build-inputs "source")))
  758. (mkdir-p share)
  759. (copy-recursively source share)
  760. #t))))
  761. (propagated-inputs
  762. `(("python-axolotl" ,python-axolotl)))
  763. (home-page
  764. "https://dev.gajim.org/gajim/gajim-plugins/-/wikis/OmemoGajimPlugin")
  765. (synopsis "Gajim OMEMO plugin")
  766. (description
  767. "This package provides the Gajim OMEMO plugin. OMEMO is an XMPP
  768. Extension Protocol (XEP) for secure multi-client end-to-end encryption based
  769. on Axolotl and PEP.")
  770. (license license:gpl3+)))
  771. (define-public dino
  772. (package
  773. (name "dino")
  774. (version "0.1.0")
  775. (source
  776. (origin
  777. (method url-fetch)
  778. (uri (string-append "https://github.com/dino/dino/releases/download/v"
  779. version "/dino-" version ".tar.gz"))
  780. (sha256
  781. (base32
  782. "0dcq2jhpywgxrp9x1qqmrl2z50hazspqj547b9zz70apy3y4418h"))))
  783. (build-system cmake-build-system)
  784. (arguments
  785. `(#:tests? #f
  786. #:parallel-build? #f ; not supported
  787. #:modules ((guix build cmake-build-system)
  788. ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
  789. (guix build utils))
  790. #:imported-modules (,@%gnu-build-system-modules
  791. (guix build cmake-build-system)
  792. (guix build glib-or-gtk-build-system))
  793. #:phases
  794. (modify-phases %standard-phases
  795. (add-after 'install 'glib-or-gtk-wrap
  796. (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
  797. (inputs
  798. `(("libgee" ,libgee)
  799. ("libsignal-protocol-c" ,libsignal-protocol-c)
  800. ("libgcrypt" ,libgcrypt)
  801. ("libsoup" ,libsoup)
  802. ("qrencode" ,qrencode)
  803. ("sqlite" ,sqlite)
  804. ("gpgme" ,gpgme)
  805. ("gtk+" ,gtk+)
  806. ("glib-networking" ,glib-networking)
  807. ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
  808. (native-inputs
  809. `(("pkg-config" ,pkg-config)
  810. ("glib" ,glib "bin")
  811. ("vala" ,vala)
  812. ("gettext" ,gettext-minimal)))
  813. (home-page "https://dino.im")
  814. (synopsis "Graphical Jabber (XMPP) client")
  815. (description "Dino is a Jabber (XMPP) client which aims to fit well into
  816. a graphical desktop environment like GNOME.")
  817. (license license:gpl3+)))
  818. (define-public prosody
  819. (package
  820. (name "prosody")
  821. (version "0.11.3")
  822. (source (origin
  823. (method url-fetch)
  824. (uri (string-append "https://prosody.im/downloads/source/"
  825. "prosody-" version ".tar.gz"))
  826. (sha256
  827. (base32
  828. "11xz4milv2962qf75vrdwsvd8sy2332nf69202rmvz5989pvvnng"))))
  829. (build-system gnu-build-system)
  830. (arguments
  831. `(#:tests? #f ;tests require "busted"
  832. #:configure-flags (list "--no-example-certs")
  833. #:modules ((ice-9 match)
  834. (srfi srfi-1)
  835. (guix build gnu-build-system)
  836. (guix build utils))
  837. #:phases
  838. (modify-phases %standard-phases
  839. (add-after 'unpack 'fix-configure-script
  840. (lambda _
  841. ;; The configure script aborts when it encounters unexpected
  842. ;; arguments. Make it more tolerant.
  843. (substitute* "configure"
  844. (("exit 1") ""))
  845. #t))
  846. (add-after 'unpack 'fix-makefile
  847. (lambda _
  848. (substitute* "GNUmakefile"
  849. ;; prosodyctl needs to read the configuration file.
  850. (("^INSTALLEDCONFIG =.*") "INSTALLEDCONFIG = /etc/prosody\n")
  851. ;; prosodyctl needs a place to put auto-generated certificates.
  852. (("^INSTALLEDDATA =.*") "INSTALLEDDATA = /var/lib/prosody\n"))
  853. #t))
  854. (add-after 'install 'wrap-programs
  855. (lambda* (#:key inputs outputs #:allow-other-keys)
  856. ;; Make sure all executables in "bin" find the required Lua
  857. ;; modules at runtime.
  858. (let* ((out (assoc-ref outputs "out"))
  859. (bin (string-append out "/bin/"))
  860. (deps (delete #f (map (match-lambda
  861. ((label . directory)
  862. (if (string-prefix? "lua" label)
  863. directory #f)))
  864. inputs)))
  865. (lua-path (string-join
  866. (map (lambda (path)
  867. (string-append
  868. path "/share/lua/5.2/?.lua;"
  869. path "/share/lua/5.2/?/?.lua"))
  870. (cons out deps))
  871. ";"))
  872. (lua-cpath (string-join
  873. (map (lambda (path)
  874. (string-append
  875. path "/lib/lua/5.2/?.so;"
  876. path "/lib/lua/5.2/?/?.so"))
  877. (cons out deps))
  878. ";"))
  879. (openssl (assoc-ref inputs "openssl"))
  880. (coreutils (assoc-ref inputs "coreutils"))
  881. (path (map (lambda (dir)
  882. (string-append dir "/bin"))
  883. (list openssl coreutils))))
  884. (for-each (lambda (file)
  885. (wrap-program file
  886. `("LUA_PATH" ";" = (,lua-path))
  887. `("LUA_CPATH" ";" = (,lua-cpath))
  888. `("PATH" ":" prefix ,path)))
  889. (find-files bin ".*"))
  890. #t))))))
  891. (inputs
  892. `(("libidn" ,libidn)
  893. ("openssl" ,openssl)
  894. ("lua" ,lua-5.2)
  895. ("lua5.2-bitop" ,lua5.2-bitop)
  896. ("lua5.2-expat" ,lua5.2-expat)
  897. ("lua5.2-socket" ,lua5.2-socket)
  898. ("lua5.2-filesystem" ,lua5.2-filesystem)
  899. ("lua5.2-sec" ,lua5.2-sec)))
  900. (home-page "https://prosody.im/")
  901. (synopsis "Jabber (XMPP) server")
  902. (description "Prosody is a modern XMPP communication server. It aims to
  903. be easy to set up and configure, and efficient with system resources.
  904. Additionally, for developers it aims to be easy to extend and give a flexible
  905. system on which to rapidly develop added functionality, or prototype new
  906. protocols.")
  907. (license license:x11)))
  908. (define-public prosody-http-upload
  909. (let ((changeset "765735bb590b")
  910. (revision "1"))
  911. (package
  912. (name "prosody-http-upload")
  913. (version (string-append "0-" revision "." (string-take changeset 7)))
  914. (source (origin
  915. (method hg-fetch)
  916. (uri (hg-reference
  917. (url "https://hg.prosody.im/prosody-modules/")
  918. (changeset changeset)))
  919. (file-name (string-append name "-" version "-checkout"))
  920. (sha256
  921. (base32
  922. "142wrcism70nf8ffahhd961cqg2pi1h7ic8adfs3zwh0j3pnf41f"))))
  923. (build-system trivial-build-system)
  924. (arguments
  925. '(#:modules ((guix build utils))
  926. #:builder
  927. (begin
  928. (use-modules (guix build utils))
  929. (let ((out (assoc-ref %outputs "out"))
  930. (source (assoc-ref %build-inputs "source")))
  931. (with-directory-excursion (in-vicinity source "mod_http_upload")
  932. (install-file "mod_http_upload.lua" out))
  933. #t))))
  934. (home-page "https://modules.prosody.im/mod_http_upload.html")
  935. (synopsis "XEP-0363: Allow clients to upload files over HTTP")
  936. (description "This module implements XEP-0363: it allows clients to
  937. upload files over HTTP.")
  938. (license (package-license prosody)))))
  939. (define-public prosody-smacks
  940. (let ((changeset "67f1d1f22625")
  941. (revision "1"))
  942. (package
  943. (name "prosody-smacks")
  944. (version (string-append "0-" revision "." (string-take changeset 7)))
  945. (source (origin
  946. (method hg-fetch)
  947. (uri (hg-reference
  948. (url "https://hg.prosody.im/prosody-modules/")
  949. (changeset changeset)))
  950. (file-name (string-append name "-" version "-checkout"))
  951. (sha256
  952. (base32
  953. "020ngpax30fgarah98yvlj0ni8rcdwq60if03a9hqdw8mic0nxxs"))))
  954. (build-system trivial-build-system)
  955. (arguments
  956. '(#:modules ((guix build utils))
  957. #:builder
  958. (begin
  959. (use-modules (guix build utils))
  960. (let ((out (assoc-ref %outputs "out"))
  961. (source (assoc-ref %build-inputs "source")))
  962. (with-directory-excursion (in-vicinity source "mod_smacks")
  963. (install-file "mod_smacks.lua" out))
  964. #t))))
  965. (home-page "https://modules.prosody.im/mod_smacks.html")
  966. (synopsis "XEP-0198: Reliability and fast reconnects for XMPP")
  967. (description "This module implements XEP-0198: when supported by both
  968. the client and server, it can allow clients to resume a disconnected session,
  969. and prevent message loss.")
  970. (license (package-license prosody)))))
  971. (define-public libtoxcore
  972. (let ((revision "2")
  973. (commit "bf69b54f64003d160d759068f4816b2d9b2e1e21"))
  974. (package
  975. (name "libtoxcore")
  976. (version (string-append "0.0.0" "-"
  977. revision "."(string-take commit 7)))
  978. (source (origin
  979. (method git-fetch)
  980. (uri (git-reference
  981. (url "https://github.com/irungentoo/toxcore.git")
  982. (commit commit)))
  983. (file-name (string-append name "-" version "-checkout"))
  984. (sha256
  985. (base32
  986. "11lqra4yd7v293cp286ynff5lqz1pprzg8vn3wq6vryj08g88zqb"))))
  987. (build-system gnu-build-system)
  988. (arguments `(#:tests? #f)) ; FIXME: tests hang, some fail.
  989. (native-inputs
  990. `(("autoconf" ,autoconf)
  991. ("automake" ,automake)
  992. ("libtool" ,libtool)
  993. ("check" ,check)
  994. ("pkg-config" ,pkg-config)))
  995. (inputs
  996. `(("libsodium" ,libsodium)
  997. ("opus" ,opus)
  998. ("libvpx" ,libvpx)))
  999. (synopsis "Library for the Tox encrypted messenger protocol")
  1000. (description
  1001. "C library implementation of the Tox encrypted messenger protocol.")
  1002. (license license:gpl3+)
  1003. (home-page "https://tox.chat"))))
  1004. ;; Some tox clients move to c-toxcore, which seems to be where all the
  1005. ;; recent development happens. It is run by the same developers as toxcore,
  1006. ;; forked into a group namespace.
  1007. (define-public c-toxcore
  1008. (package
  1009. (name "c-toxcore")
  1010. (version "0.2.12")
  1011. (source
  1012. (origin
  1013. (method git-fetch)
  1014. (uri (git-reference
  1015. (url "https://github.com/TokTok/c-toxcore.git")
  1016. (commit (string-append "v" version))))
  1017. (file-name (git-file-name name version))
  1018. (sha256
  1019. (base32
  1020. "0a6sqpm00d2rn0nviqfz4gh9ck1wzci6rxgmqmcyryl5ca19ffvp"))))
  1021. (arguments
  1022. `(#:tests? #f)) ; FIXME: Testsuite seems to stay stuck on test 3. Disable
  1023. ; for now.
  1024. (build-system cmake-build-system)
  1025. (native-inputs
  1026. `(("pkg-config" ,pkg-config)))
  1027. (propagated-inputs
  1028. `(("libsodium" ,libsodium)
  1029. ("opus" ,opus)
  1030. ("libvpx" ,libvpx)))
  1031. (home-page "https://tox.chat")
  1032. (synopsis "Library for the Tox encrypted messenger protocol")
  1033. (description
  1034. "Official fork of the C library implementation of the Tox encrypted
  1035. messenger protocol.")
  1036. (license license:gpl3+)))
  1037. (define-public utox
  1038. (package
  1039. (name "utox")
  1040. (version "0.17.1")
  1041. (source
  1042. (origin
  1043. (method git-fetch)
  1044. (uri (git-reference
  1045. (url "https://github.com/uTox/uTox.git")
  1046. (commit (string-append "v" version))
  1047. (recursive? #t))) ;; Needed for 'minini' git submodule.
  1048. (file-name (string-append name "-" version "-checkout"))
  1049. (sha256
  1050. (base32
  1051. "17kwqw24iqljp2icih9k6ikx12gzr8zzqr8y5h35bg8m5s8pasq5"))))
  1052. (build-system cmake-build-system)
  1053. (arguments
  1054. `(#:configure-flags '("-DENABLE_TESTS=on")
  1055. #:phases
  1056. (modify-phases %standard-phases
  1057. (add-before 'build 'patch-absolute-filename-libgtk-3
  1058. (lambda* (#:key inputs outputs #:allow-other-keys)
  1059. (substitute* "../source/src/xlib/gtk.c"
  1060. (("libgtk-3.so")
  1061. (string-append (assoc-ref inputs "gtk+")
  1062. "/lib/libgtk-3.so")))))
  1063. (add-after 'install 'wrap-program
  1064. (lambda* (#:key inputs outputs #:allow-other-keys)
  1065. (wrap-program (string-append (assoc-ref outputs "out")
  1066. "/bin/utox")
  1067. ;; For GtkFileChooserDialog.
  1068. `("GSETTINGS_SCHEMA_DIR" =
  1069. (,(string-append (assoc-ref inputs "gtk+")
  1070. "/share/glib-2.0/schemas")))))))))
  1071. (inputs
  1072. `(("dbus" ,dbus)
  1073. ("filteraudio" ,filteraudio)
  1074. ("fontconfig" ,fontconfig)
  1075. ("freetype" ,freetype)
  1076. ("libsodium" ,libsodium)
  1077. ("c-toxcore" ,c-toxcore)
  1078. ("gtk+" ,gtk+)
  1079. ("libvpx" ,libvpx)
  1080. ("libx11" ,libx11)
  1081. ("libxext" ,libxext)
  1082. ("libxrender" ,libxrender)
  1083. ("openal" ,openal)
  1084. ("v4l-utils" ,v4l-utils)))
  1085. (native-inputs
  1086. `(("check" ,check)
  1087. ("pkg-config" ,pkg-config)))
  1088. (synopsis "Lightweight Tox client")
  1089. (description
  1090. "Utox is a lightweight Tox client. Tox is a distributed and secure
  1091. instant messenger with audio and video chat capabilities.")
  1092. (home-page "http://utox.org/")
  1093. (license license:gpl3)))
  1094. (define-public qtox
  1095. (package
  1096. (name "qtox")
  1097. (version "1.16.3")
  1098. (source (origin
  1099. (method url-fetch)
  1100. (uri (string-append "https://github.com/qTox/qTox/archive/v"
  1101. version ".tar.gz"))
  1102. (sha256
  1103. (base32
  1104. "10n3cgw9xaqin9la8wpd8v83bkjmimicgbyp5ninsdgsrgky4hmq"))
  1105. (file-name (string-append name "-" version ".tar.gz"))))
  1106. (build-system cmake-build-system)
  1107. (arguments
  1108. '(#:phases
  1109. (modify-phases %standard-phases
  1110. (add-after 'unpack 'fix-reproducibility-issues
  1111. (lambda _
  1112. (substitute* "src/main.cpp"
  1113. (("__DATE__") "\"\"")
  1114. (("__TIME__") "\"\"")
  1115. (("TIMESTAMP") "\"\""))
  1116. #t))
  1117. ;; Ensure that icons are found at runtime.
  1118. (add-after 'install 'wrap-executable
  1119. (lambda* (#:key inputs outputs #:allow-other-keys)
  1120. (let ((out (assoc-ref outputs "out")))
  1121. (wrap-program (string-append out "/bin/qtox")
  1122. `("QT_PLUGIN_PATH" prefix
  1123. ,(list (string-append (assoc-ref inputs "qtsvg")
  1124. "/lib/qt5/plugins/"))))))))))
  1125. (inputs
  1126. `(("ffmpeg" ,ffmpeg)
  1127. ("filteraudio" ,filteraudio)
  1128. ("glib" ,glib)
  1129. ("gtk+" ,gtk+-2)
  1130. ("libsodium" ,libsodium)
  1131. ("c-toxcore" ,c-toxcore)
  1132. ("libvpx" ,libvpx)
  1133. ("libxscrnsaver" ,libxscrnsaver)
  1134. ("libx11" ,libx11)
  1135. ("libexif" ,libexif)
  1136. ("sqlite" ,sqlite)
  1137. ("openal" ,openal)
  1138. ("qrencode" ,qrencode)
  1139. ("qtbase" ,qtbase)
  1140. ("qtsvg" ,qtsvg)
  1141. ("sqlcipher" ,sqlcipher)))
  1142. (native-inputs
  1143. `(("pkg-config" ,pkg-config)
  1144. ("qmake" ,qttools)))
  1145. (home-page "https://qtox.github.io/")
  1146. (synopsis "Tox chat client using Qt")
  1147. (description "qTox is a Tox client that follows the Tox design
  1148. guidelines. It provides an easy to use application that allows you to
  1149. connect with friends and family without anyone else