summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--harmony/glib/APKBUILD3
-rw-r--r--harmony/zsh/APKBUILD3
-rw-r--r--system/debianutils/APKBUILD6
-rw-r--r--system/gcc/APKBUILD6
-rw-r--r--system/gcc/add-classic_table-support.patch181
-rw-r--r--system/gcc/lra-pentium.patch48
-rw-r--r--system/syslinux/APKBUILD19
-rwxr-xr-xsystem/syslinux/update-extlinux2
-rw-r--r--system/vlc/APKBUILD359
-rw-r--r--system/vlc/check-headless.patch13
-rw-r--r--system/vlc/disable-sub-autodetect-fuzzy-1-test.patch20
-rw-r--r--system/vlc/fribidi-update.patch83
-rw-r--r--system/vlc/omxil-rpi-codecs.patch15
-rw-r--r--system/vlc/tar-compat.patch11
-rw-r--r--system/vlc/test-s390x.patch13
-rw-r--r--system/vlc/vlc-daemon.pre-install15
-rw-r--r--system/vlc/vlc-libs.trigger5
-rw-r--r--system/vlc/vlc.confd15
-rwxr-xr-xsystem/vlc/vlc.initd32
-rw-r--r--user/acpilight/APKBUILD36
-rw-r--r--user/acpilight/acpilight.post-install11
-rw-r--r--user/acpilight/python3.patch22
-rw-r--r--user/acpilight/rules-warning.patch8
-rw-r--r--user/fluidsynth/APKBUILD41
-rw-r--r--user/kaffeine/APKBUILD44
-rw-r--r--user/kde-education/APKBUILD27
-rw-r--r--user/kde-education/org.adelie-linux.about-education.desktop8
-rw-r--r--user/kde-multimedia/APKBUILD25
-rw-r--r--user/kde-multimedia/org.adelie-linux.about-multimedia.desktop8
-rw-r--r--user/kdenlive/APKBUILD48
-rw-r--r--user/libdca/APKBUILD43
-rw-r--r--user/minuet/APKBUILD44
-rw-r--r--user/ncompress/APKBUILD13
-rw-r--r--user/ncompress/fix-9bit-compress.patch20
-rw-r--r--user/phonon-vlc/APKBUILD43
-rw-r--r--user/phonon/APKBUILD4
-rw-r--r--user/py3-docutils/APKBUILD51
-rw-r--r--user/py3-olefile/APKBUILD36
-rw-r--r--user/py3-pillow/APKBUILD54
-rw-r--r--user/py3-pluggy/APKBUILD33
-rw-r--r--user/py3-py/APKBUILD35
-rw-r--r--user/py3-pytest/APKBUILD33
-rw-r--r--user/py3-roman/APKBUILD35
-rw-r--r--user/py3-roman/py36.patch10
-rw-r--r--user/py3-setuptools/APKBUILD45
-rw-r--r--user/py3-setuptools/pythonpath.patch10
-rw-r--r--user/py3-tox/APKBUILD33
-rw-r--r--user/py3-virtualenv/APKBUILD37
-rw-r--r--user/py3-virtualenv/test-python3.patch74
-rw-r--r--user/schismtracker/APKBUILD30
-rw-r--r--user/xcape/APKBUILD28
51 files changed, 1719 insertions, 119 deletions
diff --git a/harmony/glib/APKBUILD b/harmony/glib/APKBUILD
index 31a4fc576..89a98754f 100644
--- a/harmony/glib/APKBUILD
+++ b/harmony/glib/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=glib
pkgver=2.54.2
-pkgrel=0
+pkgrel=1
pkgdesc="Common C routines used by Gtk+ and other libs"
url="https://developer.gnome.org/glib/"
arch="all"
@@ -46,6 +46,7 @@ build() {
--disable-compile-warnings \
--disable-selinux \
--with-pcre=system \
+ --with-python=python3 \
--with-pic \
--enable-static
make
diff --git a/harmony/zsh/APKBUILD b/harmony/zsh/APKBUILD
index 277501492..0405b6ba6 100644
--- a/harmony/zsh/APKBUILD
+++ b/harmony/zsh/APKBUILD
@@ -3,11 +3,12 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=zsh
pkgver=5.4.1
-pkgrel=0
+pkgrel=1
pkgdesc="A very advanced and programmable command interpreter (shell)"
url="http://www.zsh.org/"
arch="all"
license="BSD"
+depends="debianutils" # add-shell
makedepends="ncurses-dev pcre-dev"
install="zsh.post-install zsh.post-upgrade zsh.pre-deinstall"
source="http://www.zsh.org/pub/$pkgname-$pkgver.tar.gz
diff --git a/system/debianutils/APKBUILD b/system/debianutils/APKBUILD
index 37267b3ec..6c87f1867 100644
--- a/system/debianutils/APKBUILD
+++ b/system/debianutils/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=debianutils
pkgver=4.8.1.1
-pkgrel=1
+pkgrel=2
pkgdesc="Useful utilities from Debian"
url="https://packages.qa.debian.org/d/debianutils.html"
arch="all"
options="!check" # No test suite.
license="BSD-3 GPL-2.0"
-depends=""
-makedepends="mawk grep" # early package, declare these
+depends="coreutils mawk" # awk, cat, and rm are required by add-shell
+makedepends="grep" # early package, declare these
install=""
subpackages="$pkgname-doc $pkgname-which"
source="http://ftp.debian.org/debian/pool/main/d/$pkgname/${pkgname}_${pkgver}.tar.xz"
diff --git a/system/gcc/APKBUILD b/system/gcc/APKBUILD
index 0ae8352ae..5fa1e4e11 100644
--- a/system/gcc/APKBUILD
+++ b/system/gcc/APKBUILD
@@ -6,7 +6,7 @@ pkgver=6.4.0
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname="$pkgname$_target"
-pkgrel=7
+pkgrel=8
pkgdesc="The GNU Compiler Collection"
url="http://gcc.gnu.org"
arch="all"
@@ -187,6 +187,7 @@ source="ftp://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkgba
fix-rs6000-pie.patch
add-classic_table-support.patch
+ lra-pentium.patch
"
# we build out-of-tree
@@ -641,4 +642,5 @@ fa44c8158111627aa0e91c43e7cc3aa38642c2041c96532dd4f0932dae4d6f92ea2850b683abcf10
385bc2fa50204f678964e5148c6170f572701dab920fbec8301f505bda34d182cde0adb7da042fee71719e12fb59f59181897f9b1bb4f4716ff59aad46ca1998 310-build-gcj-s390x.patch
f4ef08454e28c8732db69115e4998ec153399e8d229dd27f923dbdcf57b68128a65640d026cc7f45b58ba8764ab1eb575d4eb6d6dfc550a87a183f8b94e76181 320-libffi-gnulinux.patch
01c71cd5881fc07ea3b9b980697e89b3ca0fe98502958ceafc3fca18b2604c844e2f457feab711baf8e03f00a5383b0e38aac7eb954034e306f43d4a37f165ed fix-rs6000-pie.patch
-68483be0f4daa56bff9f1b4ddcbc9db9087bc0a459388c916dd36746ce20558e092116c3d2eac3daa4512978270901504a6ec6b2aa589e81864e6f236e5d9639 add-classic_table-support.patch"
+1860593584f629d24d5b6db14b0a3412e9f93449b663aaa4981301a0923db0159314905e694f27366fbfef72dce06636ab6df86862b7e9e9564847e03bee82c1 add-classic_table-support.patch
+4e1b421ed72668b66ecbcb0a34afa99d2a34cb2ea9ee51c4aad605fc8a0e94e3bfbabae4ebe236efc5ec86fc01a472cbe93f36fe25cf579714939d8102a9b84a lra-pentium.patch"
diff --git a/system/gcc/add-classic_table-support.patch b/system/gcc/add-classic_table-support.patch
index 0f5e0f8e3..e74929302 100644
--- a/system/gcc/add-classic_table-support.patch
+++ b/system/gcc/add-classic_table-support.patch
@@ -43,7 +43,7 @@
_GLIBCXX_END_NAMESPACE_VERSION
--- gcc-6.4.0/libstdc++-v3/config/os/generic/ctype_configure_char.cc.old 2016-01-04 08:30:50.652828000 -0600
+++ gcc-6.4.0/libstdc++-v3/config/os/generic/ctype_configure_char.cc 2017-10-16 08:37:57.986260218 -0500
-@@ -40,7 +40,104 @@
+@@ -40,7 +40,105 @@
const ctype_base::mask*
ctype<char>::classic_table() throw()
@@ -51,98 +51,99 @@
+ {
+ static ctype_base::mask mask[256] = {
+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl | print | space, cntrl, cntrl, cntrl, cntrl | print, cntrl, cntrl,
++ cntrl, cntrl | blank | space, cntrl | space, cntrl | space,
++ cntrl | space, cntrl | space, cntrl, cntrl,
+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
+ print | space | blank,
-+ print | punct | graph, print | punct | graph,
-+ print | punct | graph, print | punct | graph,
-+ print | punct | graph, print | punct | graph,
-+ print | punct | graph, print | punct | graph,
-+ print | punct | graph, print | punct | graph,
-+ print | punct | graph, print | punct | graph,
-+ print | punct | graph, print | punct | graph,
-+ print | punct | graph,
-+ print | graph | alnum | digit | xdigit, print | graph | alnum | digit | xdigit,
-+ print | graph | alnum | digit | xdigit, print | graph | alnum | digit | xdigit,
-+ print | graph | alnum | digit | xdigit, print | graph | alnum | digit | xdigit,
-+ print | graph | alnum | digit | xdigit, print | graph | alnum | digit | xdigit,
-+ print | graph | alnum | digit | xdigit, print | graph | alnum | digit | xdigit,
-+ print | punct | graph, print | punct | graph,
-+ print | graph, print | graph, print | graph,
-+ print | punct | graph, print | graph,
-+ print | graph | alnum | xdigit | alpha | upper,
-+ print | graph | alnum | xdigit | alpha | upper,
-+ print | graph | alnum | xdigit | alpha | upper,
-+ print | graph | alnum | xdigit | alpha | upper,
-+ print | graph | alnum | xdigit | alpha | upper,
-+ print | graph | alnum | xdigit | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph | alnum | alpha | upper,
-+ print | graph, print | graph, print | graph,
-+ print | graph, print | graph, print | graph,
-+ print | graph | alnum | xdigit | alpha | lower,
-+ print | graph | alnum | xdigit | alpha | lower,
-+ print | graph | alnum | xdigit | alpha | lower,
-+ print | graph | alnum | xdigit | alpha | lower,
-+ print | graph | alnum | xdigit | alpha | lower,
-+ print | graph | alnum | xdigit | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph | alnum | alpha | lower,
-+ print | graph, print | graph, print | graph, print | graph,
-+ print,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl,
-+ cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl, cntrl
++ print | punct, print | punct,
++ print | punct, print | punct,
++ print | punct, print | punct,
++ print | punct, print | punct,
++ print | punct, print | punct,
++ print | punct, print | punct,
++ print | punct, print | punct,
++ print | punct,
++ print | alnum | digit | xdigit, print | alnum | digit | xdigit,
++ print | alnum | digit | xdigit, print | alnum | digit | xdigit,
++ print | alnum | digit | xdigit, print | alnum | digit | xdigit,
++ print | alnum | digit | xdigit, print | alnum | digit | xdigit,
++ print | alnum | digit | xdigit, print | alnum | digit | xdigit,
++ print | punct, print | punct,
++ print, print, print,
++ print | punct, print,
++ print | alnum | xdigit | alpha | upper,
++ print | alnum | xdigit | alpha | upper,
++ print | alnum | xdigit | alpha | upper,
++ print | alnum | xdigit | alpha | upper,
++ print | alnum | xdigit | alpha | upper,
++ print | alnum | xdigit | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | alnum | alpha | upper,
++ print | punct, print | punct, print | punct,
++ print | punct, print | punct, print | punct,
++ print | alnum | xdigit | alpha | lower,
++ print | alnum | xdigit | alpha | lower,
++ print | alnum | xdigit | alpha | lower,
++ print | alnum | xdigit | alpha | lower,
++ print | alnum | xdigit | alpha | lower,
++ print | alnum | xdigit | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | alnum | alpha | lower,
++ print | punct, print | punct, print | punct, print | punct,
++ cntrl,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0,
++ 0, 0, 0, 0, 0, 0, 0, 0
+ };
+ return mask;
+ }
diff --git a/system/gcc/lra-pentium.patch b/system/gcc/lra-pentium.patch
new file mode 100644
index 000000000..e876bcc39
--- /dev/null
+++ b/system/gcc/lra-pentium.patch
@@ -0,0 +1,48 @@
+--- trunk/gcc/lra-assigns.c 2017/03/10 20:53:18 246058
++++ trunk/gcc/lra-assigns.c 2017/03/10 21:17:13 246059
+@@ -889,6 +889,30 @@
+ live_pseudos_reg_renumber[regno] = hard_regno;
+ }
+
++/* Return true iff there is a reason why pseudo SPILL_REGNO should not
++ be spilled. */
++static bool
++must_not_spill_p (unsigned spill_regno)
++{
++ if ((pic_offset_table_rtx != NULL
++ && spill_regno == REGNO (pic_offset_table_rtx))
++ || ((int) spill_regno >= lra_constraint_new_regno_start
++ && ! bitmap_bit_p (&lra_inheritance_pseudos, spill_regno)
++ && ! bitmap_bit_p (&lra_split_regs, spill_regno)
++ && ! bitmap_bit_p (&lra_subreg_reload_pseudos, spill_regno)
++ && ! bitmap_bit_p (&lra_optional_reload_pseudos, spill_regno)))
++ return true;
++ /* A reload pseudo that requires a singleton register class should
++ not be spilled.
++ FIXME: this mitigates the issue on certain i386 patterns, but
++ does not solve the general case where existing reloads fully
++ cover a limited register class. */
++ if (!bitmap_bit_p (&non_reload_pseudos, spill_regno)
++ && reg_class_size [reg_preferred_class (spill_regno)] == 1)
++ return true;
++ return false;
++}
++
+ /* Array used for sorting reload pseudos for subsequent allocation
+ after spilling some pseudo. */
+ static int *sorted_reload_pseudos;
+@@ -960,13 +984,7 @@
+ /* Spill pseudos. */
+ static_p = false;
+ EXECUTE_IF_SET_IN_BITMAP (&spill_pseudos_bitmap, 0, spill_regno, bi)
+- if ((pic_offset_table_rtx != NULL
+- && spill_regno == REGNO (pic_offset_table_rtx))
+- || ((int) spill_regno >= lra_constraint_new_regno_start
+- && ! bitmap_bit_p (&lra_inheritance_pseudos, spill_regno)
+- && ! bitmap_bit_p (&lra_split_regs, spill_regno)
+- && ! bitmap_bit_p (&lra_subreg_reload_pseudos, spill_regno)
+- && ! bitmap_bit_p (&lra_optional_reload_pseudos, spill_regno)))
++ if (must_not_spill_p (spill_regno))
+ goto fail;
+ else if (non_spilled_static_chain_regno_p (spill_regno))
+ static_p = true;
diff --git a/system/syslinux/APKBUILD b/system/syslinux/APKBUILD
index 25e7cb252..43ac057b1 100644
--- a/system/syslinux/APKBUILD
+++ b/system/syslinux/APKBUILD
@@ -1,11 +1,11 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=syslinux
pkgver=6.04_pre1
-pkgrel=2
+pkgrel=3
_ver=${pkgver/_/-}
pkgdesc="Boot loader for the Linux operating system"
url="http://syslinux.org"
-arch="x86 x86_64"
+arch="pmmx x86 x86_64"
license="GPL"
makedepends="linux-headers nasm perl util-linux-dev gnu-efi-dev"
depends="mtools blkid mawk"
@@ -27,26 +27,17 @@ x86_64) _loaderarch=efi64;;
esac
builddir="$srcdir"/$pkgname-$_ver
-prepare() {
- cd "$builddir"
- for i in $source; do
- i=${i%%::*}
- case "$i" in
- *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
- esac
- done
-}
build() {
cd "$builddir"
unset LDFLAGS
- make $_loaderarch installer || return 1
+ make $_loaderarch installer
}
package() {
cd "$builddir"
make -j1 INSTALLROOT="$pkgdir" MANDIR=/usr/share/man \
- bios $_loaderarch install || return 1
+ bios $_loaderarch install
mkdir -p "$pkgdir"/etc/update-extlinux.d
cp "$srcdir"/update-extlinux.conf "$pkgdir"/etc/
@@ -57,4 +48,4 @@ package() {
sha512sums="7927dd39be8e2dcf4138a6fea33def67d19d938379d694f15b48fdd2f5924c028b7a9e7bd71d0c7c6630c203e9e2a54296628e530632ad5e6f55b1ebefe8fc98 syslinux-6.04-pre1.tar.xz
9071be450e543597f6f95b9a5811869c5351a71f4c42f7879b9f7ec1b13e2e4d455e9f2900e3897d5e5870bd87c934b7168328186c5f17631f2b09a524e10a1a update-extlinux.conf
-23fd69b5f42af063744289f64e60eddd0fa35db83d988b24635e6eb47b5c8fada8585c9aea60f398cfc1e5be8565230a81192d71df705368a90e0927f35fb60d update-extlinux"
+8f4f003053a3a265a11522b5bd6c71998ae3bf7ef1fbc2ed51675e432485ba4453f707b1bc1a1ed2089cf226456a56e7742b197b45b015099820b7fed5c2f153 update-extlinux"
diff --git a/system/syslinux/update-extlinux b/system/syslinux/update-extlinux
index b0d8d97f7..5e1183ba9 100755
--- a/system/syslinux/update-extlinux
+++ b/system/syslinux/update-extlinux
@@ -107,7 +107,7 @@ if [ -n "$serial_port" ]; then
fi
echo "DEFAULT $syslinux_menu" >> $conf.new
echo "PROMPT 0" >> $conf.new
-echo "MENU TITLE Addelie $(uname -s) Boot Menu" >> $conf.new
+echo "MENU TITLE Adelie $(uname -s) Boot Menu" >> $conf.new
if [ "$hidden" = "1" ]; then
echo "MENU HIDDEN" >> $conf.new
fi
diff --git a/system/vlc/APKBUILD b/system/vlc/APKBUILD
new file mode 100644
index 000000000..95a9b9fea
--- /dev/null
+++ b/system/vlc/APKBUILD
@@ -0,0 +1,359 @@
+# Contributor: Łukasz Jendrysik <scadu@yandex.com>
+# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=vlc
+pkgver=3.0.1
+_pkgver=${pkgver/_/-}
+_ver=${_pkgver%[a-z]}
+pkgrel=0
+pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player"
+triggers="vlc-libs.trigger=/usr/lib/vlc/plugins"
+pkgusers="vlc"
+pkggroups="vlc"
+url="https://www.videolan.org/vlc/"
+arch="all"
+license="GPL-2.0-or-later"
+options="!checkroot textrel"
+subpackages="$pkgname-dev
+ $pkgname-doc
+ $pkgname-qt
+ $pkgname-xorg
+ $pkgname-daemon::noarch
+ $pkgname-libs
+ $pkgname-plugins
+
+ $pkgname-plugins-access:plugins_access
+ $pkgname-plugins-access_output:plugins_access_output
+ $pkgname-plugins-audio_filter:plugins_audio_filter
+ $pkgname-plugins-audio_mixer:plugins_audio_mixer
+ $pkgname-plugins-audio_output:plugins_audio_output
+ $pkgname-plugins-codec:plugins_codec
+ $pkgname-plugins-control:plugins_control
+ $pkgname-plugins-demux:plugins_demux
+ $pkgname-plugins-gui:plugins_gui
+ $pkgname-plugins-lua:plugins_lua
+ $pkgname-plugins-meta_engine:plugins_meta_engine
+ $pkgname-plugins-misc:plugins_misc
+ $pkgname-plugins-mux:plugins_mux
+ $pkgname-plugins-notify:plugins_notify
+ $pkgname-plugins-packetizer:plugins_packetizer
+ $pkgname-plugins-services_discovery:plugins_services_discovery
+ $pkgname-plugins-stream_filter:plugins_stream_filter
+ $pkgname-plugins-stream_out:plugins_stream_out
+ $pkgname-plugins-text_renderer:plugins_text_renderer
+ $pkgname-plugins-video_chroma:plugins_video_chroma
+ $pkgname-plugins-video_filter:plugins_video_filter
+ $pkgname-plugins-video_output:plugins_video_output
+ $pkgname-plugins-visualization:plugins_visualization"
+depends="ttf-dejavu $pkgname-plugins"
+makedepends="
+ a52dec-dev
+ alsa-lib-dev
+ automake
+ autoconf
+ bison
+ libtool
+ dbus-dev
+ faad2-dev
+ ffmpeg-dev
+ flac-dev
+ flex
+ fluidsynth-dev
+ freetype-dev
+ fribidi-dev
+ gtk+3.0-dev
+ libbluray-dev>=0.2.1 libbluray-dev<20100000
+ libavc1394-dev
+ libcddb-dev
+ libdc1394-dev>=2.1.0
+ libdca-dev
+ libdvbpsi-dev
+ libdvdnav-dev
+ libdvdread-dev
+ libgcrypt-dev
+ libice-dev
+ libmad-dev
+ libmatroska-dev
+ libmpeg2-dev
+ libnotify-dev
+ libogg-dev
+ libraw1394-dev>=2.0.1
+ librsvg-dev
+ libshout-dev
+ libsm-dev
+ libtheora-dev
+ libva-dev
+ libvdpau-dev
+ libvorbis-dev
+ libvpx-dev
+ libx11-dev
+ libxext-dev
+ libxinerama-dev
+ libxml2-dev
+ libxpm-dev
+ libxv-dev
+ live-media-dev>=2012.01.26
+ lua5.2-dev
+ mesa-dev
+ ncurses-dev
+ opus-dev
+ pkgconfig
+ pulseaudio-dev
+ qt5-qtbase-dev
+ qt5-qtsvg-dev
+ sdl2-dev
+ speex-dev
+ speexdsp-dev
+ sysfsutils-dev
+ taglib-dev
+ eudev-dev
+ v4l-utils-dev
+ wayland-protocols
+ x264-dev
+ x265-dev
+ xcb-util-renderutil-dev
+ xcb-util-keysyms-dev
+ xdg-utils
+ "
+source="http://get.videolan.org/vlc/$_ver/vlc-$_ver.tar.xz
+ omxil-rpi-codecs.patch
+ check-headless.patch
+ disable-sub-autodetect-fuzzy-1-test.patch
+ fribidi-update.patch
+ tar-compat.patch
+ test-s390x.patch
+ vlc-libs.trigger"
+
+builddir="$srcdir"/$pkgname-$_ver
+
+prepare() {
+ default_prepare
+ NOCONFIGURE=1 ./bootstrap
+}
+
+build() {
+ local _arch_opts=
+ cd "$builddir"
+ export CFLAGS="$CFLAGS -D_GNU_SOURCE"
+
+ case "$CARCH" in
+ arm*) _arch_opts="--enable-omxil --enable-omxil-vout --enable-rpi-omxil" ;;
+ ppc64*) _arch_opts="--enable-altivec" ;;
+ esac
+
+ LUA=lua5.2 \
+ LUAC=luac5.2 \
+ BUILDCC="${CC:-gcc} -std=c99" \
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --disable-mmx \
+ --disable-sse \
+ --enable-nls \
+ --enable-optimizations \
+ --enable-optimize-memory \
+ --disable-rpath \
+ --enable-a52 \
+ --enable-avcodec \
+ --enable-avformat \
+ --enable-bluray \
+ --enable-cdda \
+ --enable-dbus \
+ --enable-dc1394 \
+ --enable-dca \
+ --enable-dvbpsi \
+ --enable-dvdread \
+ --enable-dvdnav \
+ --enable-faad \
+ --enable-flac \
+ --enable-fluidsynth \
+ --enable-jpeg \
+ --enable-libcddb \
+ --enable-libmpeg2 \
+ --enable-libva \
+ --enable-live555 \
+ --enable-mad \
+ --enable-merge-ffmpeg \
+ --enable-notify \
+ --enable-ncurses \
+ --enable-ogg \
+ --enable-opus \
+ --enable-png \
+ --enable-pulse \
+ --enable-qt \
+ --enable-realrtsp \
+ --enable-shout \
+ --enable-skins2 \
+ --enable-speex \
+ --enable-sout \
+ --enable-taglib \
+ --enable-theora \
+ --enable-udev \
+ --enable-v4l2 \
+ --enable-vdpau \
+ --enable-vlm \
+ --enable-vorbis \
+ --enable-vpx \
+ --enable-wma-fixed \
+ --enable-x264 \
+ --enable-x265 \
+ --enable-xvideo \
+ $_arch_opts
+
+ make
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+ # delete cache as it's autocreated by trigger
+ rm -rf "$pkgdir"/usr/lib/vlc/plugins/plugins.dat
+ # delete unneeded mozilla and kde support files
+ rm -rf "$pkgdir"/usr/lib/mozilla
+ rm -rf "$pkgdir"/usr/share/kde4
+}
+
+check() {
+ cd "$builddir"
+ make check
+}
+
+plugins() {
+ pkgdesc="$pkgname all plugins meta package"
+ depends="$pkgname-plugins-access
+ $pkgname-plugins-access_output
+ $pkgname-plugins-audio_filter
+ $pkgname-plugins-audio_mixer
+ $pkgname-plugins-audio_output
+ $pkgname-plugins-codec
+ $pkgname-plugins-control
+ $pkgname-plugins-demux
+ $pkgname-plugins-gui
+ $pkgname-plugins-lua
+ $pkgname-plugins-meta_engine
+ $pkgname-plugins-misc
+ $pkgname-plugins-mux
+ $pkgname-plugins-notify
+ $pkgname-plugins-packetizer
+ $pkgname-plugins-services_discovery
+ $pkgname-plugins-stream_filter
+ $pkgname-plugins-stream_out
+ $pkgname-plugins-text_renderer
+ $pkgname-plugins-video_chroma
+ $pkgname-plugins-video_filter
+ $pkgname-plugins-video_output
+ $pkgname-plugins-visualization"
+ mkdir -p "$subpkgdir"
+}
+
+_mv() {
+ local dir=${1%/*}
+ mkdir -p "$subpkgdir"/$dir
+ mv "$1" "$subpkgdir"/$dir/
+}
+
+qt() {
+ pkgdesc="Qt frontend for VLC"
+ depends="vlc-xorg=$pkgver-r$pkgrel"
+ cd "$pkgdir"
+ # scan for elf files that directly or indirectly depends on
+ # libQt* libraries
+ cd "$pkgdir"
+ for i in $(find . -type f ); do
+ if ldd $i 2>/dev/null | grep -q "libQt"; then
+ _mv "$i" || return 1
+ fi
+ done
+ mkdir -p "$subpkgdir"/usr/bin
+ mv "$pkgdir"/usr/bin/qvlc \
+ "$subpkgdir"/usr/bin/
+}
+
+xorg() {
+ pkgdesc="Video LAN X.org support"
+ depends="xdg-utils vlc=$pkgver-r$pkgrel"
+
+ # scan for elf files that directly or indirectly depends on
+ # libX* libraries
+ cd "$pkgdir"
+ for i in $(find . -type f ); do
+ if ldd $i 2>/dev/null | grep -E -q "libX|x11|libxcb|libGL"; then
+ echo $i | grep libavcodec_plugin.so || _mv "$i" || return 1
+ fi
+ done
+
+ mkdir -p "$subpkgdir"/usr/bin
+ mv "$pkgdir"/usr/bin/svlc \
+ "$subpkgdir"/usr/bin
+
+ mkdir -p "$subpkgdir"/usr/share/vlc
+ mv "$pkgdir"/usr/share/applications \
+ "$pkgdir"/usr/share/icons \
+ "$subpkgdir"/usr/share/
+
+ mv "$pkgdir"/usr/share/vlc/skins2 \
+ "$subpkgdir"/usr/share/vlc
+}
+
+daemon() {
+ pkgdesc="Support for running VLC as a daemon"
+ install="vlc-daemon.pre-install"
+ depends="vlc=$pkgver-r$pkgrel"
+
+ mkdir -p "$subpkgdir"
+ cd "$pkgdir"
+ install -D -m755 ../../vlc.initd $subpkgdir/etc/init.d/vlc
+ install -D -m664 ../../vlc.confd $subpkgdir/etc/conf.d/vlc
+ install -d -o vlc -g vlc "$subpkgdir"/var/log/vlc
+}
+
+libs() {
+ depends=
+ mkdir -p "$subpkgdir"/usr/lib/vlc
+ mv "$pkgdir"/usr/lib/vlc/vlc-cache-gen \
+ "$subpkgdir"/usr/lib/vlc/
+ default_libs
+}
+
+_mv_plugins() {
+ local plugin=$1
+ pkgdesc="$pkgname $plugin plugin"
+ depends=
+ mkdir -p "$subpkgdir"/usr/lib/vlc/plugins
+ mv "$pkgdir"/usr/lib/vlc/plugins/"$plugin" \
+ "$subpkgdir"/usr/lib/vlc/plugins
+}
+
+plugins_access() { _mv_plugins access; }
+plugins_access_output() { _mv_plugins access_output; }
+plugins_audio_filter() { _mv_plugins audio_filter; }
+plugins_audio_mixer() { _mv_plugins audio_mixer; }
+plugins_audio_output() { _mv_plugins audio_output; }
+plugins_codec() { _mv_plugins codec; }
+plugins_control() { _mv_plugins control; }
+plugins_demux() { _mv_plugins demux; }
+plugins_gui() { _mv_plugins gui; }
+plugins_lua() { _mv_plugins lua; }
+plugins_meta_engine() { _mv_plugins meta_engine; }
+plugins_misc() { _mv_plugins misc; }
+plugins_mux() { _mv_plugins mux; }
+plugins_notify() { _mv_plugins notify; }
+plugins_packetizer() { _mv_plugins packetizer; }
+plugins_services_discovery() { _mv_plugins services_discovery; }
+plugins_stream_filter() { _mv_plugins stream_filter; }
+plugins_stream_out() { _mv_plugins stream_out; }
+plugins_text_renderer() { _mv_plugins text_renderer; }
+plugins_video_chroma() { _mv_plugins video_chroma; }
+plugins_video_filter() { _mv_plugins video_filter; }
+plugins_video_output() { _mv_plugins video_output; }
+plugins_visualization() { _mv_plugins visualization; }
+
+sha512sums="f2ba7586e8fb8c04484e62809265ec998e875b1eff03262bbf463370277a318816cbb8d260901c774e59443393b16b040cb714019c80e051578008abbf91b13c vlc-3.0.1.tar.xz
+e13e398b7bfd977f6e099bcb6cf8dc5cd5bad6dea3eff715881826246dc4329468846084aff2576de2b7fd28d3f06e7c327a6e4511a28d22e5cd198a81146c89 omxil-rpi-codecs.patch
+22d80df599b8b65a5439cefbb7140af8e9530f326d54945da3769af65f37518b99ec2cc8647aafd2763324a0698280915afe043cc87e5720c4694881ed35bffa check-headless.patch
+e214b407235cb3afb8bec93f20c9b42957b57e6fd3960679d3d4235e77762e03e64d03c01f00ef63d589e7c85aaad02ce6abbeeccd66b1867bc92451a5b5e9b0 disable-sub-autodetect-fuzzy-1-test.patch
+3338531d385f76d9eedf10498d1b0b78565c531eedb3018d4500e377815f9ccbfcc16ec398cb8559bcc624f65b61d376125c4a5e6880cbad90ec9880dd4b9ce5 fribidi-update.patch
+a117ca4d7fd66a5f959fdeaddfdce2f8442fe9f2c13995bb7f4792a7745c00813813aa962f76e957e3b0735344a5dc000e0644ce09f23458802a2932231655c3 tar-compat.patch
+c0107655249687655846a9547ca1a5670b9207443180600e7a149c69ffb96d7226787c19b018d4033db9b284c1a5faa8d7d42188ed40c3b8bb051256febf11c5 test-s390x.patch
+b67b6e21e9d4027aef1006e6057f9ba8e65ce3895b08f7b911b1675cff9bc423f64ee2c187c584860e9e5d4635a30408a7781add9694d9bba753eac37f357406 vlc-libs.trigger"
diff --git a/system/vlc/check-headless.patch b/system/vlc/check-headless.patch
new file mode 100644
index 000000000..25016f437
--- /dev/null
+++ b/system/vlc/check-headless.patch
@@ -0,0 +1,13 @@
+diff --git a/test/run_vlc.sh b/test/run_vlc.sh
+index af35987..9a0175b 100755
+--- a/test/run_vlc.sh
++++ b/test/run_vlc.sh
+@@ -2,7 +2,7 @@
+
+ set -e
+
+-VLC="./vlc --ignore-config --rc-fake-tty"
++VLC="./vlc -I dummy --ignore-config --rc-fake-tty"
+
+ $VLC -H
+ $VLC -vv vlc://quit
diff --git a/system/vlc/disable-sub-autodetect-fuzzy-1-test.patch b/system/vlc/disable-sub-autodetect-fuzzy-1-test.patch
new file mode 100644
index 000000000..b3dd8a1b7
--- /dev/null
+++ b/system/vlc/disable-sub-autodetect-fuzzy-1-test.patch
@@ -0,0 +1,20 @@
+This test fails on x86 and s390x so disable it for now
+reported upstream: https://trac.videolan.org/vlc/ticket/19321
+
+diff --git a/test/libvlc/slaves.c b/test/libvlc/slaves.c
+index 7b2c24fa43..7c47b3147b 100644
+--- a/test/libvlc/slaves.c
++++ b/test/libvlc/slaves.c
+@@ -194,10 +194,12 @@ main (void)
+ assert(p_expected_slaves[i].psz_uri != NULL);
+ }
+
++#if 0
+ printf("== Testing --sub-autodetect-fuzzy 1 (everything) ==\n");
+ test_media_has_slaves_from_parent(p_vlc, SLAVES_DIR "/test.mp4",
+ p_expected_slaves,
+ EXPECTED_SLAVES_COUNT);
++#endif
+ libvlc_release(p_vlc);
+
+ printf("== Testing --sub-autodetect-fuzzy 2 (full, left, and right match) ==\n");
diff --git a/system/vlc/fribidi-update.patch b/system/vlc/fribidi-update.patch
new file mode 100644
index 000000000..fd293eea4
--- /dev/null
+++ b/system/vlc/fribidi-update.patch
@@ -0,0 +1,83 @@
+From 26e2d3906658c30f2f88f4b1bc9630ec43bf5525 Mon Sep 17 00:00:00 2001
+From: Shaleen Jain <shaleen@jain.sh>
+Date: Sun, 25 Feb 2018 18:42:27 +0530
+Subject: [PATCH 1/1] fribidi: update for version 1.0
+
+Update functions deprecated in version 1.0 when building with release 1.0 and
+above.
+
+Signed-off-by: Thomas Guillem <thomas@gllm.fr>
+---
+ modules/text_renderer/freetype/text_layout.c | 24 ++++++++++++++++++++++++
+ 1 file changed, 24 insertions(+)
+
+diff --git a/modules/text_renderer/freetype/text_layout.c b/modules/text_renderer/freetype/text_layout.c
+index 13efd567b4..1a28786d09 100644
+--- a/modules/text_renderer/freetype/text_layout.c
++++ b/modules/text_renderer/freetype/text_layout.c
+@@ -153,6 +153,9 @@ typedef struct paragraph_t
+
+ #ifdef HAVE_FRIBIDI
+ FriBidiCharType *p_types;
++#if FRIBIDI_MAJOR_VERSION >= 1
++ FriBidiBracketType *p_btypes;
++#endif
+ FriBidiLevel *p_levels;
+ FriBidiStrIndex *pi_reordered_indices;
+ FriBidiParType paragraph_type;
+@@ -361,6 +364,9 @@ static paragraph_t *NewParagraph( filter_t *p_filter,
+ #ifdef HAVE_FRIBIDI
+ p_paragraph->p_levels = vlc_alloc( i_size, sizeof( *p_paragraph->p_levels ) );
+ p_paragraph->p_types = vlc_alloc( i_size, sizeof( *p_paragraph->p_types ) );
++#if FRIBIDI_MAJOR_VERSION >= 1
++ p_paragraph->p_btypes = vlc_alloc( i_size, sizeof( *p_paragraph->p_btypes ) );
++#endif
+ p_paragraph->pi_reordered_indices =
+ vlc_alloc( i_size, sizeof( *p_paragraph->pi_reordered_indices ) );
+
+@@ -398,6 +404,9 @@ error:
+ #ifdef HAVE_FRIBIDI
+ if( p_paragraph->p_levels ) free( p_paragraph->p_levels );
+ if( p_paragraph->p_types ) free( p_paragraph->p_types );
++#if FRIBIDI_MAJOR_VERSION >= 1
++ if( p_paragraph->p_btypes ) free( p_paragraph->p_btypes );
++#endif
+ if( p_paragraph->pi_reordered_indices )
+ free( p_paragraph->pi_reordered_indices );
+ #endif
+@@ -424,6 +433,9 @@ static void FreeParagraph( paragraph_t *p_paragraph )
+ #ifdef HAVE_FRIBIDI
+ free( p_paragraph->pi_reordered_indices );
+ free( p_paragraph->p_types );
++#if FRIBIDI_MAJOR_VERSION >= 1
++ free( p_paragraph->p_btypes );
++#endif
+ free( p_paragraph->p_levels );
+ #endif
+
+@@ -436,10 +448,22 @@ static int AnalyzeParagraph( paragraph_t *p_paragraph )
+ fribidi_get_bidi_types( p_paragraph->p_code_points,
+ p_paragraph->i_size,
+ p_paragraph->p_types );
++#if FRIBIDI_MAJOR_VERSION >= 1
++ fribidi_get_bracket_types( p_paragraph->p_code_points,
++ p_paragraph->i_size,
++ p_paragraph->p_types,
++ p_paragraph->p_btypes );
++ fribidi_get_par_embedding_levels_ex( p_paragraph->p_types,
++ p_paragraph->p_btypes,
++ p_paragraph->i_size,
++ &p_paragraph->paragraph_type,
++ p_paragraph->p_levels );
++#else
+ fribidi_get_par_embedding_levels( p_paragraph->p_types,
+ p_paragraph->i_size,
+ &p_paragraph->paragraph_type,
+ p_paragraph->p_levels );
++#endif
+
+ #ifdef HAVE_HARFBUZZ
+ hb_unicode_funcs_t *p_funcs = hb_unicode_funcs_get_default();
+--
+2.11.0
+
diff --git a/system/vlc/omxil-rpi-codecs.patch b/system/vlc/omxil-rpi-codecs.patch
new file mode 100644
index 000000000..9b7accfe7
--- /dev/null
+++ b/system/vlc/omxil-rpi-codecs.patch
@@ -0,0 +1,15 @@
+--- vlc-2.2.0/modules/codec/omxil/omxil_core.c.orig 2015-02-28 08:37:54.044936036 -0200
++++ vlc-2.2.0/modules/codec/omxil/omxil_core.c 2015-02-28 08:38:38.738271654 -0200
+@@ -204,6 +204,12 @@
+ #ifdef RPI_OMX
+ { "video_decoder.avc", "OMX.broadcom.video_decode" },
+ { "video_decoder.mpeg2", "OMX.broadcom.video_decode" },
++ { "video_decoder.mpeg4", "OMX.broadcom.video_decode" },
++ { "video_decoder.vp6", "OMX.broadcom.video_decode" },
++ { "video_decoder.vp8", "OMX.broadcom.video_decode" },
++ { "video_decoder.theora", "OMX.broadcom.video_decode" },
++ { "video_decoder.mjpg", "OMX.broadcom.video_decode" },
++ { "video_decoder.vc1", "OMX.broadcom.video_decode" },
+ { "iv_renderer", "OMX.broadcom.video_render" },
+ #endif
+ { 0, 0 }
diff --git a/system/vlc/tar-compat.patch b/system/vlc/tar-compat.patch
new file mode 100644
index 000000000..34169ef56
--- /dev/null
+++ b/system/vlc/tar-compat.patch
@@ -0,0 +1,11 @@
+--- vlc-3.0.1/share/Makefile.am.old 2018-02-06 18:41:06.000000000 +0000
++++ vlc-3.0.1/share/Makefile.am 2018-04-05 23:19:37.081889895 +0000
+@@ -94,7 +94,7 @@
+ $(AM_V_at)rm -f -- skins2/default.vlt.tmp
+ $(AM_V_GEN)GZIP=--no-name \
+ tar cvvzf skins2/default.vlt.tmp \
+- --owner=root --group=root --directory="$(srcdir)/skins2" \
++ --uid=0 --gid=0 --directory="$(srcdir)/skins2" \
+ default/
+ $(AM_V_at)mv -f -- skins2/default.vlt.tmp skins2/default.vlt
+
diff --git a/system/vlc/test-s390x.patch b/system/vlc/test-s390x.patch
new file mode 100644
index 000000000..8f221ee06
--- /dev/null
+++ b/system/vlc/test-s390x.patch
@@ -0,0 +1,13 @@
+diff --git a/test/modules/packetizer/hxxx.c b/test/modules/packetizer/hxxx.c
+index 93362a1..e1b7604 100644
+--- a/test/modules/packetizer/hxxx.c
++++ b/test/modules/packetizer/hxxx.c
+@@ -210,7 +210,7 @@ static void test_annexb()
+
+ int main( void )
+ {
+- test_annexb();
++ //test_annexb();
+
+ return 0;
+ }
diff --git a/system/vlc/vlc-daemon.pre-install b/system/vlc/vlc-daemon.pre-install
new file mode 100644
index 000000000..aed6c1893
--- /dev/null
+++ b/system/vlc/vlc-daemon.pre-install
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+groups="vlc audio video"
+
+for group in $groups; do
+ addgroup -S $group 2>/dev/null
+done
+adduser -S -D -h /home/vlc -s /bin/sh -G vlc -g vlc vlc 2>/dev/null
+
+# make sure vlc are in all groups
+for group in $groups; do
+ addgroup vlc $group 2>/dev/null
+done
+
+exit 0
diff --git a/system/vlc/vlc-libs.trigger b/system/vlc/vlc-libs.trigger
new file mode 100644
index 000000000..c13bace99
--- /dev/null
+++ b/system/vlc/vlc-libs.trigger
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+exec /usr/lib/vlc/vlc-cache-gen "$@" >&/dev/null
+exit 0
+
diff --git a/system/vlc/vlc.confd b/system/vlc/vlc.confd
new file mode 100644
index 000000000..9a58842bd
--- /dev/null
+++ b/system/vlc/vlc.confd
@@ -0,0 +1,15 @@
+# Sample vlc params suitable for running as a daemon
+
+## --file-logging enable file logging
+## --logfile logfile name/path
+## -vvv verbose logging
+## -I dummy disable X11 interface
+## --sout PARAMS encoding parameters
+
+
+## Do NOT quote 'PARAMS' otherwise shell expansions will broke vlc
+##
+## The --daemon option will automatically be added so no need to add it
+## here.
+
+VLC_OPTS="--quiet -I dummy alsa://hw:0,0 --file-logging --logfile /var/log/vlc/vlc.log --sout #transcode{acodec=mp3,ab=48,channels=1,samplerate=22050}:std{access=http,mux=ogg,dst=:8080}"
diff --git a/system/vlc/vlc.initd b/system/vlc/vlc.initd
new file mode 100755
index 000000000..541a07180
--- /dev/null
+++ b/system/vlc/vlc.initd
@@ -0,0 +1,32 @@
+#!/sbin/openrc-run
+
+description="VideoLAN daemon"
+pidfile="/var/run/vlc/${RC_SVCNAME}.pid"
+command="/usr/bin/vlc"
+
+depend() {
+ need net
+ after firewall
+}
+
+start_pre() {
+ checkpath --directory --owner vlc:vlc --mode 775 ${pidfile%/*}
+}
+
+start() {
+ ebegin "Starting ${RC_SVCNAME}"
+ start-stop-daemon --start \
+ --user vlc \
+ --pidfile ${pidfile} \
+ --exec ${command} \
+ -- \
+ --daemon --pidfile ${pidfile} ${VLC_OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${RC_SVCNAME}"
+ start-stop-daemon --stop \
+ --pidfile ${pidfile}
+ eend $?
+}
diff --git a/user/acpilight/APKBUILD b/user/acpilight/APKBUILD
new file mode 100644
index 000000000..97956accd
--- /dev/null
+++ b/user/acpilight/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=acpilight
+pkgver=1.0.1
+pkgrel=0
+pkgdesc="Control backlight brightness level"
+url="https://github.com/wavexx/acpilight"
+arch="noarch"
+license="GPL-3.0"
+depends="eudev python3"
+makedepends=""
+install="$pkgname.post-install"
+subpackages="$pkgname-doc"
+options="!check" # Just a udev rule and a python script
+source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz
+ python3.patch
+ rules-warning.patch"
+builddir="$srcdir/$pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+}
+
+package() {
+ cd "$builddir"
+ install -Dm755 xbacklight \
+ "$pkgdir/usr/bin/xbacklight"
+ install -Dm644 90-backlight.rules \
+ "$pkgdir/lib/udev/rules.d/90-$pkgname.rules"
+ install -Dm644 xbacklight.1 \
+ "$pkgdir/usr/share/man/man1/xbacklight.1"
+}
+
+sha512sums="c9b5805f919172d4806942ba1987d0c11fda420a807c45c404eda83cbcfc6011729b09d7ae3113106e006d2ed65ab26e4932869305e48d9493514b597c6e9713 acpilight-1.0.1.tar.gz
+9ed3bc124a0120d7d4ea8831e7bef715c5c45b3e3389aed55261cf436db8cb123a8bffe463a29107cb27161a59ed6a31623e23f2b55797c99be92a2d26eabca0 python3.patch
+63521df95b943c941c6687960b69f4ca51f2b36c3d390ef50738034f13afbab175b0a69c7874bc47bc85a1b8d877a26427eba3a264803b700ff652c3c28cd2ad rules-warning.patch"
diff --git a/user/acpilight/acpilight.post-install b/user/acpilight/acpilight.post-install
new file mode 100644
index 000000000..0e64cf725
--- /dev/null
+++ b/user/acpilight/acpilight.post-install
@@ -0,0 +1,11 @@
+#!/bin/sh
+chgrp video /sys/class/backlight/*/brightness || true
+chmod g+w /sys/class/backlight/*/brightness || true
+chgrp video /sys/class/leds/*/brightness || true
+chmod g+w /sys/class/leds/*/brightness || true
+
+echo "*"
+echo "* Any user wishing to use xbacklight must be in the 'video' group."
+echo "* Check using 'groups \$USER' and add using 'usermod -aG video \$USER'."
+echo "*"
+exit 0
diff --git a/user/acpilight/python3.patch b/user/acpilight/python3.patch
new file mode 100644
index 000000000..ab0ffe61f
--- /dev/null
+++ b/user/acpilight/python3.patch
@@ -0,0 +1,22 @@
+--- acpilight-1.0/xbacklight 2017-02-23 21:03:30.000000000 +0000
++++ acpilight-1.0/xbacklight 2018-01-13 08:52:42.400000000 +0000
+@@ -1,9 +1,8 @@
+-#!/usr/bin/env python
++#!/usr/bin/python3
+ # xbacklight: control backlight and led brightness on linux using the sys
+ # filesystem with a backward-compatibile user interface
+ # Copyright(c) 2016-2017 by wave++ "Yuri D'Elia" <wavexx@thregr.org>
+ # -*- coding: utf-8 -*-
+-from __future__ import print_function, division, generators
+
+ APP_DESC = "control backlight brightness"
+ SYS_PATH = ["/sys/class/backlight", "/sys/class/leds"]
+@@ -99,7 +98,7 @@
+
+ # set current operating controller
+ if args.ctrl is None:
+- ctrl = Controller(next(iter(ctrls.values())))
++ ctrl = Controller(next(iter(list(ctrls.values()))))
+ else:
+ if args.ctrl not in ctrls:
+ error("unknown controller '{}'".format(args.ctrl))
diff --git a/user/acpilight/rules-warning.patch b/user/acpilight/rules-warning.patch
new file mode 100644
index 000000000..45c7abacb
--- /dev/null
+++ b/user/acpilight/rules-warning.patch
@@ -0,0 +1,8 @@
+--- acpilight-1.0/90-backlight.rules 2017-02-23 21:03:30.000000000 +0000
++++ acpilight-1.0/90-backlight.rules 2018-01-13 09:14:11.290000000 +0000
+@@ -1,4 +1,5 @@
+ # Allow video group to control backlight and leds
++# do not edit this file, it will be overwritten on update
+ SUBSYSTEM=="backlight", ACTION=="add", \
+ RUN+="/bin/chgrp video %S%p/brightness", \
+ RUN+="/bin/chmod g+w %S%p/brightness"
diff --git a/user/fluidsynth/APKBUILD b/user/fluidsynth/APKBUILD
new file mode 100644
index 000000000..c9865559a
--- /dev/null
+++ b/user/fluidsynth/APKBUILD
@@ -0,0 +1,41 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=fluidsynth
+pkgver=1.1.10
+pkgrel=0
+pkgdesc="Real-time, software synthesiser based on SoundFont 2"
+url="http://www.fluidsynth.org/"
+arch="all"
+license="LGPL-2.1+"
+depends=""
+makedepends="alsa-lib-dev dbus-dev glib-dev libsndfile-dev"
+install=""
+subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
+source="fluidsynth-$pkgver.tar.gz::https://github.com/FluidSynth/fluidsynth/archive/v$pkgver.tar.gz"
+
+build() {
+ cd "$builddir"
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_INSTALL_DIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \
+ -DCMAKE_C_FLAGS="$CFLAGS" \
+ ${CMAKE_CROSSOPTS}
+ make
+}
+
+check() {
+ cd "$builddir"
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="7ff7757baf6dee37f65a4fd214ffab1aa1434cfd1545deb4108fe2e9b0ed19d616880b2740a693b51ade0a4be998a671910b43cae26eb67fb97b16a513752cbc fluidsynth-1.1.10.tar.gz"
diff --git a/user/kaffeine/APKBUILD b/user/kaffeine/APKBUILD
new file mode 100644
index 000000000..f2501fae8
--- /dev/null
+++ b/user/kaffeine/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=kaffeine
+pkgver=2.0.14
+pkgrel=0
+pkgdesc="Media player with a focus on Digital TV (DVB)"
+url="https://www.kde.org/applications/multimedia/kaffeine/"
+arch="all"
+license="GPL-2.0-only"
+depends="vlc"
+makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtx11extras-dev
+ kcoreaddons-dev ki18n-dev kwidgetsaddons-dev kwindowsystem-dev kio-dev
+ kxmlgui-dev solid-dev kdbusaddons-dev vlc-dev libxscrnsaver-dev"
+install=""
+subpackages="$pkgname-doc $pkgname-lang"
+source="https://download.kde.org/stable/kaffeine/kaffeine-$pkgver.tar.xz"
+
+build() {
+ cd "$builddir"
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \
+ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
+ -DCMAKE_C_FLAGS="$CFLAGS" \
+ ${CMAKE_CROSSOPTS}
+ make
+}
+
+check() {
+ cd "$builddir"
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="03a4ffbfbe7b9c90de546bf7449e8e5f05d5e7023b75b5253297e885c412677a0c4b46c7f60761ef5f48ad3c284591acba6ff0fe4fa7256d5b01ca9a07d7276f kaffeine-2.0.14.tar.xz"
diff --git a/user/kde-education/APKBUILD b/user/kde-education/APKBUILD
new file mode 100644
index 000000000..27686bf6b
--- /dev/null
+++ b/user/kde-education/APKBUILD
@@ -0,0 +1,27 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=kde-education
+pkgver=17.12.2
+pkgrel=0
+pkgdesc="Educational software from the KDE Software Collection"
+url="https://www.kde.org/applications/education/"
+arch="noarch"
+license="NCSA"
+options="!check" # Empty meta package, no point in testing.
+depends="artikulate blinken gcompris-qt kalgebra kalzium kanagram kbruch
+ kgeography khangman kig kiten klettres kmplot ktouch kturtle kwordquiz
+ labplot marble rocs step"
+makedepends=""
+install=""
+subpackages=""
+source="org.adelie-linux.about-education.desktop"
+build() {
+ return 0
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/applications
+ cp -pr "$srcdir"/*.desktop "$pkgdir"/usr/share/applications/
+}
+
+sha512sums="d88ee909e3ce8d26f3fbfeebc8656e0b72ec399f5ba0a1225babf217b01f5c7caec6e81e95cabb00b23dcbd41416360ae15958f38a5cbf4d548b89e3dd3229d5 org.adelie-linux.about-education.desktop"
diff --git a/user/kde-education/org.adelie-linux.about-education.desktop b/user/kde-education/org.adelie-linux.about-education.desktop
new file mode 100644
index 000000000..3aca1d1b5
--- /dev/null
+++ b/user/kde-education/org.adelie-linux.about-education.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Version=1.0
+Name=About KDE Education
+Comment=Learn about KDE educational software included with Adélie
+Icon=dialog-information
+Categories=KDE;Education
+Exec=xdg-open https://support.adelielinux.org/html/desktop-kde/education.html
diff --git a/user/kde-multimedia/APKBUILD b/user/kde-multimedia/APKBUILD
new file mode 100644
index 000000000..b7288b32d
--- /dev/null
+++ b/user/kde-multimedia/APKBUILD
@@ -0,0 +1,25 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=kde-multimedia
+pkgver=17.12.2
+pkgrel=0
+pkgdesc="Multimedia software from the KDE Software Collection"
+url="https://www.kde.org/applications/multimedia/"
+arch="noarch"
+license="NCSA"
+options="!check" # Empty meta package, no point in testing.
+depends="dragonplayer juk kaffeine kdenlive kmediaplayer kmix kwave"
+makedepends=""
+install=""
+subpackages=""
+source="org.adelie-linux.about-multimedia.desktop"
+build() {
+ return 0
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/share/applications
+ cp -pr "$srcdir"/*.desktop "$pkgdir"/usr/share/applications/
+}
+
+sha512sums="279f625f4a3190b2703bcfd10b15932aa99a0c00559c33d3676793c34023ea573404aac27879671af126bdf4c4078db0ef843d1e63aedd14acd7fafdedab3670 org.adelie-linux.about-multimedia.desktop"
diff --git a/user/kde-multimedia/org.adelie-linux.about-multimedia.desktop b/user/kde-multimedia/org.adelie-linux.about-multimedia.desktop
new file mode 100644
index 000000000..a59e6dcd6
--- /dev/null
+++ b/user/kde-multimedia/org.adelie-linux.about-multimedia.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Version=1.0
+Name=About KDE Multimedia
+Comment=Learn about KDE multimedia software included with Adélie
+Icon=dialog-information
+Categories=KDE;Multimedia
+Exec=xdg-open https://support.adelielinux.org/html/desktop-kde/multimedia.html
diff --git a/user/kdenlive/APKBUILD b/user/kdenlive/APKBUILD
new file mode 100644
index 000000000..22a707446
--- /dev/null
+++ b/user/kdenlive/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=kdenlive
+pkgver=17.12.2
+pkgrel=0
+pkgdesc="Libre video editor"
+url="https://kdenlive.org/"
+arch="all"
+license="GPL-2.0-only"
+depends=""
+makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtscript-dev kio-dev
+ qt5-qtsvg-dev qt5-qtdeclarative-dev kxmlgui-dev karchive-dev kcrash-dev
+ kbookmarks-dev kcoreaddons-dev kconfig-dev kconfigwidgets-dev mlt-dev
+ kdbusaddons-dev kwidgetsaddons-dev knotifyconfig-dev knewstuff-dev
+ knotifications-dev kguiaddons-dev ktextwidgets-dev kiconthemes-dev
+ kdoctools-dev kfilemetadata-dev"
+install=""
+subpackages="$pkgname-doc $pkgname-lang"
+source="http://download.kde.org/stable/applications/$pkgver/src/kdenlive-$pkgver.tar.xz"
+builddir="$srcdir/kdenlive-$pkgver"
+
+build() {
+ cd "$builddir"
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \
+ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
+ -DCMAKE_C_FLAGS="$CFLAGS" \
+ ${CMAKE_CROSSOPTS}
+ make
+}
+
+check() {
+ cd "$builddir"
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="7a70ba8de9b034cabd6ce4fc6b92b01b57994327bab35e3410110b1d3dbe88fcae586a3f0ee82b387a205503b5853a3471c72d6c94bb6b0e9d5b96d7db24ecf0 kdenlive-17.12.2.tar.xz"
diff --git a/user/libdca/APKBUILD b/user/libdca/APKBUILD
new file mode 100644
index 000000000..9047074dc
--- /dev/null
+++ b/user/libdca/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=libdca
+pkgver=0.0.5
+pkgrel=0
+pkgdesc="Free DTS Coherent Acoustics decoder"
+url="https://www.videolan.org/developers/libdca.html"
+arch="all"
+license="GPL-2.0+"
+depends=
+install=
+subpackages="$pkgname-dev $pkgname-doc"
+source="https://download.videolan.org/pub/videolan/libdca/$pkgver/libdca-$pkgver.tar.bz2"
+
+prepare() {
+ cd "$builddir"
+ default_prepare
+ update_config_sub
+}
+
+build() {
+ cd "$builddir"
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var
+ make
+}
+
+check() {
+ cd "$builddir"
+ make check
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="d9f0ed34efeb3f27af8424fcb3e6df56744c6735854a65b5709c02b42b4513b9c4618dcc19eb44293afa051bd95616651bda5fc3b49dfabe975d0babfb1bc287 libdca-0.0.5.tar.bz2"
diff --git a/user/minuet/APKBUILD b/user/minuet/APKBUILD
new file mode 100644
index 000000000..8725696b6
--- /dev/null
+++ b/user/minuet/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=minuet
+pkgver=17.12.2
+pkgrel=0
+pkgdesc="Music education software"
+url="https://minuet.kde.org/"
+arch="all"
+license="GPL-2.0-only"
+depends=""
+makedepends="cmake extra-cmake-modules qt5-qtbase-dev qt5-qtdeclarative-dev
+ qt5-qtquickcontrols2-dev qt5-qtsvg-dev kcoreaddons-dev ki18n-dev
+ kcrash-dev kdoctools-dev fluidsynth-dev"
+install=""
+subpackages="$pkgname-doc $pkgname-lang"
+source="http://download.kde.org/stable/applications/$pkgver/src/minuet-$pkgver.tar.xz"
+
+build() {
+ cd "$builddir"
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \
+ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
+ -DCMAKE_C_FLAGS="$CFLAGS" \
+ ${CMAKE_CROSSOPTS}
+ make
+}
+
+check() {
+ cd "$builddir"
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="e9c45baf8d6ebc6055ca9d80ec5592916015307c8f961bc9fb204c3ecf843775854eeb3fb21284cf81f2493fae61c00507e119bd1d8aa6f68ffe7a0d6d67846b minuet-17.12.2.tar.xz"
diff --git a/user/ncompress/APKBUILD b/user/ncompress/APKBUILD
index 527f0d610..dafd49d3a 100644
--- a/user/ncompress/APKBUILD
+++ b/user/ncompress/APKBUILD
@@ -2,23 +2,26 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=ncompress
pkgver=4.2.4.4
-pkgrel=0
+pkgrel=1
pkgdesc="A fast, simple LZW compressor"
url="https://github.com/vapier/ncompress"
arch="all"
license="PD"
options="!check" # No test suite.
subpackages="$pkgname-doc"
-source="http://downloads.sourceforge.net/ncompress/ncompress-$pkgver.tar.gz"
+source="http://downloads.sourceforge.net/ncompress/ncompress-$pkgver.tar.gz
+ fix-9bit-compress.patch"
build() {
cd "$builddir"
- make BINDIR=/usr/bin MANDIR=/usr/share/man/man1
+ make
}
package() {
cd "$builddir"
- make DESTDIR="$pkgdir" BINDIR=/usr/bin MANDIR=/usr/share/man/man1 install
+ install -D -m755 "$builddir"/compress "$pkgdir"/usr/bin/compress
+ install -D -m644 "$builddir"/compress.1 "$pkgdir"/usr/share/man/man1/compress.1
}
-sha512sums="abc7bd96daaab0b83d5ca18ef4b8b4c6528632653a0882a4e0eda4fb3f99e23aae60ee30193e79104ea2ac8fb5816ac3b0bdebb08322db6bde6b8ef1639527be ncompress-4.2.4.4.tar.gz"
+sha512sums="abc7bd96daaab0b83d5ca18ef4b8b4c6528632653a0882a4e0eda4fb3f99e23aae60ee30193e79104ea2ac8fb5816ac3b0bdebb08322db6bde6b8ef1639527be ncompress-4.2.4.4.tar.gz
+b2e897679234f391fa3cf4d5b55a3894424cca632a3b16303b0085e908808bc72b66e6a9df3e56e1a26eac79340c0901f7e6ef2378cc61b710e93194d345c2ea fix-9bit-compress.patch"
diff --git a/user/ncompress/fix-9bit-compress.patch b/user/ncompress/fix-9bit-compress.patch
new file mode 100644
index 000000000..3fcd13d2f
--- /dev/null
+++ b/user/ncompress/fix-9bit-compress.patch
@@ -0,0 +1,20 @@
+--- old/compress42.c 1992-10-28 06:10:53.000000000 -0500
++++ fixed/compress42.c 2003-11-12 19:42:49.000000000 -0500
+@@ -228,7 +228,7 @@
+ #define FIRST 257 /* first free entry */
+ #define CLEAR 256 /* table clear output code */
+
+-#define INIT_BITS 9 /* initial number of bits/code */
++#define INIT_BITS 8 /* initial number of bits/code */
+
+ #ifndef SACREDMEM
+ /*
+@@ -819,7 +819,7 @@
+ nextarg: continue;
+ }
+
+- if (maxbits < INIT_BITS) maxbits = INIT_BITS;
++ if (maxbits <= INIT_BITS) maxbits = INIT_BITS + 1;
+ if (maxbits > BITS) maxbits = BITS;
+
+ if (*filelist != NULL) \ No newline at end of file
diff --git a/user/phonon-vlc/APKBUILD b/user/phonon-vlc/APKBUILD
new file mode 100644
index 000000000..5d305485a
--- /dev/null
+++ b/user/phonon-vlc/APKBUILD
@@ -0,0 +1,43 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=phonon-vlc
+pkgver=0.10.1
+pkgrel=0
+pkgdesc="Phonon backend utilising VLC for media playback"
+url="https://www.kde.org/"
+arch="all"
+license="LGPL-2.1+"
+depends="vlc"
+makedepends="cmake extra-cmake-modules qt5-qtbase-dev phonon-dev vlc-dev"
+install=
+subpackages=""
+source="https://download.kde.org/stable/phonon/phonon-backend-vlc/$pkgver/phonon-backend-vlc-$pkgver.tar.xz"
+
+build() {
+ cd "$builddir"
+ if [ "$CBUILD" != "$CHOST" ]; then
+ CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
+ fi
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \
+ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
+ -DCMAKE_C_FLAGS="$CFLAGS" \
+ -DPHONON_BUILD_PHONON4QT5=True \
+ ${CMAKE_CROSSOPTS}
+ make
+}
+
+check() {
+ cd "$builddir"
+ CTEST_OUTPUT_ON_FAILURE=TRUE ctest
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="fa94298a8236c29f792285d3f288140d244e0eacba02511a32ee56b5bace50f92a93a714b5c44dc5bafb15b2a9d5ae792231e78dce8ca1a45ab3a328492911df phonon-backend-vlc-0.10.1.tar.xz"
diff --git a/user/phonon/APKBUILD b/user/phonon/APKBUILD
index 07d91d7d5..03b8bffab 100644
--- a/user/phonon/APKBUILD
+++ b/user/phonon/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=phonon
-pkgver=4.9.1
+pkgver=4.10.0
pkgrel=0
pkgdesc="Qt library for playing multimedia files"
url="https://phonon.kde.org/"
@@ -54,4 +54,4 @@ designer() {
rmdir "$pkgdir"/usr/lib/qt5/plugins || true # Never mind
}
-sha512sums="a1741765071a625d9b9073d9ad1571b91cf5bfce2223bd1b034828d02dc52624587a6ec5352f3702df79f6e4201007596843fbcb9f15c9b489a858200787d728 phonon-4.9.1.tar.xz"
+sha512sums="6074c7c33edcdfeed8a6199024f1faedebe09652cf5d01075f2d97146b54c4269924b69ca8298e2341c0cf6ca4d18f930a59a937697f6f282b6de8e976d097c4 phonon-4.10.0.tar.xz"
diff --git a/user/py3-docutils/APKBUILD b/user/py3-docutils/APKBUILD
new file mode 100644
index 000000000..e227ada63
--- /dev/null
+++ b/user/py3-docutils/APKBUILD
@@ -0,0 +1,51 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-docutils
+_pkgname=docutils
+pkgver=0.14
+pkgrel=0
+pkgdesc="Documentation utilities for Python"
+url="https://pypi.python.org/pypi/docutils"
+arch="noarch"
+license="Custom"
+depends="python3 py3-pillow py3-roman"
+makedepends="python3-dev py3-setuptools"
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir/test3"
+ python3 alltests.py
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+
+ # Remove .py extension from executable files.
+ local path; for path in "$pkgdir"/usr/bin/*.py; do
+ mv "$path" "${path%.py}"
+ done
+}
+
+doc() {
+ cd "$builddir"
+
+ local docdir="$subpkgdir/usr/share/doc/$pkgname"
+ mkdir -p "$docdir"
+ cp -R docs/* "$docdir"
+ cp *.txt "$docdir"
+
+ local licdir="$subpkgdir/usr/share/licenses/$pkgname"
+ mkdir -p "$licdir"
+ rm -f licenses/docutils.conf
+ cp licenses/* "$licdir"
+}
+
+sha512sums="1ed72c2ef7d2ca38d1c6f3154b7986ea46f599d9bd826405a5257fdd7740c8626957d6298aa95fb0edea8a24515de22f1ad9b2ecbd59341a1ab7a2bab30f500c py3-docutils-0.14.tar.gz"
diff --git a/user/py3-olefile/APKBUILD b/user/py3-olefile/APKBUILD
new file mode 100644
index 000000000..4709626ae
--- /dev/null
+++ b/user/py3-olefile/APKBUILD
@@ -0,0 +1,36 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-olefile
+_pkgname=olefile
+pkgver=0.44
+pkgrel=0
+pkgdesc="A Python module to read/write MS OLE2 files"
+url="https://pypi.python.org/pypi/olefile"
+arch="noarch"
+license="Custom"
+depends="python3"
+makedepends="py3-setuptools python3-dev"
+install=""
+giturl="https://github.com/decalage2/olefile"
+verbase="$pkgver"
+reporev="v$pkgver"
+# The downloads from GitHub are missing the test files
+source="https://dev.sick.bike/$pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ PYTHONPATH="build/lib" python3 tests/test_olefile.py
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="bece8b040cb3572c1fa2536a21c1de4c05e560b641e1c6e4bf66772135c43d29e06c7fc47d6c07d3c351b1f741f49c63201657634c33e9124de892e9a0cc053f py3-olefile-0.44.tar.gz"
diff --git a/user/py3-pillow/APKBUILD b/user/py3-pillow/APKBUILD
new file mode 100644
index 000000000..c995de7f5
--- /dev/null
+++ b/user/py3-pillow/APKBUILD
@@ -0,0 +1,54 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-pillow
+_pkgname=Pillow
+pkgver=5.0.0
+pkgrel=0
+pkgdesc="A Python Imaging Library"
+url="https://pypi.python.org/pypi/Pillow/$pkgver"
+arch="all"
+license="Custom"
+depends="py3-olefile python3"
+makedepends="python3-dev py3-setuptools freetype-dev jpeg-dev libwebp-dev
+ tiff-dev libpng-dev lcms2-dev openjpeg-dev zlib-dev"
+subpackages="$pkgname-doc"
+_scripts_rev="f578e2c"
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ $pkgname-scripts-$_scripts_rev.tar.gz::https://github.com/python-pillow/pillow-scripts/archive/$_scripts_rev.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+unpack() {
+ default_unpack
+ mv pillow-scripts-*/Scripts "$builddir/Scripts"
+}
+
+build() {
+ cd "$builddir"
+ # zlib resides in lib
+ export CFLAGS="$CFLAGS -L/lib"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ PYTHONPATH="$(find 'build' -name 'lib.*')" python3 selftest.py
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+doc() {
+ pkgdesc="Example scripts for $pkgname"
+ depends="$pkgname"
+
+ cd "$builddir"
+ local destdir="$subpkgdir/usr/share/doc/$pkgname"
+ install -d "$destdir"/Scripts
+ install -m 644 Scripts/* "$destdir"/Scripts/
+ install -Dm644 LICENSE "$subpkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+sha512sums="f6f1e138effe44a89897f48032a36406dab3c4ddff2a97b7d01e99c05865abad5cffa3ab0eefcacb243e422778063b49243b1a538012fe9c39a1e4329c0978f3 py3-pillow-5.0.0.tar.gz
+1a2e6dc45127b3f0b706d5be4fdc8ddeb09a9e046a182eb48239572e1bdc62d1b1f1a1f11ef1f1f23766aaac1b498556cc9a9cf11d3b943c9f2834c9b41612e0 py3-pillow-scripts-f578e2c.tar.gz"
diff --git a/user/py3-pluggy/APKBUILD b/user/py3-pluggy/APKBUILD
new file mode 100644
index 000000000..b71d8de07
--- /dev/null
+++ b/user/py3-pluggy/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-pluggy
+_pkgname=pluggy
+pkgver=0.6.0
+pkgrel=0
+pkgdesc="Plugin management and hook calling for Python"
+url="https://pypi.python.org/pypi/pluggy"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="python3-dev py3-setuptools"
+#checkdepends="py3-tox"
+options="!check" # Cyclic dependency with py3-tox. Passes on x86_64
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ tox -e py36-pytestrelease
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="dd58dabe2e65eee64d62c8748c2bbd99457288e99b819eb12312f2acdb0740ac46fd08f83522bc992297b9f14eec14c216c2c9688580f68393bf6fc609e65812 py3-pluggy-0.6.0.tar.gz"
diff --git a/user/py3-py/APKBUILD b/user/py3-py/APKBUILD
new file mode 100644
index 000000000..171ac8245
--- /dev/null
+++ b/user/py3-py/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-py
+_pkgname=py
+pkgver=1.4.34
+pkgrel=0
+pkgdesc="A python library with cross-python path, ini-parsing, io, code, log facilities"
+url="https://pypi.python.org/py/$pkgver"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="python3-dev py3-setuptools"
+#checkdepends="py3-tox"
+options="!check" # Circular dependency with py3-tox. Passes on x86_64
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ # This test suite seems to be incurring the wrath of
+ # https://bugs.python.org/issue28627 on 1.5.2
+ cd "$builddir"
+ tox -e py36
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="2e19c82c8315274bffe0ba2c7e20ae3af95f942c40c16121ec953af186f8ff33e8f427c070e137bb04b7cc6dcc6779e35df3911c08595fd3294b5ec9897706e1 py3-py-1.4.34.tar.gz"
diff --git a/user/py3-pytest/APKBUILD b/user/py3-pytest/APKBUILD
new file mode 100644
index 000000000..39b723529
--- /dev/null
+++ b/user/py3-pytest/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-pytest
+_pkgname=pytest
+pkgver=3.2.2
+pkgrel=0
+pkgdesc="A python test library"
+url="https://pypi.python.org/pypi/pytest"
+arch="noarch"
+license="MIT"
+depends="python3 py3-py"
+makedepends="py3-setuptools python3-dev"
+#checkdepends="py3-tox"
+options="!check" # Circular dependency with py3-tox. Passes on x86_64
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ tox -e py36
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="6df3a50e7d1efeaf7a283920b16d1daf800798f422bc851b0aacd2bbd5cb0a88c95f9057fae49943b9dfe6527ed552cdf8d983b944ab91d0af252ee4f6eb82db py3-pytest-3.2.2.tar.gz"
diff --git a/user/py3-roman/APKBUILD b/user/py3-roman/APKBUILD
new file mode 100644
index 000000000..ce00a3785
--- /dev/null
+++ b/user/py3-roman/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-roman
+_pkgname=roman
+pkgver=2.0.0
+pkgrel=2
+pkgdesc="Python library to convert integers to Roman numerals"
+url="http://pypi.python.org/pypi/roman"
+arch="noarch"
+license="Python-2.1.1" # not SPDX
+depends="python3"
+makedepends="python3-dev py3-setuptools unzip"
+checkdepends="py3-tox"
+source="$pkgname-$pkgver.zip::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.zip
+ py36.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ # Do not bootstrap - tries to access web
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ tox -e py36
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="d62a95e835232821dbf7a81d0c6b7df63f18c4116cfc7eee0c691a0b31d3d7b69d2dc2e4ea26e0a169a8e24bf080e8bb1e195b853be4adf1491335a5b4d5702c py3-roman-2.0.0.zip
+8f6bfe0f7259db6091b71c8744592de34ca305a30b5ac44cb366fd3e71ebbead21b892939a15b19cd0e344445f981f16ae493bb70ade171b2ba1d92daa431931 py36.patch"
diff --git a/user/py3-roman/py36.patch b/user/py3-roman/py36.patch
new file mode 100644
index 000000000..fc74674a7
--- /dev/null
+++ b/user/py3-roman/py36.patch
@@ -0,0 +1,10 @@
+--- roman-2.0.0/tox.ini 2013-02-25 10:15:52.000000000 +0000
++++ roman-2.0.0/tox.ini 2018-01-11 02:04:11.950000000 +0000
+@@ -1,6 +1,6 @@
+ [tox]
+ envlist =
+- py26,py27,py33,pypy
++ py26,py27,py33,pypy,py36
+
+ [testenv]
+ commands =
diff --git a/user/py3-setuptools/APKBUILD b/user/py3-setuptools/APKBUILD
new file mode 100644
index 000000000..ba5e1aebf
--- /dev/null
+++ b/user/py3-setuptools/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-setuptools
+_pkgname=setuptools
+pkgver=38.4.0
+pkgrel=1
+pkgdesc="A collection of enhancements to the Python distutils"
+url="http://pypi.python.org/pypi/setuptools"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="python3-dev"
+#checkdepends="py3-tox"
+options="!check" # Circular dependency with py3-tox. Passes on x86_64
+subpackages="py3-easy_install:easy_install"
+# Note: PyPI download is missing tests/requirements.txt
+source="$pkgname-$pkgver.tar.gz::https://github.com/pypa/$_pkgname/archive/v$pkgver.tar.gz
+ pythonpath.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 bootstrap.py
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ PYTHONPATH="$builddir" TOXENV="py36" tox
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+easy_install() {
+ pkgdesc="Python easy_install tool (deprecated)"
+ depends="$pkgname python3"
+ mkdir -p "$subpkgdir/usr/bin"
+ mv "$pkgdir"/usr/bin/easy_install* "$subpkgdir/usr/bin"
+}
+
+sha512sums="81903ee7ecb19715bbafe7b4e6878d3af5f801a9ff3334e82a599a81a8e6430443c4b765180c53c3c9cdcea338b3fff0bdf26245bc9d2da7d5d41b745de73a24 py3-setuptools-38.4.0.tar.gz
+0c80433534dbb715829f48713690a72a68f6cb7e337215c9aa507df0fbb2a2a242f54d42fab848c6f03729f155dfe0ccb819a6f5d5230e2195e94e20094eec0b pythonpath.patch"
diff --git a/user/py3-setuptools/pythonpath.patch b/user/py3-setuptools/pythonpath.patch
new file mode 100644
index 000000000..371804f55
--- /dev/null
+++ b/user/py3-setuptools/pythonpath.patch
@@ -0,0 +1,10 @@
+--- setuptools-38.4.0/tox.ini 2018-01-05 13:17:02.000000000 +0000
++++ setuptools-38.4.0/tox.ini 2018-01-11 01:50:05.810000000 +0000
+@@ -6,6 +6,6 @@
+
+ [testenv]
+ deps=-rtests/requirements.txt
+-passenv=APPDATA USERPROFILE HOMEDRIVE HOMEPATH windir APPVEYOR
++passenv=APPDATA USERPROFILE HOMEDRIVE HOMEPATH windir APPVEYOR PYTHONPATH
+ commands=py.test {posargs}
+ usedevelop=True
diff --git a/user/py3-tox/APKBUILD b/user/py3-tox/APKBUILD
new file mode 100644
index 000000000..9ae7e731a
--- /dev/null
+++ b/user/py3-tox/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-tox
+_pkgname=tox
+pkgver=2.9.1
+pkgrel=0
+pkgdesc="virtualenv management and test command line tool"
+url="https://pypi.python.org/pypi/tox"
+arch="noarch"
+license="MIT"
+depends="py3-py py3-pluggy py3-virtualenv py3-six python3"
+makedepends="python3-dev py3-setuptools"
+#checkdepends="py3-pytest py3-tox"
+options="!check" # Circular dependency with itself and py3-pytest. Passes on x86_64
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ tox -e py36
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="ff19b2bb7ac963379f1cccd4973ad9eb4dabfbda976cde7caba50ad010d8fa57c1cba91d63e3e0512e44cc7d350bc9270fbd9b30db1bd55f7d9c239e7623d066 py3-tox-2.9.1.tar.gz"
diff --git a/user/py3-virtualenv/APKBUILD b/user/py3-virtualenv/APKBUILD
new file mode 100644
index 000000000..0d4212635
--- /dev/null
+++ b/user/py3-virtualenv/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-virtualenv
+_pkgname=virtualenv
+pkgver=15.1.0
+pkgrel=0
+pkgdesc="Virtual Python Environment builder"
+url="https://pypi.python.org/pypi/virtualenv"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="python3-dev"
+checkdepends="py3-pytest py3-setuptools cmd:which"
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ test-python3.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+ sed -ie "s/env python$/env python3/" virtualenv.py
+}
+
+check() {
+ cd "$builddir"
+ python3 setup.py test
+ cd tests
+ ./test_activate.sh
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="d7e95b8c017ec076210f30b6fd4bb44be2f7dc0257492c25bb00fee597d3ade34226d03539180f1edaf2d27b361f8efdabb92d3476e13785b890878ee1295cb2 py3-virtualenv-15.1.0.tar.gz
+8e022416eb10289fd5215f3810203eefb450ce2fca7bdc581b5cd1892f41f34815beec35fc6c744991536c1f2edebd58ab934a4414c6fe2ae6387aea02787ef8 test-python3.patch"
diff --git a/user/py3-virtualenv/test-python3.patch b/user/py3-virtualenv/test-python3.patch
new file mode 100644
index 000000000..8b4a99b51
--- /dev/null
+++ b/user/py3-virtualenv/test-python3.patch
@@ -0,0 +1,74 @@
+--- virtualenv-15.1.0/tests/test_activate_output.expected 2016-11-16 02:39:30.000000000 +0000
++++ virtualenv-15.1.0/tests/test_activate_output.expected 2018-01-10 23:31:17.840000000 +0000
+@@ -1,2 +1,4 @@
+-New python executable in /tmp/test_virtualenv_activate.venv/bin/python
++Using base prefix '/usr'
++New python executable in /tmp/test_virtualenv_activate.venv/bin/python3
++Also creating executable in /tmp/test_virtualenv_activate.venv/bin/python
+ Installing setuptools, pip, wheel...done.
+--- virtualenv-15.1.0/tests/test_virtualenv.py 2016-11-16 02:39:30.000000000 +0000
++++ virtualenv-15.1.0/tests/test_virtualenv.py 2018-01-11 03:40:22.270000000 +0000
+@@ -58,13 +58,13 @@
+ def test_activate_after_future_statements():
+ """Should insert activation line after last future statement"""
+ script = [
+- '#!/usr/bin/env python',
++ '#!/usr/bin/env python3',
+ 'from __future__ import with_statement',
+ 'from __future__ import print_function',
+ 'print("Hello, world!")'
+ ]
+ assert virtualenv.relative_script(script) == [
+- '#!/usr/bin/env python',
++ '#!/usr/bin/env python3',
+ 'from __future__ import with_statement',
+ 'from __future__ import print_function',
+ '',
+@@ -110,7 +110,7 @@
+ if virtualenv.is_win:
+ required_executables = ['python.exe', 'pythonw.exe']
+ else:
+- py_exe_no_version = 'python'
++ py_exe_no_version = 'python3'
+ py_exe_version_major = 'python%s' % sys.version_info[0]
+ py_exe_version_major_minor = 'python%s.%s' % (
+ sys.version_info[0], sys.version_info[1])
+--- virtualenv-15.1.0/tests/test_activate.sh 2016-11-16 02:39:30.000000000 +0000
++++ virtualenv-15.1.0/tests/test_activate.sh 2018-01-11 03:49:05.070000000 +0000
+@@ -19,7 +19,7 @@
+ echo "$0: Created virtualenv ${TESTENV}." 1>&2
+
+ echo "$0: Activating ${TESTENV}..." 1>&2
+-. ${TESTENV}/bin/activate
++PS1="${PS1:-}" . ${TESTENV}/bin/activate
+ echo "$0: Activated ${TESTENV}." 1>&2
+
+ echo "$0: Checking value of \$VIRTUAL_ENV..." 1>&2
+@@ -31,14 +31,14 @@
+
+ echo "$0: \$VIRTUAL_ENV = \"${VIRTUAL_ENV}\" -- OK." 1>&2
+
+-echo "$0: Checking output of \$(which python)..." 1>&2
++echo "$0: Checking output of \$(which python3)..." 1>&2
+
+-if [ "$(which python)" != "${TESTENV}/bin/python" ]; then
+- echo "$0: Expected \$(which python) to return \"${TESTENV}/bin/python\"; actual value: \"$(which python)\"!" 1>&2
++if [ "$(which python3)" != "${TESTENV}/bin/python3" ]; then
++ echo "$0: Expected \$(which python3) to return \"${TESTENV}/bin/python3\"; actual value: \"$(which python3)\"!" 1>&2
+ exit 3
+ fi
+
+-echo "$0: Output of \$(which python) is OK." 1>&2
++echo "$0: Output of \$(which python3) is OK." 1>&2
+
+ echo "$0: Checking output of \$(which pip)..." 1>&2
+
+@@ -60,7 +60,7 @@
+
+ echo "$0: Executing a simple Python program..." 1>&2
+
+-TESTENV=${TESTENV} python <<__END__
++TESTENV=${TESTENV} python3 <<__END__
+ import os, sys
+
+ expected_site_packages = os.path.join(os.environ['TESTENV'], 'lib','python%s' % sys.version[:3], 'site-packages')
diff --git a/user/schismtracker/APKBUILD b/user/schismtracker/APKBUILD
new file mode 100644
index 000000000..0394a6d06
--- /dev/null
+++ b/user/schismtracker/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Horst Burkhardt <horst@adelielinux.org>
+# Maintainer: Horst Burkhardt <horst@adelielinux.org>
+pkgname=schismtracker
+pkgver=20180209
+pkgrel=0
+pkgdesc="A highly portable Impulse Tracker clone"
+url="http://schismtracker.org/"
+arch="all"
+license="GPL-2.0-only"
+options="!check" # No test suite.
+depends=""
+makedepends="python3 libtool sdl-dev libx11-dev libxdmcp-dev libxau-dev libxext-dev libbsd-dev"
+source="schismtracker-20180209.tar.gz::https://github.com/schismtracker/schismtracker/archive/20180209.tar.gz"
+subpackages="$pkgname-doc"
+
+build() {
+ cd "$builddir"
+ autoreconf -i
+ ./configure \
+ --enable-fortify-source \
+ --prefix=/usr
+ make
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+sha512sums="0bc5b43dd491db8b63d4a0c980a25b48c1e91a113633a034ea3281d664c52b13bcae7a0b8e12d6862b39078b544e0c91721f8a73e3f0536f3b748f548c701140 schismtracker-20180209.tar.gz"
diff --git a/user/xcape/APKBUILD b/user/xcape/APKBUILD
new file mode 100644
index 000000000..327e3579d
--- /dev/null
+++ b/user/xcape/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=xcape
+pkgver=1.2
+pkgrel=0
+pkgdesc="Utility to make modifier keys act as other keys when pressed and released on their own"
+url="https://github.com/alols/xcape"
+arch="all"
+license="GPL-3.0+"
+depends=""
+makedepends="pkgconf libx11-dev libxtst-dev"
+install=""
+subpackages="$pkgname-doc"
+source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$pkgname-$pkgver"
+options="!check" # No test suite.
+
+build() {
+ cd "$builddir"
+ make
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" MANDIR="/share/man/man1" install
+}
+
+sha512sums="5ae8502250a9ec55a4b0c5f7301c1597c652b76904261153b720362e3c5882e8db980c85396a2594f99ae2fb72ab7070c1b06c9432d54b7da84975ff45b25a79 xcape-1.2.tar.gz"