Improving the Ebuild

This commit is contained in:
Bob Mottram 2013-07-23 16:04:44 +01:00
parent cfc23718ed
commit 2af86c8296
10 changed files with 53 additions and 40 deletions

View File

@ -2,6 +2,7 @@ APP=pybitmessage
VERSION=0.3.4 VERSION=0.3.4
RELEASE=1 RELEASE=1
ARCH_TYPE=`uname -m` ARCH_TYPE=`uname -m`
PREFIX?=/usr/local
all: all:
debug: debug:
@ -9,34 +10,35 @@ source:
tar -cvzf ../${APP}_${VERSION}.orig.tar.gz ../${APP}-${VERSION} --exclude-vcs tar -cvzf ../${APP}_${VERSION}.orig.tar.gz ../${APP}-${VERSION} --exclude-vcs
install: install:
mkdir -p ${DESTDIR}/usr mkdir -p ${DESTDIR}/usr
mkdir -p ${DESTDIR}/usr/bin mkdir -p ${DESTDIR}${PREFIX}
mkdir -m 755 -p ${DESTDIR}/usr/share mkdir -p ${DESTDIR}${PREFIX}/bin
mkdir -m 755 -p ${DESTDIR}/usr/share/man mkdir -m 755 -p ${DESTDIR}${PREFIX}/share
mkdir -m 755 -p ${DESTDIR}/usr/share/man/man1 mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/man
install -m 644 man/${APP}.1.gz ${DESTDIR}/usr/share/man/man1 mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/man/man1
mkdir -m 755 -p ${DESTDIR}/usr/share/${APP} install -m 644 man/${APP}.1.gz ${DESTDIR}${PREFIX}/share/man/man1
mkdir -m 755 -p ${DESTDIR}/usr/share/applications mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/${APP}
mkdir -m 755 -p ${DESTDIR}/usr/share/pixmaps mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/applications
mkdir -m 755 -p ${DESTDIR}/usr/share/icons mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/pixmaps
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/icons
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor/scalable mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/icons/hicolor
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor/scalable/apps mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/icons/hicolor/scalable
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor/24x24 mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/apps
mkdir -m 755 -p ${DESTDIR}/usr/share/icons/hicolor/24x24/apps mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/icons/hicolor/24x24
install -m 644 desktop/${APP}.desktop ${DESTDIR}/usr/share/applications/${APP}.desktop mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/icons/hicolor/24x24/apps
install -m 644 desktop/icon24.png ${DESTDIR}/usr/share/icons/hicolor/24x24/apps/${APP}.png install -m 644 desktop/${APP}.desktop ${DESTDIR}${PREFIX}/share/applications/${APP}.desktop
cp -rf src/* ${DESTDIR}/usr/share/${APP} install -m 644 desktop/icon24.png ${DESTDIR}${PREFIX}/share/icons/hicolor/24x24/apps/${APP}.png
echo '#!/bin/sh' > ${DESTDIR}/usr/bin/${APP} cp -rf src/* ${DESTDIR}${PREFIX}/share/${APP}
echo 'cd /usr/share/pybitmessage' >> ${DESTDIR}/usr/bin/${APP} echo '#!/bin/sh' > ${DESTDIR}${PREFIX}/bin/${APP}
echo 'LD_LIBRARY_PATH="/opt/openssl-compat-bitcoin/lib/" exec python2 bitmessagemain.py' >> ${DESTDIR}/usr/bin/${APP} echo 'cd ${PREFIX}/share/pybitmessage' >> ${DESTDIR}${PREFIX}/bin/${APP}
chmod +x ${DESTDIR}/usr/bin/${APP} echo 'LD_LIBRARY_PATH="/opt/openssl-compat-bitcoin/lib/" exec python2 bitmessagemain.py' >> ${DESTDIR}${PREFIX}/bin/${APP}
chmod +x ${DESTDIR}${PREFIX}/bin/${APP}
uninstall: uninstall:
rm -f /usr/share/man/man1/${APP}.1.gz rm -f ${PREFIX}/share/man/man1/${APP}.1.gz
rm -rf /usr/share/${APP} rm -rf ${PREFIX}/share/${APP}
rm -f /usr/bin/${APP} rm -f ${PREFIX}/bin/${APP}
rm -f /usr/share/applications/${APP}.desktop rm -f ${PREFIX}/share/applications/${APP}.desktop
rm -f /usr/share/icons/hicolor/scalable/apps/${APP}.svg rm -f ${PREFIX}/share/icons/hicolor/scalable/apps/${APP}.svg
/usr/share/pixmaps/${APP}.svg ${PREFIX}/share/pixmaps/${APP}.svg
clean: clean:
rm -f ${APP} \#* \.#* gnuplot* *.png debian/*.substvars debian/*.log rm -f ${APP} \#* \.#* gnuplot* *.png debian/*.substvars debian/*.log
rm -fr deb.* debian/${APP} rpmpackage/${ARCH_TYPE} rm -fr deb.* debian/${APP} rpmpackage/${ARCH_TYPE}

View File

@ -27,5 +27,5 @@ build() {
} }
package() { package() {
cd "$srcdir/$pkgname-$pkgver" cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir/" install make DESTDIR="$pkgdir/" PREFIX="/usr" install
} }

2
debian/control vendored
View File

@ -4,7 +4,7 @@ Maintainer: Bob Mottram (4096 bits) <bob@robotics.uk.to>
Build-Depends: debhelper (>= 9.0.0) Build-Depends: debhelper (>= 9.0.0)
Standards-Version: 3.9.4 Standards-Version: 3.9.4
Homepage: https://github.com/Bitmessage/PyBitmessage Homepage: https://github.com/Bitmessage/PyBitmessage
Vcs-Git: https://github.com/fuzzgun/fin.git Vcs-Git: https://github.com/fuzzgun/packagemonkey.git
Package: pybitmessage Package: pybitmessage
Section: mail Section: mail

3
debian/rules vendored
View File

@ -1,6 +1,7 @@
#!/usr/bin/make -f #!/usr/bin/make -f
APP=pybitmessage APP=pybitmessage
PREFIX=/usr
build: build-stamp build: build-stamp
make make
build-arch: build-stamp build-arch: build-stamp
@ -20,7 +21,7 @@ install: build clean
dh_testroot dh_testroot
dh_prep dh_prep
dh_installdirs dh_installdirs
${MAKE} install -B DESTDIR=${CURDIR}/debian/${APP} ${MAKE} install -B DESTDIR=${CURDIR}/debian/${APP} PREFIX=/usr
binary-indep: build install binary-indep: build install
dh_testdir dh_testdir
dh_testroot dh_testroot

View File

@ -1,22 +1,32 @@
# $Header: $ # $Header: $
EAPI=4 EAPI=5
inherit git-2 python-r1
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE="sqlite"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
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." 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" HOMEPAGE="https://github.com/Bitmessage/PyBitmessage"
SRC_URI="${PN}/${P}.tar.gz" EGIT_REPO_URI="https://github.com/fuzzgun/packagemonkey.git"
LICENSE="MIT" LICENSE="MIT"
SLOT="0" SLOT="0"
KEYWORDS="x86" KEYWORDS="x86"
RDEPEND="dev-libs/popt" DEPEND="dev-libs/popt
DEPEND="${RDEPEND}" ${PYTHON_DEPS}"
RDEPEND="${DEPEND}
dev-libs/openssl
dev-python/PyQt4[]"
src_configure() { src_configure() {
econf --with-popt econf --with-popt
} }
src_compile() { :; }
src_install() { src_install() {
emake DESTDIR="${D}" install emake DESTDIR="${D}" PREFIX="/usr" install
# Install README and (Debian) changelog # Install README and (Debian) changelog
dodoc README.md debian/changelog dodoc README.md debian/changelog
} }

View File

@ -4,4 +4,4 @@
rm -f Makefile rpmpackage/*.spec 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, gst123" --dependsrpm "python, PyQt4, openssl-compat-bitcoin-libs, gst123" --mainscript "bitmessagemain.py" --librarypath "/opt/openssl-compat-bitcoin/lib/" --suggestsdeb "libmessaging-menu-dev" --dependspuppy "openssl, python-qt4, sqlite3, sqlite3-dev, python-openssl, python-sip, gst123" --dependsarch "python2, qt4, python2-pyqt4, sqlite, openssl, gst123" --suggestsarch "python2-gevent" --pythonversion 2 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, gst123" --dependsrpm "python, PyQt4, openssl-compat-bitcoin-libs, gst123" --mainscript "bitmessagemain.py" --librarypath "/opt/openssl-compat-bitcoin/lib/" --suggestsdeb "libmessaging-menu-dev" --dependspuppy "openssl, python-qt4, sqlite3, sqlite3-dev, python-openssl, python-sip, gst123" --dependsarch "python2, qt4, python2-pyqt4, sqlite, openssl, gst123" --suggestsarch "python2-gevent" --pythonversion 2 --dependsebuild "dev-libs/openssl, dev-python/PyQt4[${PYTHON_USEDEP}]" --buildebuild "\${PYTHON_DEPS}" --pythonreq "sqlite"

View File

@ -27,7 +27,7 @@ mkdir -p ${PROJECTDIR}
# Build the project # Build the project
make clean make clean
make make
make install -B DESTDIR=${PROJECTDIR} make install -B DESTDIR=${PROJECTDIR} PREFIX=/usr
# Alter the desktop file categories # Alter the desktop file categories
sed -i "s/Categories=Office;Email;/Categories=Internet;mailnews;/g" ${PROJECTDIR}/usr/share/applications/${APP}.desktop sed -i "s/Categories=Office;Email;/Categories=Internet;mailnews;/g" ${PROJECTDIR}/usr/share/applications/${APP}.desktop

View File

@ -1 +1 @@
pybitmessage-0.3.4-1|PyBitmessage|0.3.4|1|Internet;mailnews;|5.3M||pybitmessage-0.3.4-1.pet|+openssl,+python-qt4,+sqlite3,+sqlite3-dev,+python-openssl,+python-sip,+gst123|Send encrypted messages|ubuntu|precise|5| pybitmessage-0.3.4-1|PyBitmessage|0.3.4|1|Internet;mailnews;|3.9M||pybitmessage-0.3.4-1.pet|+openssl,+python-qt4,+sqlite3,+sqlite3-dev,+python-openssl,+python-sip,+gst123|Send encrypted messages|ubuntu|precise|5|

View File

@ -48,7 +48,7 @@ mkdir -p %{buildroot}/usr/share/pixmaps
mkdir -p %{buildroot}/usr/share/icons/hicolor/scalable mkdir -p %{buildroot}/usr/share/icons/hicolor/scalable
mkdir -p %{buildroot}/usr/share/icons/hicolor/scalable/apps mkdir -p %{buildroot}/usr/share/icons/hicolor/scalable/apps
# Make install but to the RPM BUILDROOT directory # Make install but to the RPM BUILDROOT directory
make install -B DESTDIR=%{buildroot} make install -B DESTDIR=%{buildroot} PREFIX=/usr
%files %files
%doc README.md LICENSE %doc README.md LICENSE

View File

@ -28,7 +28,7 @@ mkdir -p ${PROJECTDIR}
# Build the project # Build the project
make clean make clean
make make
make install -B DESTDIR=${PROJECTDIR} make install -B DESTDIR=${PROJECTDIR} PREFIX=/usr
# Copy the slack-desc and doinst.sh files into the build install directory # Copy the slack-desc and doinst.sh files into the build install directory
mkdir ${PROJECTDIR}/install mkdir ${PROJECTDIR}/install