transmission bittorrent client.

This commit is contained in:
4fury-c3440d8
2021-10-14 06:10:11 +03:00
parent ad59b13f49
commit ea67d544a2
8 changed files with 331 additions and 16 deletions
+12 -8
View File
@@ -2,21 +2,25 @@
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
# See the file https://www.gnu.org/licenses/gpl-3.0.txt
from pisi.actionsapi import pisitools
from pisi.actionsapi import autotools
from pisi.actionsapi import pythonmodules
from pisi.actionsapi import cmaketools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
import os
#WorkDir = "miniupnpc-1.9"
def setup():
shelltools.system('cmake -L -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr .')
shelltools.makedirs("build")
shelltools.cd("build")
cmaketools.configure('-DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -L', sourceDir = '..')
def build():
autotools.make()
pythonmodules.compile(pyVer = '3')
shelltools.cd("build")
cmaketools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pythonmodules.install(pyVer = '3')
shelltools.cd("build")
cmaketools.rawInstall("DESTDIR=%s" % get.installDIR())
@@ -0,0 +1,40 @@
From f82b0563a72e33800f5918ead68c41bcda1fd4c1 Mon Sep 17 00:00:00 2001
From: heitbaum <rudi@heitbaum.com>
Date: Fri, 1 Oct 2021 00:00:27 +1000
Subject: [PATCH] miniupnpc/CMakeLists.txt: fix install for headers
---
miniupnpc/CMakeLists.txt | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/miniupnpc/CMakeLists.txt b/miniupnpc/CMakeLists.txt
index 0553eeb3..6b0904c0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -221,16 +221,16 @@ endif ()
if (NOT UPNPC_NO_INSTALL)
install (FILES
- miniupnpc.h
- miniwget.h
- upnpcommands.h
- igd_desc_parse.h
- upnpreplyparse.h
- upnperrors.h
- upnpdev.h
- miniupnpctypes.h
- portlistingparse.h
- miniupnpc_declspec.h
+ include/miniupnpc.h
+ include/miniwget.h
+ include/upnpcommands.h
+ include/igd_desc_parse.h
+ include/upnpreplyparse.h
+ include/upnperrors.h
+ include/upnpdev.h
+ include/miniupnpctypes.h
+ include/portlistingparse.h
+ include/miniupnpc_declspec.h
DESTINATION include/miniupnpc
)
@@ -0,0 +1,51 @@
From ed1dc4bb5cdc4a53963f3eb01089289e30acc5a3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Wed, 29 Sep 2021 08:28:27 +0200
Subject: [PATCH] Makefile: fix install rules to account for $(BUILD)
Fix missing references to $(BUILD) in the install rules, as well
as incorrect shared library symlink name. Otherwise, the 'install'
phase fails either being unable to find files:
make: *** No rule to make target 'miniupnpc.pc', needed by 'install'. Stop.
or trying to create the symlink in the wrong subdirectory:
ln: failed to create symbolic link '/tmp/z/usr/lib/build/libminiupnpc.so': No such file or directory
---
miniupnpc/Makefile | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/miniupnpc/Makefile b/miniupnpc/Makefile
index 4563b283..11a17f95 100644
--- a/Makefile
+++ b/Makefile
@@ -162,7 +162,7 @@ PKGCONFIGDIR = $(INSTALLDIRLIB)/pkgconfig
FILESTOINSTALL = $(LIBRARY) $(EXECUTABLES)
ifeq (, $(findstring amiga, $(OS)))
-FILESTOINSTALL += $(SHAREDLIBRARY) miniupnpc.pc
+FILESTOINSTALL += $(SHAREDLIBRARY) $(BUILD)/miniupnpc.pc
endif
@@ -251,15 +251,15 @@ install: updateversion $(FILESTOINSTALL)
$(INSTALL) -m 644 $(LIBRARY) $(DESTDIR)$(INSTALLDIRLIB)
ifeq (, $(findstring amiga, $(OS)))
$(INSTALL) -m 644 $(SHAREDLIBRARY) $(DESTDIR)$(INSTALLDIRLIB)/$(SONAME)
- ln -fs $(SONAME) $(DESTDIR)$(INSTALLDIRLIB)/$(SHAREDLIBRARY)
+ ln -fs $(SONAME) $(DESTDIR)$(INSTALLDIRLIB)/$(notdir $(SHAREDLIBRARY))
$(INSTALL) -d $(DESTDIR)$(PKGCONFIGDIR)
- $(INSTALL) -m 644 miniupnpc.pc $(DESTDIR)$(PKGCONFIGDIR)
+ $(INSTALL) -m 644 $(BUILD)/miniupnpc.pc $(DESTDIR)$(PKGCONFIGDIR)
endif
$(INSTALL) -d $(DESTDIR)$(INSTALLDIRBIN)
ifneq (, $(findstring amiga, $(OS)))
- $(INSTALL) -m 755 upnpc-static $(DESTDIR)$(INSTALLDIRBIN)/upnpc
+ $(INSTALL) -m 755 $(BUILD)/upnpc-static $(DESTDIR)$(INSTALLDIRBIN)/upnpc
else
- $(INSTALL) -m 755 upnpc-shared $(DESTDIR)$(INSTALLDIRBIN)/upnpc
+ $(INSTALL) -m 755 $(BUILD)/upnpc-shared $(DESTDIR)$(INSTALLDIRBIN)/upnpc
endif
$(INSTALL) -m 755 external-ip.sh $(DESTDIR)$(INSTALLDIRBIN)/external-ip
ifeq (, $(findstring amiga, $(OS)))
+28 -5
View File
@@ -11,24 +11,39 @@
<License>Copyright (c) 2005-2011, Thomas BERNARD.All rights reserved.</License>
<!--Icon></Icon-->
<IsA>library</IsA>
<Summary>miniupnpc is a UPnP Control Point. </Summary>
<Description>miniupnpc, the client library, enabling applications to access the services provided by an UPnP "Internet Gateway Device" present on the network. In UPnP terminology,miniupnpc is a UPnP Control Point. </Description>
<Archive sha1sum="f92fced1381ab0d8a6d31f75fab2c67df0c4a144" type="targz">http://miniupnp.free.fr/files/download.php?file=miniupnpc-2.1.20191224.tar.gz</Archive>
<Summary>miniupnpc is a UPnP Control Point.</Summary>
<Description>miniupnpc, the client library, enabling applications to access the services provided by an UPnP "Internet Gateway Device" present on the network. In UPnP terminology,miniupnpc is a UPnP Control Point.</Description>
<Archive sha1sum="0806a7524b9436b5875acd1c0f040b717ddf9d14" type="targz">http://miniupnp.free.fr/files/miniupnpc-2.2.3.tar.gz</Archive>
<BuildDependencies>
<Dependency>cmake</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">fix_install_for_headers.patch</Patch>
<Patch level="1">fix_install_rules_to_account_for_BUILD_var.patch</Patch>
</Patches>
</Source>
<Package>
<Name>miniupnpc</Name>
<RuntimeDependencies>
<!--Dependency></Dependency-->
<!-- <Dependency></Dependency> -->
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib</Path>
<Path fileType="data">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>python3-miniupnpc</Name>
<RuntimeDependencies>
<Dependency release="current">miniupnpc</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib/python3.8</Path>
</Files>
</Package>
<Package>
<Name>miniupnpc-devel</Name>
<RuntimeDependencies>
@@ -37,10 +52,18 @@
<Files>
<Path fileType="header">/usr/include/miniupnpc</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path>
<Path fileType="data">/usr/lib/cmake/miniupnpc</Path>
</Files>
</Package>
<History>
<Update release="4">
<Date>2021-10-14</Date>
<Version>2.2.3</Version>
<Comment>Version bump</Comment>
<Name>Kamil Atlı</Name>
<Email>suvari@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2020-06-04</Date>
<Version>2.1.20191224</Version>
+2 -3
View File
@@ -3,9 +3,8 @@
<Source>
<Name>miniupnpc</Name>
<Summary xml:lang="tr">bir uPnP istemci kütüphanesi</Summary>
<Description xml:lang="tr">bir uPnP istemci kitaplığı;uygulamaların ağdaki mevcut bir UPnP "internet ağgeçidi aygıtı"
tarafından sağlanan servislere erişimine olanak verir.
</Description>
<Description xml:lang="tr">bir uPnP istemci kitaplığı;uygulamaların ağdaki mevcut bir UPnP "internet ağgeçidi aygıtı" tarafından sağlanan servislere erişimine olanak verir.
</Description>
</Source>
<Package>
<Name>miniupnpc</Name>
+58
View File
@@ -0,0 +1,58 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file https://www.gnu.org/licenses/gpl-3.0.txt
from pisi.actionsapi import shelltools
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
from pisi.actionsapi import qt5
j = ''.join([
' --enable-cli',
' --enable-utp',
' --enable-lightweight',
' --enable-daemon',
' --disable-static',
' --disable-mac',
' --with-gtk',
' --with-crypto=openssl',
' --without-systemd '
])
def setup():
autotools.configure(j)
# transmission with qt gui configure.
shelltools.cd("qt")
qt5.configure()
def build():
autotools.make()
# transmission with qt gui make.
shelltools.cd("qt")
qt5.make()
qt5.make("translations")
def install():
# qt
qt5.install("-C qt INSTALL_ROOT=%s/usr" % get.installDIR())
pisitools.insinto("%s/%s" % (get.docDIR(), get.srcNAME()), "qt/README.txt", "README-QT")
pisitools.insinto("%s/applications" % get.dataDIR(), "qt/transmission-qt.desktop")
# gtk
autotools.rawInstall("-C gtk DESTDIR=%s" % get.installDIR())
autotools.rawInstall("-C po DESTDIR=%s" % get.installDIR())
# cli, web, deamon
for _dir in ["cli", "web", "utils"]:
autotools.rawInstall("-C %s DESTDIR=%s" % (_dir, get.installDIR()))
# For daemon config files.
pisitools.dodir("/etc/transmission-daemon")
pisitools.dodoc("AUTHORS", "COPYING", "NEWS.md", "README.md")
+117
View File
@@ -0,0 +1,117 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>transmission</Name>
<Homepage>https://transmissionbt.com/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>MIT</License>
<License>GPL-2</License>
<IsA>service</IsA>
<IsA>app:gui</IsA>
<IsA>app:console</IsA>
<PartOf>network.p2p</PartOf>
<Summary>A fast, easy, and free BitTorrent client.</Summary>
<Description>Transmission is a free, lightweight Bittorrent client. It features a simple, intuitive interface on top of an efficient backend. This package provides only daemon, web interface and command line client. If you want use Transmission with graphical interface, you should install transmission-gtk or transmission-qt.</Description>
<Archive sha1sum="fd6bd78cfe5a612b422a49e8193d82df2486a3c4" type="tarxz">
https://github.com/transmission/transmission-releases/raw/master/transmission-3.00.tar.xz
</Archive>
<BuildDependencies>
<Dependency>intltool</Dependency>
<Dependency>curl-devel</Dependency>
<Dependency>gtk3-devel</Dependency>
<Dependency>qt5-linguist</Dependency>
<Dependency>openssl-devel</Dependency>
<Dependency>qt5-base-devel</Dependency>
<Dependency>xfsprogs-devel</Dependency>
<Dependency>libevent-devel</Dependency>
<Dependency>libnotify-devel</Dependency>
<Dependency>miniupnpc-devel</Dependency>
</BuildDependencies>
<Patches>
<!-- <Patch level="1">missing.patch</Patch> -->
</Patches>
</Source>
<Package>
<Name>transmission-cli</Name>
<IsA>app:console</IsA>
<Summary>Transmission's cli tools, web interface and daemon.</Summary>
<RuntimeDependencies>
<Dependency>zlib</Dependency>
<Dependency>curl</Dependency>
<Dependency>openssl</Dependency>
<Dependency>libevent</Dependency>
<Dependency>miniupnpc</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="config">/etc</Path>
<Path fileType="data">/usr/share</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>transmission-gtk</Name>
<IsA>app:gui</IsA>
<Summary>Transmission's GTK+ interface (default).</Summary>
<RuntimeDependencies>
<Dependency release="current">transmission-cli</Dependency>
<Dependency>zlib</Dependency>
<Dependency>curl</Dependency>
<Dependency>gtk3</Dependency>
<Dependency>glib2</Dependency>
<Dependency>pango</Dependency>
<Dependency>openssl</Dependency>
<Dependency>libevent</Dependency>
<Dependency>miniupnpc</Dependency>
<Dependency>libnotify</Dependency>
<Dependency>gdk-pixbuf</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin/transmission-gtk</Path>
<Path fileType="data">/usr/share/appdata/transmission-gtk.xml</Path>
<Path fileType="data">/usr/share/applications/transmission-gtk.desktop</Path>
<Path fileType="localedata">/usr/share/locale</Path>
<Path fileType="man">/usr/share/man/man1/transmission-gtk.1</Path>
</Files>
</Package>
<Package>
<Name>transmission-qt</Name>
<IsA>app:gui</IsA>
<Summary>Transmission's Qt interface.</Summary>
<RuntimeDependencies>
<Dependency release="current">transmission-cli</Dependency>
<Dependency>zlib</Dependency>
<Dependency>curl</Dependency>
<Dependency>libgcc</Dependency>
<Dependency>openssl</Dependency>
<Dependency>libevent</Dependency>
<Dependency>qt5-base</Dependency>
<Dependency>miniupnpc</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin/transmission-qt</Path>
<Path fileType="data">/usr/share/applications/transmission-qt.desktop</Path>
<Path fileType="man">/usr/share/man/man1/transmission-qt.1</Path>
<Path fileType="doc">/usr/share/doc/transmission/README-QT</Path>
</Files>
</Package>
<History>
<Update release="1">
<Date>2021-10-14</Date>
<Version>3.00</Version>
<Comment>First build.</Comment>
<Name>fury</Name>
<Email>uglyside@yandex.ru</Email>
</Update>
</History>
</PISI>
+23
View File
@@ -0,0 +1,23 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>transmission</Name>
<Summary xml:lang="tr">Hızlı, basit ve özgür BitTorrent istemcisi</Summary>
<Description xml:lang="tr">Transmission özgür ve hafif BitTorrent istemcisidir. İki değişik kitaplıkla yazılmış basit ve kullanışlı arayüz istemcisi vardır. Qt ile yazılmış arayüz paketinin adı transmission-qt, GTK+ ile yazılmış olanı ise transmission-gtk'dir. Bu pakette sadece servis, komut satırı istemcisi ve Web arayüzü bulunmaktadır.</Description>
</Source>
<Package>
<Name>transmission-cli</Name>
<Summary xml:lang="tr">Transmission'un öntanımlı CLI, web ve sunucu bileşenleri</Summary>
</Package>
<Package>
<Name>transmission-gtk</Name>
<Summary xml:lang="tr">Transmission'un öntanımlı GTK+ arayüz istemcisi</Summary>
</Package>
<Package>
<Name>transmission-qt</Name>
<Summary xml:lang="tr">Transmission'un Qt arayüz istemcisi</Summary>
</Package>
</PISI>