Commit | Line | Data |
---|---|---|
3963a729 | 1 | ;;; GNU Guix --- Functional package management for GNU |
df66fee7 | 2 | ;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com> |
3963a729 LC |
3 | ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org> |
4 | ;;; | |
5 | ;;; This file is part of GNU Guix. | |
6 | ;;; | |
7 | ;;; GNU Guix is free software; you can redistribute it and/or modify it | |
8 | ;;; under the terms of the GNU General Public License as published by | |
9 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
10 | ;;; your option) any later version. | |
11 | ;;; | |
12 | ;;; GNU Guix is distributed in the hope that it will be useful, but | |
13 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | ;;; GNU General Public License for more details. | |
16 | ;;; | |
17 | ;;; You should have received a copy of the GNU General Public License | |
18 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | |
19 | ||
20 | (define-module (gnu packages bittorrent) | |
21 | #:use-module (guix packages) | |
22 | #:use-module (guix download) | |
23 | #:use-module (guix build-system gnu) | |
b5b73a82 | 24 | #:use-module ((guix licenses) #:prefix l:) |
3963a729 LC |
25 | #:use-module (gnu packages openssl) |
26 | #:use-module (gnu packages libevent) | |
27 | #:use-module (gnu packages curl) | |
28 | #:use-module (gnu packages pkg-config) | |
29 | #:use-module (gnu packages file) | |
30 | #:use-module (gnu packages linux) | |
31 | #:use-module ((gnu packages compression) | |
32 | #:select (zlib)) | |
33 | #:use-module (gnu packages glib) | |
df66fee7 LC |
34 | #:use-module (gnu packages gtk) |
35 | #:use-module (gnu packages check)) | |
3963a729 LC |
36 | |
37 | (define-public transmission | |
38 | (package | |
39 | (name "transmission") | |
1f2b8c88 | 40 | (version "2.84") |
3963a729 LC |
41 | (source (origin |
42 | (method url-fetch) | |
43 | (uri (string-append | |
44 | "https://transmission.cachefly.net/transmission-" | |
45 | version ".tar.xz")) | |
46 | (sha256 | |
47 | (base32 | |
1f2b8c88 | 48 | "1sxr1magqb5s26yvr5yhs1f7bmir8gl09niafg64lhgfnhv1kz59")))) |
3963a729 LC |
49 | (build-system gnu-build-system) |
50 | (outputs '("out" ; library and command-line interface | |
51 | "gui")) ; graphical user interface | |
52 | (arguments | |
53 | '(#:phases (alist-cons-after | |
54 | 'install 'move-gui | |
55 | (lambda* (#:key outputs #:allow-other-keys) | |
56 | ;; Move the GUI to its own output, so that "out" doesn't | |
57 | ;; depend on GTK+. | |
58 | (let ((out (assoc-ref outputs "out")) | |
59 | (gui (assoc-ref outputs "gui"))) | |
60 | (mkdir-p (string-append gui "/bin")) | |
61 | (rename-file (string-append out "/bin/transmission-gtk") | |
62 | (string-append gui | |
63 | "/bin/transmission-gtk")))) | |
64 | %standard-phases))) | |
65 | (inputs | |
66 | `(("inotify-tools" ,inotify-tools) | |
67 | ("libevent" ,libevent) | |
68 | ("curl" ,curl) | |
69 | ("openssl" ,openssl) | |
70 | ("file" ,file) | |
71 | ("zlib" ,zlib) | |
72 | ("gtk+" ,gtk+))) | |
73 | (native-inputs | |
74 | `(("intltool" ,intltool) | |
75 | ("pkg-config" ,pkg-config))) | |
76 | (home-page "http://www.transmissionbt.com/") | |
77 | (synopsis "Fast and easy BitTorrent client") | |
78 | (description | |
79 | "Transmission is a BitTorrent client that comes with graphical, | |
80 | textual, and Web user interfaces. Transmission also has a daemon for | |
81 | unattended operationg. It supports local peer discovery, full encryption, | |
82 | DHT, µTP, PEX and Magnet Links.") | |
83 | ||
84 | ;; COPYING reads: | |
85 | ;; | |
86 | ;; Transmission can be redistributed and/or modified under the terms of | |
87 | ;; the GNU GPLv2 (http://www.gnu.org/licenses/license-list.html#GPLv2), | |
88 | ;; the GNU GPLv3 (http://www.gnu.org/licenses/license-list.html#GNUGPLv3), | |
89 | ;; or any future license endorsed by Mnemosyne LLC. | |
90 | ;; | |
91 | ;; A few files files carry an MIT/X11 license header. | |
92 | (license l:gpl3+))) | |
df66fee7 LC |
93 | |
94 | (define-public libtorrent | |
95 | (package | |
96 | (name "libtorrent") | |
97 | (version "0.13.4") | |
98 | (source (origin | |
99 | (method url-fetch) | |
100 | (uri (string-append | |
101 | "http://libtorrent.rakshasa.no/downloads/libtorrent-" | |
102 | version ".tar.gz")) | |
103 | (sha256 | |
104 | (base32 | |
105 | "0ma910br5vxrfpm4f4w4942lpmhwvqjnnf9h8vpf52fw35qhjkkh")))) | |
106 | (build-system gnu-build-system) | |
107 | (inputs `(("openssl" ,openssl) | |
108 | ("zlib" ,zlib))) | |
109 | (native-inputs `(("pkg-config" ,pkg-config) | |
110 | ;; Add this when you enable tests: | |
111 | ;; ("cppunit" ,cppunit) | |
112 | )) | |
113 | (arguments | |
114 | ;; FIXME: enable tests on the next release: | |
115 | ;; https://github.com/rakshasa/libtorrent/issues/59 | |
116 | `(#:tests? #f)) | |
117 | (synopsis "BitTorrent library of rtorrent") | |
118 | (description | |
119 | "LibTorrent is a BitTorrent library used by and developed in parallel | |
120 | with the BitTorrent client rtorrent. It is written in C++ with emphasis on | |
121 | speed and efficiency.") | |
122 | (home-page "http://libtorrent.rakshasa.no/") | |
123 | (license l:gpl2+))) |