Packaging for multiple distros
This commit is contained in:
parent
5f87415395
commit
10b23d0946
70
Makefile
Executable file → Normal file
70
Makefile
Executable file → Normal file
|
@ -1,43 +1,45 @@
|
|||
APP=pybitmessage
|
||||
VERSION=0.3.4
|
||||
DEST_SHARE=${DESTDIR}/usr/share
|
||||
DEST_APP=${DEST_SHARE}/${APP}
|
||||
RELEASE=1
|
||||
ARCH_TYPE=`uname -m`
|
||||
|
||||
all:
|
||||
|
||||
debug:
|
||||
|
||||
source:
|
||||
tar -cvzf ../${APP}_${VERSION}.orig.tar.gz ../${APP}-${VERSION} --exclude-vcs
|
||||
|
||||
install:
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/bin
|
||||
mkdir -m 755 -p ${DEST_APP}
|
||||
mkdir -m 755 -p ${DEST_SHARE}/applications
|
||||
mkdir -m 755 -p ${DEST_APP}/images
|
||||
mkdir -m 755 -p ${DEST_APP}/pyelliptic
|
||||
mkdir -m 755 -p ${DEST_APP}/socks
|
||||
mkdir -m 755 -p ${DEST_APP}/bitmessageqt
|
||||
mkdir -m 755 -p ${DEST_APP}/translations
|
||||
mkdir -m 755 -p ${DEST_SHARE}/pixmaps
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor/scalable
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor/scalable/apps
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor/24x24
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor/24x24/apps
|
||||
|
||||
cp -r src/* ${DEST_APP}
|
||||
install -m 755 debian/pybm ${DESTDIR}/usr/bin/${APP}
|
||||
|
||||
install -m 644 desktop/${APP}.desktop ${DEST_SHARE}/applications/${APP}.desktop
|
||||
install -m 644 src/images/can-icon-24px.png ${DEST_SHARE}/icons/hicolor/24x24/apps/${APP}.png
|
||||
install -m 644 desktop/can-icon.svg ${DEST_SHARE}/icons/hicolor/scalable/apps/${APP}.svg
|
||||
install -m 644 desktop/can-icon.svg ${DEST_SHARE}/pixmaps/${APP}.svg
|
||||
|
||||
mkdir -p ${DESTDIR}/usr
|
||||
mkdir -p ${DESTDIR}/usr/bin
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/man
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/man/man1
|
||||
install -m 644 man/${APP}.1.gz ${DESTDIR}/usr/share/man/man1
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/${APP}
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/applications
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/pixmaps
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/icons
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor/scalable
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor/scalable/apps
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor/24x24
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor/24x24/apps
|
||||
install -m 644 desktop/${APP}.desktop ${DESTDIR}/usr/share/applications/${APP}.desktop
|
||||
install -m 644 desktop/icon24.png ${DESTDIR}/usr/share/icons/hicolor/24x24/apps/${APP}.png
|
||||
cp -rf src/* ${DESTDIR}/usr/share/${APP}
|
||||
echo '#!/bin/sh' > ${DESTDIR}/usr/bin/${APP}
|
||||
echo 'cd /usr/share/pybitmessage' >> ${DESTDIR}/usr/bin/${APP}
|
||||
echo 'LD_LIBRARY_PATH="/opt/openssl-compat-bitcoin/lib/" exec python bitmessagemain.py' >> ${DESTDIR}/usr/bin/${APP}
|
||||
chmod +x ${DESTDIR}/usr/bin/${APP}
|
||||
uninstall:
|
||||
rm -f /usr/share/man/man1/${APP}.1.gz
|
||||
rm -rf /usr/share/${APP}
|
||||
rm -f /usr/bin/${APP}
|
||||
rm -f /usr/share/applications/${APP}.desktop
|
||||
rm -f /usr/share/icons/hicolor/scalable/apps/${APP}.svg
|
||||
/usr/share/pixmaps/${APP}.svg
|
||||
clean:
|
||||
rm -rf debian/${APP}
|
||||
rm -f ../${APP}_*.deb ../${APP}_*.asc ../${APP}_*.dsc ../${APP}*.changes
|
||||
rm -f *.sh~ src/*.pyc src/socks/*.pyc src/pyelliptic/*.pyc
|
||||
rm -f *.deb \#* \.#* debian/*.log debian/*.substvars
|
||||
rm -f Makefile~
|
||||
rm -f ${APP} \#* \.#* gnuplot* *.png debian/*.substvars debian/*.log
|
||||
rm -fr deb.* debian/${APP} rpmpackage/${ARCH_TYPE}
|
||||
rm -f ../${APP}*.deb ../${APP}*.changes ../${APP}*.asc ../${APP}*.dsc
|
||||
rm -f rpmpackage/*.src.rpm archpackage/*.gz
|
||||
rm -f puppypackage/*.gz puppypackage/*.pet slackpackage/*.txz
|
||||
|
|
45
arch.sh
Executable file
45
arch.sh
Executable file
|
@ -0,0 +1,45 @@
|
|||
#!/bin/bash
|
||||
|
||||
APP=pybitmessage
|
||||
PREV_VERSION=0.3.4
|
||||
VERSION=0.3.4
|
||||
RELEASE=1
|
||||
ARCH_TYPE=`uname -m`
|
||||
CURRDIR=`pwd`
|
||||
SOURCE=archpackage/${APP}-${VERSION}.tar.gz
|
||||
|
||||
# Update version numbers automatically - so you don't have to
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' Makefile debian.sh rpm.sh puppy.sh ebuild.sh slack.sh
|
||||
sed -i 's/Version: '${PREV_VERSION}'/Version: '${VERSION}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/Release: '${RELEASE}'/Release: '${RELEASE}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/pkgrel='${RELEASE}'/pkgrel='${RELEASE}'/g' archpackage/PKGBUILD
|
||||
sed -i 's/pkgver='${PREV_VERSION}'/pkgver='${VERSION}'/g' archpackage/PKGBUILD
|
||||
sed -i "s/-${PREV_VERSION}-/-${VERSION}-/g" puppypackage/*.specs
|
||||
sed -i "s/|${PREV_VERSION}|/|${VERSION}|/g" puppypackage/*.specs
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' puppypackage/pinstall.sh puppypackage/puninstall.sh
|
||||
sed -i 's/-'${PREV_VERSION}'.so/-'${VERSION}'.so/g' debian/*.links
|
||||
|
||||
|
||||
# Create the source code
|
||||
make clean
|
||||
rm -f archpackage/*.gz
|
||||
|
||||
# having the root directory called name-version seems essential
|
||||
mv ../${APP} ../${APP}-${VERSION}
|
||||
tar -cvzf ${SOURCE} ../${APP}-${VERSION} --exclude-vcs
|
||||
|
||||
# rename the root directory without the version number
|
||||
mv ../${APP}-${VERSION} ../${APP}
|
||||
|
||||
# calculate the MD5 checksum
|
||||
CHECKSM=$(md5sum ${SOURCE})
|
||||
sed -i "s/md5sums[^)]*)/md5sums=(${CHECKSM%% *})/g" archpackage/PKGBUILD
|
||||
|
||||
cd archpackage
|
||||
|
||||
# Create the package
|
||||
makepkg
|
||||
|
||||
# Move back to the original directory
|
||||
cd ${CURRDIR}
|
||||
|
31
archpackage/PKGBUILD
Normal file
31
archpackage/PKGBUILD
Normal file
|
@ -0,0 +1,31 @@
|
|||
# Maintainer: Bob Mottram (4096 bits) <bob@robotics.uk.to>
|
||||
pkgname=pybitmessage
|
||||
pkgver=0.3.4
|
||||
pkgrel=1
|
||||
pkgdesc="Bitmessage is a P2P communications protocol used to send encrypted messages to another person or to many subscribers. It is decentralized and trustless, meaning that you need-not inherently trust any entities like root certificate authorities. It uses strong authentication which means that the sender of a message cannot be spoofed, and it aims to hide "non-content" data, like the sender and receiver of messages, from passive eavesdroppers like those running warrantless wiretapping programs."
|
||||
arch=('i686' 'x86_64')
|
||||
url="https://github.com/Bitmessage/PyBitmessage"
|
||||
license=('MIT')
|
||||
groups=()
|
||||
depends=()
|
||||
makedepends=()
|
||||
optdepends=()
|
||||
provides=()
|
||||
conflicts=()
|
||||
replaces=()
|
||||
backup=()
|
||||
options=()
|
||||
install=
|
||||
changelog=
|
||||
source=($pkgname-$pkgver.tar.gz)
|
||||
noextract=()
|
||||
md5sums=(56a8a225463e96b435b2a5b438006983)
|
||||
build() {
|
||||
cd "$srcdir/$pkgname-$pkgver"
|
||||
./configure --prefix=/usr
|
||||
make
|
||||
}
|
||||
package() {
|
||||
cd "$srcdir/$pkgname-$pkgver"
|
||||
make DESTDIR="$pkgdir/" install
|
||||
}
|
52
debian.sh
52
debian.sh
|
@ -1,32 +1,46 @@
|
|||
# To build a debian package first ensure that the code exists
|
||||
# within a directory called pybitmessage-x.x.x (where the x's
|
||||
# are the version number), make sure that the VERSION parameter
|
||||
# within debian/rules and this script are correct, then run
|
||||
# this script.
|
||||
|
||||
#!/bin/bash
|
||||
|
||||
APP=pybitmessage
|
||||
PREV_VERSION=0.3.3
|
||||
PREV_VERSION=0.3.4
|
||||
VERSION=0.3.4
|
||||
RELEASE=1
|
||||
ARCH_TYPE=all
|
||||
ARCH_TYPE=`uname -m`
|
||||
DIR=${APP}-${VERSION}
|
||||
|
||||
#update version numbers automatically - so you don't have to
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' Makefile
|
||||
sed -i 's/'''${PREV_VERSION}'''/'''${VERSION}'''/g' src/shared.py
|
||||
if [ $ARCH_TYPE == "x86_64" ]; then
|
||||
ARCH_TYPE="amd64"
|
||||
fi
|
||||
if [ $ARCH_TYPE == "i686" ]; then
|
||||
ARCH_TYPE="i386"
|
||||
fi
|
||||
|
||||
|
||||
# Update version numbers automatically - so you don't have to
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' Makefile rpm.sh arch.sh puppy.sh ebuild.sh slack.sh
|
||||
sed -i 's/Version: '${PREV_VERSION}'/Version: '${VERSION}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/Release: '${RELEASE}'/Release: '${RELEASE}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/pkgrel='${RELEASE}'/pkgrel='${RELEASE}'/g' archpackage/PKGBUILD
|
||||
sed -i 's/pkgver='${PREV_VERSION}'/pkgver='${VERSION}'/g' archpackage/PKGBUILD
|
||||
sed -i "s/-${PREV_VERSION}-/-${VERSION}-/g" puppypackage/*.specs
|
||||
sed -i "s/|${PREV_VERSION}|/|${VERSION}|/g" puppypackage/*.specs
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' puppypackage/pinstall.sh puppypackage/puninstall.sh
|
||||
sed -i 's/-'${PREV_VERSION}'.so/-'${VERSION}'.so/g' debian/*.links
|
||||
|
||||
make clean
|
||||
make
|
||||
|
||||
# change the parent directory name to debian format
|
||||
mv ../${APP} ../${DIR}
|
||||
|
||||
# Create a source archive
|
||||
make clean
|
||||
# change the directory name to pybitmessage-version
|
||||
mv ../PyBitmessage ../${APP}-${VERSION}
|
||||
make source
|
||||
|
||||
# Build the package
|
||||
dpkg-buildpackage -A
|
||||
dpkg-buildpackage -F
|
||||
|
||||
# change the directory name back
|
||||
mv ../${APP}-${VERSION} ../PyBitmessage
|
||||
|
||||
gpg -ba ../${APP}_${VERSION}-${RELEASE}_${ARCH_TYPE}.deb
|
||||
# sign files
|
||||
gpg -ba ../${APP}_${VERSION}-1_${ARCH_TYPE}.deb
|
||||
gpg -ba ../${APP}_${VERSION}.orig.tar.gz
|
||||
|
||||
# restore the parent directory name
|
||||
mv ../${DIR} ../${APP}
|
||||
|
|
4
debian/changelog
vendored
4
debian/changelog
vendored
|
@ -18,7 +18,7 @@ pybitmessage (0.3.3-1) raring; urgency=low
|
|||
via Portage (Gentoo)
|
||||
* Fix message authentication bug
|
||||
|
||||
-- Bob Mottram (4096 bits) <bob@robotics.uk.to> Sun, 30 June 2013 11:23:00 +0100
|
||||
-- Bob Mottram (4096 bits) <bob@robotics.uk.to> Sat, 29 June 2013 11:23:00 +0100
|
||||
|
||||
pybitmessage (0.3.211-1) raring; urgency=low
|
||||
|
||||
|
@ -26,7 +26,7 @@ pybitmessage (0.3.211-1) raring; urgency=low
|
|||
as the multiprocessing module does not work well with
|
||||
pyinstaller's --onefile option.
|
||||
|
||||
-- Bob Mottram (4096 bits) <bob@robotics.uk.to> Sun, 30 June 2013 11:23:00 +0100
|
||||
-- Bob Mottram (4096 bits) <bob@robotics.uk.to> Fri, 28 June 2013 11:23:00 +0100
|
||||
|
||||
pybitmessage (0.3.2-1) raring; urgency=low
|
||||
|
||||
|
|
2
debian/compat
vendored
2
debian/compat
vendored
|
@ -1 +1 @@
|
|||
8
|
||||
9
|
||||
|
|
34
debian/control
vendored
34
debian/control
vendored
|
@ -1,21 +1,21 @@
|
|||
Source: pybitmessage
|
||||
Section: contrib/comm
|
||||
Priority: extra
|
||||
Maintainer: Jonathan Warren <jonathan@bitmessage.org>
|
||||
Build-Depends: debhelper (>= 8.0.0), python (>= 2.7.0), openssl, python-qt4, libqt4-dev (>= 4.8.0), python-qt4-dev, sqlite3, libsqlite3-dev, libmessaging-menu-dev
|
||||
Standards-Version: 3.9.2
|
||||
Homepage: https://bitmessage.org/
|
||||
Vcs-Browser: https://github.com/Bitmessage/PyBitmessage
|
||||
Vcs-Git: https://github.com/Bitmessage/PyBitmessage.git
|
||||
Maintainer: Bob Mottram (4096 bits) <bob@robotics.uk.to>
|
||||
Build-Depends: debhelper (>= 9.0.0)
|
||||
Standards-Version: 3.9.4
|
||||
Homepage: https://github.com/Bitmessage/PyBitmessage
|
||||
Vcs-Git: https://github.com/fuzzgun/autocv.git
|
||||
|
||||
Package: pybitmessage
|
||||
Architecture: all
|
||||
Depends: ${misc:Depends}, python (>= 2.7.0), openssl, python-qt4, libqt4-dev (>= 4.8.0), python-qt4-dev, sqlite3, libsqlite3-dev, libmessaging-menu-dev
|
||||
Description: Send encrypted messages to another person or to many subscribers
|
||||
Bitmessage is a P2P communications protocol used to send encrypted messages
|
||||
to another person or to many subscribers. It is decentralized and trustless,
|
||||
meaning that you need-not inherently trust any entities like root certificate
|
||||
authorities. It uses strong authentication which means that the sender of a
|
||||
message cannot be spoofed, and it aims to hide "non-content" data, like the
|
||||
sender and receiver of messages, from passive eavesdroppers like those
|
||||
running warrantless wiretapping programs.
|
||||
Section: mail
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, python (>= 2.7.0), openssl, python-qt4, libqt4-dev (>= 4.8.0), python-qt4-dev, sqlite3, libsqlite3-dev
|
||||
Suggests: libmessaging-menu-dev
|
||||
Description: Send encrypted messages
|
||||
Bitmessage is a P2P communications protocol used to send encrypted
|
||||
messages to another person or to many subscribers. It is decentralized and
|
||||
trustless, meaning that you need-not inherently trust any entities like
|
||||
root certificate authorities. It uses strong authentication which means
|
||||
that the sender of a message cannot be spoofed, and it aims to hide
|
||||
"non-content" data, like the sender and receiver of messages, from passive
|
||||
eavesdroppers like those running warrantless wiretapping programs.
|
||||
|
|
40
debian/copyright
vendored
40
debian/copyright
vendored
|
@ -1,30 +1,30 @@
|
|||
Format: http://dep.debian.net/deps/dep5
|
||||
Upstream-Name: PyBitmessage
|
||||
Source: https://github.com/Bitmessage/PyBitmessage
|
||||
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Name:
|
||||
Source:
|
||||
|
||||
Files: *
|
||||
Copyright: 2012 Jonathan Warren
|
||||
Copyright: Copyright 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to>
|
||||
License: MIT
|
||||
|
||||
Files: debian/*
|
||||
Copyright: 2012 Jonathan Warren
|
||||
Copyright: Copyright 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to>
|
||||
License: MIT
|
||||
|
||||
License: MIT
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
to deal in the Software without restriction, including without limitation
|
||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
and/or sell copies of the Software, and to permit persons to whom the
|
||||
Software is furnished to do so, subject to the following conditions:
|
||||
.
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
|
1
debian/manpages
vendored
Normal file
1
debian/manpages
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
man/pybitmessage.1.gz
|
86
debian/rules
vendored
86
debian/rules
vendored
|
@ -1,66 +1,42 @@
|
|||
#!/usr/bin/make -f
|
||||
APP=pybitmessage
|
||||
DESTDIR=${CURDIR}/debian/${APP}
|
||||
DEST_SHARE=${DESTDIR}/usr/share
|
||||
DEST_APP=${DEST_SHARE}/${APP}
|
||||
|
||||
build: build-stamp
|
||||
APP=pybitmessage
|
||||
build: build-stamp
|
||||
make
|
||||
build-arch: build-stamp
|
||||
build-indep: build-stamp
|
||||
build-stamp:
|
||||
dh_testdir
|
||||
touch build-stamp
|
||||
dh_testdir
|
||||
touch build-stamp
|
||||
|
||||
clean:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
rm -f build-stamp
|
||||
dh_clean
|
||||
install:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_prep
|
||||
dh_clean -k
|
||||
dh_installdirs
|
||||
|
||||
mkdir -m 755 -p ${DESTDIR}/usr/bin
|
||||
mkdir -m 755 -p ${DEST_APP}
|
||||
mkdir -m 755 -p ${DEST_SHARE}/applications
|
||||
mkdir -m 755 -p ${DEST_APP}/images
|
||||
mkdir -m 755 -p ${DEST_APP}/pyelliptic
|
||||
mkdir -m 755 -p ${DEST_APP}/socks
|
||||
mkdir -m 755 -p ${DEST_APP}/bitmessageqt
|
||||
mkdir -m 755 -p ${DEST_APP}/translations
|
||||
mkdir -m 755 -p ${DEST_SHARE}/pixmaps
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor/scalable
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor/scalable/apps
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor/24x24
|
||||
mkdir -m 755 -p ${DEST_SHARE}/icons/hicolor/24x24/apps
|
||||
|
||||
cp -r src/* ${DEST_APP}
|
||||
install -m 755 debian/pybm ${DESTDIR}/usr/bin/${APP}
|
||||
|
||||
install -m 644 desktop/${APP}.desktop ${DEST_SHARE}/applications/${APP}.desktop
|
||||
install -m 644 src/images/can-icon-24px.png ${DEST_SHARE}/icons/hicolor/24x24/apps/${APP}.png
|
||||
install -m 644 desktop/can-icon.svg ${DEST_SHARE}/icons/hicolor/scalable/apps/${APP}.svg
|
||||
install -m 644 desktop/can-icon.svg ${DEST_SHARE}/pixmaps/${APP}.svg
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
rm -f build-stamp
|
||||
dh_clean
|
||||
|
||||
install: build clean
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_prep
|
||||
dh_installdirs
|
||||
${MAKE} install -B DESTDIR=${CURDIR}/debian/${APP}
|
||||
binary-indep: build install
|
||||
dh_shlibdeps
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_installchangelogs
|
||||
dh_installdocs
|
||||
# dh_installman
|
||||
dh_link
|
||||
dh_compress
|
||||
dh_fixperms
|
||||
dh_installdeb
|
||||
dh_gencontrol
|
||||
dh_md5sums
|
||||
dh_builddeb
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_installchangelogs
|
||||
dh_installdocs
|
||||
dh_installexamples
|
||||
dh_installman
|
||||
dh_link
|
||||
dh_compress
|
||||
dh_fixperms
|
||||
dh_installdeb
|
||||
dh_gencontrol
|
||||
dh_md5sums
|
||||
dh_builddeb
|
||||
|
||||
binary-arch: build install
|
||||
|
||||
binary: binary-indep binary-arch
|
||||
.PHONY: build clean binary-indep binary install
|
||||
.PHONY: build clean binary-indep binary-arch binary install
|
||||
|
|
111
desktop/icon14.xpm
Normal file
111
desktop/icon14.xpm
Normal file
|
@ -0,0 +1,111 @@
|
|||
/* XPM */
|
||||
static char * icon14_xpm[] = {
|
||||
"14 14 94 2",
|
||||
" c None",
|
||||
". c #B9BABC",
|
||||
"+ c #D2D3D4",
|
||||
"@ c #BEBFC1",
|
||||
"# c #CBCCCF",
|
||||
"$ c #E0E3E1",
|
||||
"% c #F6F8F8",
|
||||
"& c #F3F3F3",
|
||||
"* c #B9BABD",
|
||||
"= c #C8C9CB",
|
||||
"- c #DADCDB",
|
||||
"; c #E6E8E7",
|
||||
"> c #F7F7F7",
|
||||
", c #FCFCFC",
|
||||
"' c #F5F5F5",
|
||||
") c #BCBDBF",
|
||||
"! c #D3D5D5",
|
||||
"~ c #E3E5E4",
|
||||
"{ c #F1F2F2",
|
||||
"] c #FDFDFD",
|
||||
"^ c #F8F8F8",
|
||||
"/ c #CBCCCC",
|
||||
"( c #B2B3B6",
|
||||
"_ c #B0B1B3",
|
||||
": c #D3D4D6",
|
||||
"< c #DFE0E0",
|
||||
"[ c #EAEDEB",
|
||||
"} c #FAF9F9",
|
||||
"| c #DFE0DF",
|
||||
"1 c #B9BBBD",
|
||||
"2 c #C2C3C5",
|
||||
"3 c #B7B8BC",
|
||||
"4 c #CDCED0",
|
||||
"5 c #DCDDDE",
|
||||
"6 c #E7E9E7",
|
||||
"7 c #F6F6F6",
|
||||
"8 c #C0C1C2",
|
||||
"9 c #DDDFDF",
|
||||
"0 c #BCBCBF",
|
||||
"a c #D7D9DA",
|
||||
"b c #E2E4E3",
|
||||
"c c #F0F2F1",
|
||||
"d c #FAFAFA",
|
||||
"e c #F9F9F9",
|
||||
"f c #CCCDCD",
|
||||
"g c #B6B7B9",
|
||||
"h c #C7C8CA",
|
||||
"i c #A6A7A9",
|
||||
"j c #D3D4D5",
|
||||
"k c #F2F5F3",
|
||||
"l c #F1F2F1",
|
||||
"m c #F6F8F7",
|
||||
"n c #FCFBFC",
|
||||
"o c #E8EAE9",
|
||||
"p c #B6B7B8",
|
||||
"q c #BFC0C2",
|
||||
"r c #323138",
|
||||
"s c #1D1D22",
|
||||
"t c #111117",
|
||||
"u c #4C4C51",
|
||||
"v c #ECECED",
|
||||
"w c #FFFFFF",
|
||||
"x c #BBBDBD",
|
||||
"y c #C9CACB",
|
||||
"z c #333238",
|
||||
"A c #313036",
|
||||
"B c #27272C",
|
||||
"C c #1E1F24",
|
||||
"D c #16171D",
|
||||
"E c #919193",
|
||||
"F c #F2F3F3",
|
||||
"G c #B4B5B7",
|
||||
"H c #CDCFCF",
|
||||
"I c #67666B",
|
||||
"J c #37363C",
|
||||
"K c #2C2B31",
|
||||
"L c #2A292F",
|
||||
"M c #16171C",
|
||||
"N c #68696B",
|
||||
"O c #C7C8C9",
|
||||
"P c #CBCDCC",
|
||||
"Q c #49474E",
|
||||
"R c #39383E",
|
||||
"S c #36353B",
|
||||
"T c #333138",
|
||||
"U c #28272D",
|
||||
"V c #CED0D0",
|
||||
"W c #67676C",
|
||||
"X c #414046",
|
||||
"Y c #424147",
|
||||
"Z c #39383F",
|
||||
"` c #8C8D8F",
|
||||
" . c #6B6C70",
|
||||
".. c #75757A",
|
||||
" . + ",
|
||||
" @ # $ % & ",
|
||||
" * = - ; > , ' ",
|
||||
" ) ! ~ { ] ^ / ( ",
|
||||
" _ : < [ } , | 1 2 ",
|
||||
" 3 4 5 6 7 , { 8 . 9 ",
|
||||
" 2 0 a b c d e f g h ",
|
||||
" i j k l m n o p q h ",
|
||||
" r s t u v w ' x g y ",
|
||||
" z A B C D E F G H ",
|
||||
" I J A K L M N O P ",
|
||||
" Q R R S T U V ",
|
||||
" W X Y X Z ` ",
|
||||
" ... "};
|
BIN
desktop/icon24.png
Normal file
BIN
desktop/icon24.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.8 KiB |
|
@ -2,29 +2,8 @@
|
|||
Type=Application
|
||||
Name=PyBitmessage
|
||||
GenericName=PyBitmessage
|
||||
X-GNOME-FullName=PyBitmessage Secure Messaging
|
||||
Comment=Send encrypted messages to another person or to many subscribers
|
||||
Exec=pybitmessage %U
|
||||
Comment=Send encrypted messages
|
||||
Exec=pybitmessage %F
|
||||
Icon=pybitmessage
|
||||
Terminal=false
|
||||
Categories=Network;Email;Application;
|
||||
Keywords=Email;E-mail;Newsgroup;Messaging;
|
||||
X-MessagingMenu-UsesChatSection=true
|
||||
X-Ubuntu-Gettext-Domain=pybitmessage
|
||||
|
||||
Actions=Send;Subscribe;AddressBook;
|
||||
|
||||
[Desktop Action Send]
|
||||
Name=Send
|
||||
Exec=pybitmessage -s
|
||||
OnlyShowIn=Unity;
|
||||
|
||||
[Desktop Action Subscribe]
|
||||
Name=Subscribe
|
||||
Exec=pybitmessage -b
|
||||
OnlyShowIn=Unity;
|
||||
|
||||
[Desktop Action AddressBook]
|
||||
Name=Address Book
|
||||
Exec=pybitmessage -a
|
||||
OnlyShowIn=Unity;
|
||||
Categories=Office;Email;
|
||||
|
|
33
ebuild.sh
Executable file
33
ebuild.sh
Executable file
|
@ -0,0 +1,33 @@
|
|||
#!/bin/bash
|
||||
|
||||
APP=pybitmessage
|
||||
PREV_VERSION=0.3.4
|
||||
VERSION=0.3.4
|
||||
RELEASE=1
|
||||
SOURCEDIR=.
|
||||
ARCH_TYPE=`uname -m`
|
||||
CURRDIR=`pwd`
|
||||
SOURCE=~/ebuild/${APP}-${VERSION}.tar.gz
|
||||
|
||||
|
||||
# Update version numbers automatically - so you don't have to
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' Makefile debian.sh rpm.sh arch.sh puppy.sh slack.sh
|
||||
sed -i 's/Version: '${PREV_VERSION}'/Version: '${VERSION}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/Release: '${RELEASE}'/Release: '${RELEASE}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/pkgrel='${RELEASE}'/pkgrel='${RELEASE}'/g' archpackage/PKGBUILD
|
||||
sed -i 's/pkgver='${PREV_VERSION}'/pkgver='${VERSION}'/g' archpackage/PKGBUILD
|
||||
sed -i "s/-${PREV_VERSION}-/-${VERSION}-/g" puppypackage/*.specs
|
||||
sed -i "s/|${PREV_VERSION}|/|${VERSION}|/g" puppypackage/*.specs
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' puppypackage/pinstall.sh puppypackage/puninstall.sh
|
||||
sed -i 's/-'${PREV_VERSION}'.so/-'${VERSION}'.so/g' debian/*.links
|
||||
|
||||
# create the source code in the SOURCES directory
|
||||
make clean
|
||||
mkdir -p ~/ebuild
|
||||
rm -f ${SOURCE}
|
||||
mv ../${APP} ../${APP}-${VERSION}
|
||||
tar -cvzf ${SOURCE} ../${APP}-${VERSION} --exclude-vcs
|
||||
|
||||
# rename the root directory without the version number
|
||||
mv ../${APP}-${VERSION} ../${APP}
|
||||
|
22
ebuildpackage/pybitmessage-0.3.4-1.ebuild
Executable file
22
ebuildpackage/pybitmessage-0.3.4-1.ebuild
Executable file
|
@ -0,0 +1,22 @@
|
|||
# $Header: $
|
||||
|
||||
EAPI=4
|
||||
|
||||
DESCRIPTION="Bitmessage is a P2P communications protocol used to send encrypted messages to another person or to many subscribers. It is decentralized and trustless, meaning that you need-not inherently trust any entities like root certificate authorities. It uses strong authentication which means that the sender of a message cannot be spoofed, and it aims to hide "non-content" data, like the sender and receiver of messages, from passive eavesdroppers like those running warrantless wiretapping programs."
|
||||
HOMEPAGE="https://github.com/Bitmessage/PyBitmessage"
|
||||
SRC_URI="${PN}/${P}.tar.gz"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="x86"
|
||||
RDEPEND="dev-libs/popt"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
src_configure() {
|
||||
econf --with-popt
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
# Install README and (Debian) changelog
|
||||
dodoc README.md debian/changelog
|
||||
}
|
7
generate.sh
Executable file
7
generate.sh
Executable file
|
@ -0,0 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Generates packaging
|
||||
|
||||
rm -f Makefile rpmpackage/*.spec
|
||||
|
||||
packagemonkey -n "PyBitmessage" --version "0.3.4" --dir "." -l "mit" -e "Bob Mottram (4096 bits) <bob@robotics.uk.to>" --brief "Send encrypted messages" --desc "Bitmessage is a P2P communications protocol used to send encrypted messages to another person or to many subscribers. It is decentralized and trustless, meaning that you need-not inherently trust any entities like root certificate authorities. It uses strong authentication which means that the sender of a message cannot be spoofed, and it aims to hide \"non-content\" data, like the sender and receiver of messages, from passive eavesdroppers like those running warrantless wiretapping programs." --homepage "https://github.com/Bitmessage/PyBitmessage" --section "mail" --categories "Office/Email" --dependsdeb "python (>= 2.7.0), openssl, python-qt4, libqt4-dev (>= 4.8.0), python-qt4-dev, sqlite3, libsqlite3-dev" --dependsrpm "python, PyQt4, openssl-compat-bitcoin-libs" --mainscript "bitmessagemain.py" --librarypath "/opt/openssl-compat-bitcoin/lib/" --suggestsdeb "libmessaging-menu-dev" --dependspuppy "openssl, python-qt4, sqlite3, sqlite3-dev, python-openssl"
|
BIN
man/pybitmessage.1.gz
Normal file
BIN
man/pybitmessage.1.gz
Normal file
Binary file not shown.
66
puppy.sh
Executable file
66
puppy.sh
Executable file
|
@ -0,0 +1,66 @@
|
|||
#!/bin/bash
|
||||
|
||||
APP=pybitmessage
|
||||
PREV_VERSION=0.3.4
|
||||
VERSION=0.3.4
|
||||
RELEASE=1
|
||||
BUILDDIR=~/petbuild
|
||||
CURRDIR=`pwd`
|
||||
PROJECTDIR=${BUILDDIR}/${APP}-${VERSION}-${RELEASE}
|
||||
|
||||
# Update version numbers automatically - so you don't have to
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' Makefile debian.sh rpm.sh arch.sh ebuild.sh slack.sh
|
||||
sed -i 's/Version: '${PREV_VERSION}'/Version: '${VERSION}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/Release: '${RELEASE}'/Release: '${RELEASE}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/pkgrel='${RELEASE}'/pkgrel='${RELEASE}'/g' archpackage/PKGBUILD
|
||||
sed -i 's/pkgver='${PREV_VERSION}'/pkgver='${VERSION}'/g' archpackage/PKGBUILD
|
||||
sed -i "s/-${PREV_VERSION}-/-${VERSION}-/g" puppypackage/*.specs
|
||||
sed -i "s/|${PREV_VERSION}|/|${VERSION}|/g" puppypackage/*.specs
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' puppypackage/pinstall.sh puppypackage/puninstall.sh
|
||||
sed -i 's/-'${PREV_VERSION}'.so/-'${VERSION}'.so/g' debian/*.links
|
||||
|
||||
|
||||
# Make directories within which the project will be built
|
||||
mkdir -p ${BUILDDIR}
|
||||
mkdir -p ${PROJECTDIR}
|
||||
|
||||
# Build the project
|
||||
make clean
|
||||
make
|
||||
make install -B DESTDIR=${PROJECTDIR}
|
||||
|
||||
# Alter the desktop file categories
|
||||
sed -i "s/Categories=Office;Email;/Categories=Internet;mailnews;/g" ${PROJECTDIR}/usr/share/applications/${APP}.desktop
|
||||
|
||||
# Create directories specific to puppy
|
||||
mkdir ${PROJECTDIR}/usr
|
||||
mkdir ${PROJECTDIR}/usr/local
|
||||
mkdir ${PROJECTDIR}/usr/local/bin
|
||||
|
||||
# Copy anything in /usr/bin into /usr/local/bin
|
||||
cp ${PROJECTDIR}/usr/bin/* ${PROJECTDIR}/usr/local/bin/
|
||||
|
||||
# Copy the spec file into the build directory
|
||||
cp ${CURRDIR}/puppypackage/${APP}-${VERSION}.pet.specs ${PROJECTDIR}
|
||||
|
||||
# Copy the XPM mini icon into the build directory
|
||||
cp ${CURRDIR}//home/motters/develop/pybitmessage/desktop/icon14.xpm ${PROJECTDIR}/pybitmessage.xpm
|
||||
|
||||
# Compress the build directory
|
||||
cd ${BUILDDIR}
|
||||
tar -c -f ${APP}-${VERSION}-${RELEASE}.tar .
|
||||
sync
|
||||
gzip ${APP}-${VERSION}-${RELEASE}.tar
|
||||
mv ${APP}-${VERSION}-${RELEASE}.tar.gz ${CURRDIR}/puppypackage
|
||||
cd ${CURRDIR}/puppypackage
|
||||
|
||||
# Create the PET package
|
||||
MD5SUM="`md5sum ${APP}-${VERSION}-${RELEASE}.tar.gz | cut -f 1 -d ' '`"
|
||||
echo -n "$MD5SUM" >> ${APP}-${VERSION}-${RELEASE}.tar.gz
|
||||
sync
|
||||
mv -f ${APP}-${VERSION}-${RELEASE}.tar.gz ${APP}-${VERSION}-${RELEASE}.pet
|
||||
sync
|
||||
cd ${CURRDIR}
|
||||
|
||||
# Remove the temporary build directory
|
||||
rm -fr ${BUILDDIR}
|
111
puppypackage/icon14.xpm
Normal file
111
puppypackage/icon14.xpm
Normal file
|
@ -0,0 +1,111 @@
|
|||
/* XPM */
|
||||
static char * icon14_xpm[] = {
|
||||
"14 14 94 2",
|
||||
" c None",
|
||||
". c #B9BABC",
|
||||
"+ c #D2D3D4",
|
||||
"@ c #BEBFC1",
|
||||
"# c #CBCCCF",
|
||||
"$ c #E0E3E1",
|
||||
"% c #F6F8F8",
|
||||
"& c #F3F3F3",
|
||||
"* c #B9BABD",
|
||||
"= c #C8C9CB",
|
||||
"- c #DADCDB",
|
||||
"; c #E6E8E7",
|
||||
"> c #F7F7F7",
|
||||
", c #FCFCFC",
|
||||
"' c #F5F5F5",
|
||||
") c #BCBDBF",
|
||||
"! c #D3D5D5",
|
||||
"~ c #E3E5E4",
|
||||
"{ c #F1F2F2",
|
||||
"] c #FDFDFD",
|
||||
"^ c #F8F8F8",
|
||||
"/ c #CBCCCC",
|
||||
"( c #B2B3B6",
|
||||
"_ c #B0B1B3",
|
||||
": c #D3D4D6",
|
||||
"< c #DFE0E0",
|
||||
"[ c #EAEDEB",
|
||||
"} c #FAF9F9",
|
||||
"| c #DFE0DF",
|
||||
"1 c #B9BBBD",
|
||||
"2 c #C2C3C5",
|
||||
"3 c #B7B8BC",
|
||||
"4 c #CDCED0",
|
||||
"5 c #DCDDDE",
|
||||
"6 c #E7E9E7",
|
||||
"7 c #F6F6F6",
|
||||
"8 c #C0C1C2",
|
||||
"9 c #DDDFDF",
|
||||
"0 c #BCBCBF",
|
||||
"a c #D7D9DA",
|
||||
"b c #E2E4E3",
|
||||
"c c #F0F2F1",
|
||||
"d c #FAFAFA",
|
||||
"e c #F9F9F9",
|
||||
"f c #CCCDCD",
|
||||
"g c #B6B7B9",
|
||||
"h c #C7C8CA",
|
||||
"i c #A6A7A9",
|
||||
"j c #D3D4D5",
|
||||
"k c #F2F5F3",
|
||||
"l c #F1F2F1",
|
||||
"m c #F6F8F7",
|
||||
"n c #FCFBFC",
|
||||
"o c #E8EAE9",
|
||||
"p c #B6B7B8",
|
||||
"q c #BFC0C2",
|
||||
"r c #323138",
|
||||
"s c #1D1D22",
|
||||
"t c #111117",
|
||||
"u c #4C4C51",
|
||||
"v c #ECECED",
|
||||
"w c #FFFFFF",
|
||||
"x c #BBBDBD",
|
||||
"y c #C9CACB",
|
||||
"z c #333238",
|
||||
"A c #313036",
|
||||
"B c #27272C",
|
||||
"C c #1E1F24",
|
||||
"D c #16171D",
|
||||
"E c #919193",
|
||||
"F c #F2F3F3",
|
||||
"G c #B4B5B7",
|
||||
"H c #CDCFCF",
|
||||
"I c #67666B",
|
||||
"J c #37363C",
|
||||
"K c #2C2B31",
|
||||
"L c #2A292F",
|
||||
"M c #16171C",
|
||||
"N c #68696B",
|
||||
"O c #C7C8C9",
|
||||
"P c #CBCDCC",
|
||||
"Q c #49474E",
|
||||
"R c #39383E",
|
||||
"S c #36353B",
|
||||
"T c #333138",
|
||||
"U c #28272D",
|
||||
"V c #CED0D0",
|
||||
"W c #67676C",
|
||||
"X c #414046",
|
||||
"Y c #424147",
|
||||
"Z c #39383F",
|
||||
"` c #8C8D8F",
|
||||
" . c #6B6C70",
|
||||
".. c #75757A",
|
||||
" . + ",
|
||||
" @ # $ % & ",
|
||||
" * = - ; > , ' ",
|
||||
" ) ! ~ { ] ^ / ( ",
|
||||
" _ : < [ } , | 1 2 ",
|
||||
" 3 4 5 6 7 , { 8 . 9 ",
|
||||
" 2 0 a b c d e f g h ",
|
||||
" i j k l m n o p q h ",
|
||||
" r s t u v w ' x g y ",
|
||||
" z A B C D E F G H ",
|
||||
" I J A K L M N O P ",
|
||||
" Q R R S T U V ",
|
||||
" W X Y X Z ` ",
|
||||
" ... "};
|
1
puppypackage/pybitmessage-0.3.4.pet.specs
Normal file
1
puppypackage/pybitmessage-0.3.4.pet.specs
Normal file
|
@ -0,0 +1 @@
|
|||
pybitmessage-0.3.4-1|PyBitmessage|0.3.4|1|Internet;mailnews;|3.9M||pybitmessage-0.3.4-1.pet||Send encrypted messages|ubuntu|precise|5|
|
53
rpm.sh
Executable file
53
rpm.sh
Executable file
|
@ -0,0 +1,53 @@
|
|||
#!/bin/bash
|
||||
|
||||
APP=pybitmessage
|
||||
PREV_VERSION=0.3.4
|
||||
VERSION=0.3.4
|
||||
RELEASE=1
|
||||
SOURCEDIR=.
|
||||
ARCH_TYPE=`uname -m`
|
||||
CURRDIR=`pwd`
|
||||
SOURCE=~/rpmbuild/SOURCES/${APP}_${VERSION}.orig.tar.gz
|
||||
|
||||
|
||||
# Update version numbers automatically - so you don't have to
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' Makefile debian.sh arch.sh puppy.sh ebuild.sh slack.sh
|
||||
sed -i 's/Version: '${PREV_VERSION}'/Version: '${VERSION}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/Release: '${RELEASE}'/Release: '${RELEASE}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/pkgrel='${RELEASE}'/pkgrel='${RELEASE}'/g' archpackage/PKGBUILD
|
||||
sed -i 's/pkgver='${PREV_VERSION}'/pkgver='${VERSION}'/g' archpackage/PKGBUILD
|
||||
sed -i "s/-${PREV_VERSION}-/-${VERSION}-/g" puppypackage/*.specs
|
||||
sed -i "s/|${PREV_VERSION}|/|${VERSION}|/g" puppypackage/*.specs
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' puppypackage/pinstall.sh puppypackage/puninstall.sh
|
||||
sed -i 's/-'${PREV_VERSION}'.so/-'${VERSION}'.so/g' debian/*.links
|
||||
|
||||
sudo yum groupinstall "Development Tools"
|
||||
sudo yum install rpmdevtools
|
||||
|
||||
# setup the rpmbuild directory tree
|
||||
rpmdev-setuptree
|
||||
|
||||
# create the source code in the SOURCES directory
|
||||
make clean
|
||||
mkdir -p ~/rpmbuild/SOURCES
|
||||
rm -f ${SOURCE}
|
||||
|
||||
# having the root directory called name-version seems essential
|
||||
mv ../${APP} ../${APP}-${VERSION}
|
||||
tar -cvzf ${SOURCE} ../${APP}-${VERSION} --exclude-vcs
|
||||
|
||||
# rename the root directory without the version number
|
||||
mv ../${APP}-${VERSION} ../${APP}
|
||||
|
||||
# copy the spec file into the SPECS directory
|
||||
cp -f rpmpackage/${APP}.spec ~/rpmbuild/SPECS
|
||||
|
||||
# build
|
||||
cd ~/rpmbuild/SPECS
|
||||
rpmbuild -ba ${APP}.spec
|
||||
cd ${CURRDIR}
|
||||
|
||||
# Copy the results into the rpmpackage directory
|
||||
mkdir -p rpmpackage/${ARCH_TYPE}
|
||||
cp -r ~/rpmbuild/RPMS/${ARCH_TYPE}/${APP}* rpmpackage/${ARCH_TYPE}
|
||||
cp -r ~/rpmbuild/SRPMS/${APP}* rpmpackage
|
207
rpmpackage/pybitmessage.spec
Normal file
207
rpmpackage/pybitmessage.spec
Normal file
|
@ -0,0 +1,207 @@
|
|||
Name: pybitmessage
|
||||
Version: 0.3.4
|
||||
Release: 1%{?dist}
|
||||
Summary: Send encrypted messages
|
||||
License: MIT
|
||||
URL: https://github.com/Bitmessage/PyBitmessage
|
||||
Packager: Bob Mottram (4096 bits) <bob@robotics.uk.to>
|
||||
Source0: http://yourdomainname.com/src/%{name}_%{version}.orig.tar.gz
|
||||
Group: Office/Email
|
||||
|
||||
Requires: python, PyQt4, openssl-compat-bitcoin-libs
|
||||
|
||||
|
||||
%description
|
||||
Bitmessage is a P2P communications protocol used to send encrypted messages
|
||||
to another person or to many subscribers. It is decentralized and
|
||||
trustless, meaning that you need-not inherently trust any entities like
|
||||
root certificate authorities. It uses strong authentication which means
|
||||
that the sender of a message cannot be spoofed, and it aims to hide
|
||||
"non-content" data, like the sender and receiver of messages, from passive
|
||||
eavesdroppers like those running warrantless wiretapping programs.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%build
|
||||
%configure
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
mkdir -p %{buildroot}
|
||||
mkdir -p %{buildroot}/etc
|
||||
mkdir -p %{buildroot}/etc/%{name}
|
||||
mkdir -p %{buildroot}/usr
|
||||
mkdir -p %{buildroot}/usr/bin
|
||||
mkdir -p %{buildroot}/usr/share
|
||||
mkdir -p %{buildroot}/usr/share/man
|
||||
mkdir -p %{buildroot}/usr/share/man/man1
|
||||
mkdir -p %{buildroot}/usr/share/%{name}
|
||||
mkdir -p %{buildroot}/usr/share/applications
|
||||
mkdir -p %{buildroot}/usr/share/icons
|
||||
mkdir -p %{buildroot}/usr/share/icons/hicolor
|
||||
mkdir -p %{buildroot}/usr/share/icons/hicolor/24x24
|
||||
mkdir -p %{buildroot}/usr/share/icons/hicolor/24x24/apps
|
||||
|
||||
mkdir -p %{buildroot}/usr/share/pixmaps
|
||||
mkdir -p %{buildroot}/usr/share/icons/hicolor/scalable
|
||||
mkdir -p %{buildroot}/usr/share/icons/hicolor/scalable/apps
|
||||
# Make install but to the RPM BUILDROOT directory
|
||||
make install -B DESTDIR=%{buildroot}
|
||||
|
||||
%files
|
||||
%doc README.md LICENSE
|
||||
%defattr(-,root,root,-)
|
||||
%dir /usr/share/%{name}
|
||||
%dir /usr/share/applications
|
||||
%dir /usr/share/icons/hicolor
|
||||
%dir /usr/share/icons/hicolor/24x24
|
||||
%dir /usr/share/icons/hicolor/24x24/apps
|
||||
%dir /usr/share/pixmaps
|
||||
%dir /usr/share/icons/hicolor/scalable
|
||||
%dir /usr/share/icons/hicolor/scalable/apps
|
||||
/usr/share/%{name}/*
|
||||
%{_bindir}/*
|
||||
%{_mandir}/man1/*
|
||||
%attr(644,root,root) /usr/share/applications/%{name}.desktop
|
||||
%attr(644,root,root) /usr/share/icons/hicolor/24x24/apps/%{name}.png
|
||||
|
||||
%changelog
|
||||
* Sun Jun 30 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.4-1
|
||||
- Switched addr, msg, broadcast, and getpubkey message types
|
||||
to 8 byte time. Last remaining type is pubkey.
|
||||
- Added tooltips to show the full subject of messages
|
||||
- Added Maximum Acceptable Difficulty fields in the settings
|
||||
- Send out pubkey immediately after generating deterministic
|
||||
addresses rather than waiting for a request
|
||||
|
||||
* Sat Jun 29 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.3-1
|
||||
- Remove inbox item from GUI when using API command trashMessage
|
||||
- Add missing trailing semicolons to pybitmessage.desktop
|
||||
- Ensure $(DESTDIR)/usr/bin exists
|
||||
- Update Makefile to correct sandbox violations when built
|
||||
via Portage (Gentoo)
|
||||
- Fix message authentication bug
|
||||
|
||||
* Fri Jun 28 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.211-1
|
||||
- Removed multi-core proof of work
|
||||
as the multiprocessing module does not work well with
|
||||
pyinstaller's --onefile option.
|
||||
|
||||
* Mon Jun 03 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.2-1
|
||||
- Bugfix: Remove remaining references to the old myapp.trayIcon
|
||||
- Refactored message status-related code. API function getStatus
|
||||
now returns one of these strings: notfound, msgqueued,
|
||||
broadcastqueued, broadcastsent, doingpubkeypow, awaitingpubkey,
|
||||
doingmsgpow, msgsent, or ackreceived
|
||||
- Moved proof of work to low-priority multi-threaded child
|
||||
processes
|
||||
- Added menu option to delete all trashed messages
|
||||
- Added inv flooding attack mitigation
|
||||
- On Linux, when selecting Show Bitmessage, do not maximize
|
||||
automatically
|
||||
- Store tray icons in bitmessage_icons_rc.py
|
||||
|
||||
* Sat May 25 2013 Jonathan Warren (4096 bits) <jonathan@bitmessage.org> - 0.3.1-1
|
||||
- Added new API commands: getDeterministicAddress,
|
||||
addSubscription, deleteSubscription
|
||||
- TCP Connection timeout for non-fully-established connections
|
||||
now 20 seconds
|
||||
- Don't update the time we last communicated with a node unless
|
||||
the connection is fully established. This will allow us to
|
||||
forget about active but non-Bitmessage nodes which have made
|
||||
it into our knownNodes file.
|
||||
- Prevent incoming connection flooding from crashing
|
||||
singleListener thread. Client will now only accept one
|
||||
connection per remote node IP
|
||||
- Bugfix: Worker thread crashed when doing a POW to send out
|
||||
a v2 pubkey (bug introduced in 0.3.0)
|
||||
- Wrap all sock.shutdown functions in error handlers
|
||||
- Put all 'commit' commands within SQLLocks
|
||||
- Bugfix: If address book label is blank, Bitmessage wouldn't
|
||||
show message (bug introduced in 0.3.0)
|
||||
- Messaging menu item selects the oldest unread message
|
||||
- Standardize on 'Quit' rather than 'Exit'
|
||||
- [OSX] Try to seek homebrew installation of OpenSSL
|
||||
- Prevent multiple instances of the application from running
|
||||
- Show 'Connected' or 'Connection Lost' indicators
|
||||
- Use only 9 half-open connections on Windows but 32 for
|
||||
everyone else
|
||||
- Added appIndicator (a more functional tray icon) and Ubuntu
|
||||
Messaging Menu integration
|
||||
- Changed Debian install directory and run script name based
|
||||
on Github issue #135
|
||||
|
||||
* Tue May 6 2013 Bob Mottram (4096 bits) <bob@sluggish.dyndns.org> - 0.3.0-1
|
||||
- Added new API function: getStatus
|
||||
- Added error-handling around all sock.sendall() functions
|
||||
in the receiveData thread so that if there is a problem
|
||||
sending data, the threads will close gracefully
|
||||
- Abandoned and removed the connectionsCount data structure;
|
||||
use the connectedHostsList instead because it has proved to be
|
||||
more accurate than trying to maintain the connectionsCount
|
||||
- Added daemon mode. All UI code moved into a module and many
|
||||
shared objects moved into shared.py
|
||||
- Truncate display of very long messages to avoid freezing the UI
|
||||
- Added encrypted broadcasts for v3 addresses or v2 addresses
|
||||
after 2013-05-28 10:00 UTC
|
||||
- No longer self.sock.close() from within receiveDataThreads,
|
||||
let the sendDataThreads do it
|
||||
- Swapped out the v2 announcements subscription address for a v3
|
||||
announcements subscription address
|
||||
- Vacuum the messages.dat file once a month: will greatly reduce the file size
|
||||
- Added a settings table in message.dat
|
||||
- Implemented v3 addresses:
|
||||
pubkey messages must now include two var_ints: nonce_trials_per_byte
|
||||
and extra_bytes, and also be signed. When sending a message to a v3
|
||||
address, the sender must use these values in calculating its POW or
|
||||
else the message will not be accepted by the receiver.
|
||||
- Display a privacy warning when selecting 'Send Broadcast from this address'
|
||||
- Added gitignore file
|
||||
- Added code in preparation for a switch from 32-bit time to 64-bit time.
|
||||
Nodes will now advertise themselves as using protocol version 2.
|
||||
- Don't necessarily delete entries from the inventory after 2.5 days;
|
||||
leave pubkeys there for 28 days so that we don't process the same ones
|
||||
many times throughout a month. This was causing the 'pubkeys processed'
|
||||
indicator on the 'Network Status' tab to not accurately reflect the
|
||||
number of truly new addresses on the network.
|
||||
- Use 32 threads for outgoing connections in order to connect quickly
|
||||
- Fix typo when calling os.environ in the sys.platform=='darwin' case
|
||||
- Allow the cancelling of a message which is in the process of being
|
||||
sent by trashing it then restarting Bitmessage
|
||||
- Bug fix: can't delete address from address book
|
||||
|
||||
* Tue Apr 9 2013 Bob Mottram (4096 bits) <bob@sluggish.dyndns.org> - 0.2.8-1
|
||||
- Fixed Ubuntu & OS X issue:
|
||||
Bitmessage wouldn't receive any objects from peers after restart.
|
||||
- Inventory flush to disk when exiting program now vastly faster.
|
||||
- Fixed address generation bug (kept Bitmessage from restarting).
|
||||
- Improve deserialization of messages
|
||||
before processing (a 'best practice').
|
||||
- Change to help Macs find OpenSSL the way Unix systems find it.
|
||||
- Do not share or accept IPs which are in the private IP ranges.
|
||||
- Added time-fuzzing
|
||||
to the embedded time in pubkey and getpubkey messages.
|
||||
- Added a knownNodes lock
|
||||
to prevent an exception from sometimes occurring when saving
|
||||
the data-structure to disk.
|
||||
- Show unread messages in bold
|
||||
and do not display new messages automatically.
|
||||
- Support selecting multiple items
|
||||
in the inbox, sent box, and address book.
|
||||
- Use delete key to trash Inbox or Sent messages.
|
||||
- Display richtext(HTML) messages
|
||||
from senders in address book or subscriptions (although not
|
||||
pseudo-mailing-lists; use new right-click option).
|
||||
- Trim spaces
|
||||
from the beginning and end of addresses when adding to
|
||||
address book, subscriptions, and blacklist.
|
||||
- Improved the display of the time for foreign language users.
|
||||
|
||||
* Tue Apr 1 2013 Bob Mottram (4096 bits) <bob@sluggish.dyndns.org> - 0.2.7-1
|
||||
- Added debian packaging
|
||||
- Script to generate debian packages
|
||||
- SVG icon for Gnome shell, etc
|
||||
- Source moved int src directory for debian standards compatibility
|
||||
- Trailing carriage return on COPYING LICENSE and README.md
|
48
slack.sh
Executable file
48
slack.sh
Executable file
|
@ -0,0 +1,48 @@
|
|||
#!/bin/bash
|
||||
|
||||
APP=pybitmessage
|
||||
PREV_VERSION=0.3.4
|
||||
VERSION=0.3.4
|
||||
RELEASE=1
|
||||
ARCH_TYPE=`uname -m`
|
||||
BUILDDIR=~/slackbuild
|
||||
CURRDIR=`pwd`
|
||||
PROJECTDIR=${BUILDDIR}/${APP}-${VERSION}-${RELEASE}
|
||||
|
||||
# Update version numbers automatically - so you don't have to
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' Makefile debian.sh rpm.sh arch.sh puppy.sh ebuild.sh
|
||||
sed -i 's/Version: '${PREV_VERSION}'/Version: '${VERSION}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/Release: '${RELEASE}'/Release: '${RELEASE}'/g' rpmpackage/${APP}.spec
|
||||
sed -i 's/pkgrel='${RELEASE}'/pkgrel='${RELEASE}'/g' archpackage/PKGBUILD
|
||||
sed -i 's/pkgver='${PREV_VERSION}'/pkgver='${VERSION}'/g' archpackage/PKGBUILD
|
||||
sed -i "s/-${PREV_VERSION}-/-${VERSION}-/g" puppypackage/*.specs
|
||||
sed -i "s/|${PREV_VERSION}|/|${VERSION}|/g" puppypackage/*.specs
|
||||
sed -i 's/VERSION='${PREV_VERSION}'/VERSION='${VERSION}'/g' puppypackage/pinstall.sh puppypackage/puninstall.sh
|
||||
sed -i 's/-'${PREV_VERSION}'.so/-'${VERSION}'.so/g' debian/*.links
|
||||
|
||||
|
||||
# Make directories within which the project will be built
|
||||
mkdir -p ${BUILDDIR}
|
||||
mkdir -p ${PROJECTDIR}
|
||||
|
||||
# Build the project
|
||||
make clean
|
||||
make
|
||||
make install -B DESTDIR=${PROJECTDIR}
|
||||
|
||||
# Copy the slack-desc and doinst.sh files into the build install directory
|
||||
mkdir ${PROJECTDIR}/install
|
||||
cp ${CURRDIR}/slackpackage/slack-desc ${PROJECTDIR}/install
|
||||
cp ${CURRDIR}/slackpackage/doinst.sh ${PROJECTDIR}/install
|
||||
|
||||
# Compress the build directory
|
||||
cd ${BUILDDIR}
|
||||
tar -c -f ${APP}-${VERSION}-${RELEASE}.tar .
|
||||
sync
|
||||
xz ${APP}-${VERSION}-${RELEASE}.tar
|
||||
sync
|
||||
mv ${APP}-${VERSION}-${RELEASE}.tar.xz ${CURRDIR}/slackpackage/${APP}-${VERSION}-${ARCH_TYPE}-${RELEASE}.txz
|
||||
cd ${CURRDIR}
|
||||
|
||||
# Remove the temporary build directory
|
||||
rm -fr ${BUILDDIR}
|
4
slackpackage/doinst.sh
Executable file
4
slackpackage/doinst.sh
Executable file
|
@ -0,0 +1,4 @@
|
|||
#!/bin/sh -e
|
||||
|
||||
# This script is run after installation.
|
||||
# Any additional configuration goes here.
|
19
slackpackage/slack-desc
Normal file
19
slackpackage/slack-desc
Normal file
|
@ -0,0 +1,19 @@
|
|||
# HOW TO EDIT THIS FILE:
|
||||
# The "handy ruler" below makes it easier to edit a package description. Line
|
||||
# up the first '|' above the ':' following the base package name, and the '|' on
|
||||
# the right side marks the last column you can put a character in. You must make
|
||||
# exactly 11 lines for the formatting to be correct. It's also customary to
|
||||
# leave one space after the ':'.
|
||||
|
||||
|-----handy-ruler--------------------------------------------------|
|
||||
pybitmessage: pybitmessage (Send encrypted messages)
|
||||
pybitmessage:
|
||||
pybitmessage: Bitmessage is a P2P communications protocol used to send
|
||||
pybitmessage: encrypted messages to another person or to many subscribers. It
|
||||
pybitmessage: is decentralized and trustless, meaning that you need-not
|
||||
pybitmessage: inherently trust any entities like root certificate authorities.
|
||||
pybitmessage: It uses strong authentication which means that the sender of a
|
||||
pybitmessage: message cannot be spoofed, and it aims to hide "non-content"
|
||||
pybitmessage: data, like the sender and receiver of messages, from passive
|
||||
pybitmessage: eavesdroppers like those running warrantless wiretapping
|
||||
pybitmessage: programs.
|
Reference in New Issue
Block a user