diff options
-rw-r--r-- | .SRCINFO | 17 | ||||
-rw-r--r-- | PKGBUILD | 42 | ||||
-rw-r--r-- | inferno.install | 19 | ||||
-rwxr-xr-x | make-install-root.sh | 34 |
4 files changed, 112 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..4c7d6c603233 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,17 @@ +pkgbase = inferno + pkgdesc = A compact operating system designed for building distributed and networked systems. (Prebuilt) + pkgver = 20150328 + pkgrel = 1 + url = https://bitbucket.org/inferno-os/inferno-os + install = inferno.install + arch = any + license = GPL2 + provides = inferno + conflicts = inferno + source = http://www.vitanuova.com/dist/4e/inferno-20150328.tgz + source = make-install-root.sh + sha256sums = 3f648d01a5264e1e4fd773824581205cdf9efe0a2e505298d07db21e1828ef7f + sha256sums = SKIP + +pkgname = inferno + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..ddff762e51d2 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,42 @@ +# Maintainer: Konstantinos Foutzopoulos <mail@konfou.xyz> + +pkgname=inferno +pkgver=20150328 +pkgrel=1 +pkgdesc='A compact operating system designed for building distributed and networked systems. (Prebuilt)' +arch=('any') +url='https://bitbucket.org/inferno-os/inferno-os' +license=('GPL2') +#depends=('gcc-libs' 'libx11' 'libext') +depends_x86_64=('lib32-gcc-libs' 'lib32-libx11' 'lib32-libxext') +#makedepends=('gcc' 'glibc' 'mercurial') +#makedepends_x86_64=('gcc-multilib' 'lib32-glibc' 'mercurial') +provides=("${pkgname}") +conflicts=("${pkgname}") +source=("http://www.vitanuova.com/dist/4e/${pkgname}-${pkgver}.tgz" + "make-install-root.sh") +sha256sums=('3f648d01a5264e1e4fd773824581205cdf9efe0a2e505298d07db21e1828ef7f' + 'SKIP') +install=${pkgname}.install + +build() { + cat > "${pkgname}/inferno" << 'END' +#!/usr/bin/env bash +ROOT="/usr/local/inferno" +IBIN="$ROOT/Linux/386/bin" +export PATH="$IBIN:$PATH" +export EMU="-r$ROOT" +exec emu "$@" +END +} + +package() { + export IROOT="usr/local/inferno" + ./make-install-root.sh "${pkgname}" "${pkgdir}/${IROOT}" + find "${pkgdir}/${IROOT}" -path "${pkgdir}/${IROOT}/Linux" -prune -o -exec chmod g+w {} + + mkdir -p "${pkgdir}/${IROOT}/Linux" + cp -r "${pkgname}/Linux/386" "${pkgdir}/${IROOT}/Linux/" + mkdir -p "${pkgdir}/usr/bin" + install -D -m755 "${pkgname}/inferno" "${pkgdir}/usr/bin/inferno" + install -D -m644 "${pkgname}/NOTICE" "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE" +}
\ No newline at end of file diff --git a/inferno.install b/inferno.install new file mode 100644 index 000000000000..502c018b9e5a --- /dev/null +++ b/inferno.install @@ -0,0 +1,19 @@ +post_install() { + groupadd inferno + IROOT=/usr/local/inferno + find $IROOT -path $IROOT/Linux -prune -o -exec chgrp inferno {} + + cat << 'END' + Permissions for a user to modify the files are needed. + This can be done adding a user to the group inferno with: + # usermod -a -G inferno $USER + For how to procceed you can read the doc/install.ms manual. + On the host system this can be done as: + # nroff -ms /usr/local/inferno/doc/install.ms | less + After invoking inferno (an emu wrapper) this can be dones as: + ; man -f /doc/install.ms | p +END +} + +post_remove() { + groupdel inferno +}
\ No newline at end of file diff --git a/make-install-root.sh b/make-install-root.sh new file mode 100755 index 000000000000..dd856c9dbe43 --- /dev/null +++ b/make-install-root.sh @@ -0,0 +1,34 @@ +#!/usr/bin/bash + +mkdir -p $2 +mkdir -p $2/mail +mkdir -p $2/n/cd +mkdir -p $2/n/client/chan +mkdir -p $2/n/client/dev +mkdir -p $2/n/disk +mkdir -p $2/n/dist +mkdir -p $2/n/dos +mkdir -p $2/n/dump +mkdir -p $2/n/ftp +mkdir -p $2/n/gridfs +mkdir -p $2/n/kfs +mkdir -p $2/n/local +mkdir -p $2/n/rdbg +mkdir -p $2/n/registry +mkdir -p $2/n/remote +mkdir -p $2/tmp +mkdir -p $2/usr + +cp -r $1/acme $2/ +cp -r $1/appl $2/ +cp -r $1/dis $2/ +cp -r $1/doc $2/ +cp -r $1/fonts $2/ +cp -r $1/icons $2/ +cp -r $1/keydb $2/ +cp -r $1/lib $2/ +cp -r $1/locale $2/ +cp -r $1/man $2/ +cp -r $1/module $2/ +cp -r $1/services $2/ +cp -r $1/usr $2/ |