From b8c2ff27c47dabb1116549703c543c4a0648b804 Mon Sep 17 00:00:00 2001 From: Bumsik Kim Date: Tue, 22 May 2018 21:26:17 -0400 Subject: [PATCH] Experimental Debian building system --- Makefile | 22 ++++++++++++++++++++-- package/debian/Dockerfile | 16 ++++++++++++++++ package/debian/debmake.sh | 19 +++++++++++++++++++ package/debian/debuild.sh | 11 +++++++++++ 4 files changed, 66 insertions(+), 2 deletions(-) create mode 100644 package/debian/Dockerfile create mode 100755 package/debian/debmake.sh create mode 100755 package/debian/debuild.sh diff --git a/Makefile b/Makefile index ab718e4..f1d6eb7 100644 --- a/Makefile +++ b/Makefile @@ -14,6 +14,24 @@ pip-upload: python-wheel .ONESHELL: +# For Debian packaging, https://www.debian.org/doc/manuals/debmake-doc/ch08.en.html#setup-py +deb-docker-build: + docker build -f package/debian/Dockerfile -t debmake . + +deb-docker: + docker run --privileged --interactive --tty -v $(shell pwd)/package/debian:/app debmake /bin/bash + +deb-docker-rm: + docker image rm -f debmake + +deb-make: + docker run --privileged --interactive --tty --rm -v $(shell pwd)/package/debian:/app debmake /app/debmake.sh + +deb-build: + docker run --privileged --interactive --tty --rm -v $(shell pwd)/package/debian:/app debmake /app/debuild.sh + +deb-clean: + rm -rf package/debian/build # For AUR: https://wiki.archlinux.org/index.php/Python_package_guidelines # and: https://wiki.archlinux.org/index.php/Creating_packages @@ -44,5 +62,5 @@ arch-clean: launch: ./launch.sh -clean: arch-clean - rm -rf build dist virtscreen.egg-info +clean: arch-clean deb-clean + rm -rf build dist virtscreen.egg-info virtscreen/qml/*.qmlc diff --git a/package/debian/Dockerfile b/package/debian/Dockerfile new file mode 100644 index 0000000..bae623f --- /dev/null +++ b/package/debian/Dockerfile @@ -0,0 +1,16 @@ +# Or bionic +FROM ubuntu:latest +LABEL author="Bumsik Kim " + +WORKDIR /app +CMD ["/bin/bash"] + +RUN apt-get update && \ + apt-get install -y python3-all python3-pip fakeroot debmake debhelper fakeroot wget tar && \ + apt-get autoremove -y && \ + ln /usr/bin/python3 /usr/bin/python && \ + ln /usr/bin/pip3 /usr/bin/pip && \ + rm -rf /var/cache/apt/archives/*.deb && \ + useradd -c Builder -m -U builder + +USER builder diff --git a/package/debian/debmake.sh b/package/debian/debmake.sh new file mode 100755 index 0000000..17ab191 --- /dev/null +++ b/package/debian/debmake.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +PKGVER=0.1.2 +# Required for debmake +DEBEMAIL="k.bumsik@gmail.com" +DEBFULLNAME="Bumsik Kim" +export DEBEMAIL DEBFULLNAME + +mkdir build +cd build +# Download +wget https://github.com/kbumsik/VirtScreen/archive/$PKGVER.tar.gz +tar -xzmf $PKGVER.tar.gz +# rename packages +mv VirtScreen-$PKGVER virtscreen-$PKGVER +mv $PKGVER.tar.gz virtscreen-$PKGVER.tar.gz + +cd virtscreen-$PKGVER +debmake -b':py3' diff --git a/package/debian/debuild.sh b/package/debian/debuild.sh new file mode 100755 index 0000000..c33d84e --- /dev/null +++ b/package/debian/debuild.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +PKGVER=0.1.2 +# Required for debmake +DEBEMAIL="k.bumsik@gmail.com" +DEBFULLNAME="Bumsik Kim" +export DEBEMAIL DEBFULLNAME + +cd build +cd virtscreen-$PKGVER +debuild