Browse Source
I'm pushing this repo onto a hashbang.sh server, so I can auto-build my git packages.master
mid-kid
9 years ago
90 changed files with 1498 additions and 357 deletions
@ -0,0 +1,161 @@ |
|||
#!/bin/sh -e |
|||
|
|||
# A script to check for satellite updates. |
|||
# It just downloads the documents which should be updated when the software has an update. |
|||
# It's a shitty method, but it kinda works... Other than having a lot of false-positives. |
|||
|
|||
_show_help() { |
|||
echo "This program will help keep your satellites fresh and up to date. |
|||
Usage: $0 <[\$dir_satellites] [\$_dir_fresh]|ignore <diff> <ignorediff>> |
|||
|
|||
\$dir_satellites = The directory where all the satellites are you want to update. |
|||
\$_dir_fresh = The directory that will be used to keep all the files for checking. |
|||
ignore = Use this option to generate an ignorediff. |
|||
diff = A diff file. Generated without -u or any other fancy options. |
|||
ignorediff = A file containing the differences to be ignored (this file will be appended to). |
|||
|
|||
The variables (starting with \$) can also be set from a configuration file." |
|||
} |
|||
|
|||
get_variable() { |
|||
printf " |
|||
download() { :; } |
|||
extract() { :; } |
|||
getfile() { :; } |
|||
extrafile() { :; } |
|||
dlextract() { :; } |
|||
dlfile() { :; } |
|||
header_end() { echo \$$1; exit; } |
|||
. %s |
|||
" $2 | sh |
|||
} |
|||
|
|||
download() { |
|||
$(echo "$cmd_download" | sed -e 's@{dst}@'"$2"'@g' -e 's@{src}@'"$1"'@g') 2> /dev/null |
|||
} |
|||
|
|||
diff_extractlines() { |
|||
# Extract all the line numbers from a diff. |
|||
|
|||
stage=0 |
|||
for line in $(echo "$1" | awk '{print $1}'); do |
|||
if [ "$stage" = 0 ]; then |
|||
if [ "$line" != ">" -a "$line" != "<" ]; then |
|||
echo "$line" |
|||
stage=1 |
|||
fi |
|||
elif [ "$stage" = 1 ]; then |
|||
if [ "$line" != ">" -a "$line" != "<" ]; then |
|||
if [ "$line" = "---" ]; then |
|||
stage=0 |
|||
else |
|||
echo "$line" |
|||
fi |
|||
fi |
|||
fi |
|||
done |
|||
} |
|||
|
|||
apply_ignorediff() { |
|||
# Filter a diff, only return the differences that shouldn't be ignored. |
|||
# TODO: This function is slow, due to the usage of awk on every line. A solution for this problem would be great. |
|||
|
|||
stage=0 |
|||
ignore=0 |
|||
echo "$1" | while read line; do |
|||
first="$(echo "$line" | awk '{print $1}')" |
|||
if [ "$stage" = 0 ]; then |
|||
if [ "$first" != ">" -a "$first" != "<" ]; then |
|||
stage=1 |
|||
ignore=0 |
|||
if grep -e "^$line\$" "$2" > /dev/null; then |
|||
ignore=1 |
|||
fi |
|||
fi |
|||
elif [ "$stage" = 1 ]; then |
|||
if [ "$first" != ">" -a "$first" != "<" ]; then |
|||
if [ "$line" = "---" ]; then |
|||
stage=0 |
|||
else |
|||
ignore=0 |
|||
if grep -e "^$line\$" "$2" > /dev/null; then |
|||
ingore=1 |
|||
fi |
|||
fi |
|||
fi |
|||
fi |
|||
|
|||
if [ "$ignore" = 0 ]; then |
|||
echo "$line" |
|||
fi |
|||
done |
|||
} |
|||
|
|||
# Do something completely different when this option is provided. |
|||
if [ "$1" = "ignore" ]; then |
|||
if [ $# -lt 3 ]; then |
|||
_show_help |
|||
exit 1 |
|||
fi |
|||
|
|||
diff_extractlines "$(cat "$2")" >> "$3" |
|||
|
|||
# Don't do anything else |
|||
exit |
|||
fi |
|||
|
|||
# Load the config |
|||
cmd_download="curl -L -o {dst} {src}" # Command to execute to download files |
|||
[ -f /etc/astronaut.conf ] && . /etc/astronaut.conf |
|||
[ -f "$HOME/.astronaut.conf" ] && . "$HOME/.astronaut.conf" |
|||
|
|||
# Override config with command-line parameters. |
|||
[ "$1" ] && dir_satellites="$1" |
|||
[ "$2" ] && _dir_fresh="$2" |
|||
|
|||
if [ ! "$dir_satellites" -o ! "$_dir_fresh" ]; then |
|||
_show_help |
|||
exit 1 |
|||
fi |
|||
|
|||
mkdir -p "$_dir_fresh" |
|||
|
|||
for sat in "$dir_satellites"/*.sat; do |
|||
update_url="$(get_variable update_url "$sat")" |
|||
name="$(basename "$sat" .sat)" |
|||
|
|||
if [ "$update_url" ]; then |
|||
printf "Checking: $name..." |
|||
cols="$(expr $(tput cols) - $(printf "Checking: $name..." | wc -c))" |
|||
|
|||
download "$update_url" "$_dir_fresh/$name.fresh" |
|||
|
|||
if [ -f "$_dir_fresh/$name" ]; then |
|||
check="$(diff "$_dir_fresh/$name" "$_dir_fresh/$name.fresh" || true)" |
|||
|
|||
if [ -f "$_dir_fresh/$name.ignorediff" ]; then |
|||
check="$(apply_ignorediff "$check" "$_dir_fresh/$name.ignorediff")" |
|||
fi |
|||
|
|||
if [ "$check" ]; then |
|||
printf "%${cols}s\n" "Update detected" |
|||
echo "$check" >> "$_dir_fresh/$name-$(date +%Y%m%d%H%M%S).diff" |
|||
else |
|||
printf "\n" |
|||
fi |
|||
else |
|||
printf "%${cols}s\n" "First update check, creating new file" |
|||
download "$update_url" "$_dir_fresh/$name.checkfresh" |
|||
check="$(diff "$_dir_fresh/$name.fresh" "$_dir_fresh/$name.checkfresh" || true)" |
|||
|
|||
if [ "$check" ]; then |
|||
echo "$(diff_extractlines "$check")" >> "$_dir_fresh/$name.ignorediff" |
|||
echo "> Created ignorediff" |
|||
fi |
|||
|
|||
rm "$_dir_fresh/$name.checkfresh" |
|||
fi |
|||
|
|||
mv "$_dir_fresh/$name.fresh" "$_dir_fresh/$name" |
|||
fi |
|||
done |
@ -0,0 +1,18 @@ |
|||
# This is a functions file. You can use this kind of files to share code between satellites. |
|||
|
|||
# You define a function here, and it becomes available in any script that imports it. |
|||
say_hello() { |
|||
# Any function or variable that shouldn't be seen by the satellite is prefixed with "_func_" |
|||
_func_tmp="Hello, there!" |
|||
echo "Function ran! $_func_tmp" |
|||
} |
|||
|
|||
# Any hook is prefixed with "_hook_" |
|||
_hook_hello() { |
|||
echo "The hook ran at header_end!" |
|||
} |
|||
|
|||
# This is a space-separated list of all the hooks. |
|||
_hooks="_hook_hello" |
|||
# Hooks are functions with code that is run at header_end, regardless if you're in download-only mode. So don't go messing in the build directory here. |
|||
# This is purely to set variables (like update_url), maybe download code, or something else. |
@ -0,0 +1,18 @@ |
|||
# Template satellite file without all the comments. |
|||
|
|||
name=hello |
|||
version=2.10 |
|||
update_url="https://ftp.gnu.org/gnu/$name/" |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \ |
|||
"6cd0ffea3884a4e79330338dcc2987d6" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix="$prefix" |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,21 @@ |
|||
#!/bin/sh -e |
|||
# A hacky script to generate .xbps files using satellites. |
|||
# It's a fairly simple wrapper to astronaut, that generates a xbps package at the end. |
|||
|
|||
# This may also serve as an example on how you can wrap astronaut to package in any format. |
|||
# Sure, no dependency resolution, and the packages won't make it in any official repositories, |
|||
# but it isn't meant for that anyway. |
|||
|
|||
_topdir=$PWD |
|||
_astronaut="$(dirname "$0")/astronaut" |
|||
[ ! -f "$_astronaut" ] && _astronaut="astronaut" |
|||
|
|||
_nuke_dir_install=true |
|||
|
|||
. "$_astronaut" |
|||
|
|||
# _dir_xbps should be set from a configuration file (e.g. ~/.astronaut.conf), and points to wherever you want your packages to be placed. |
|||
[ "$_dir_xbps" ] && mkdir -p "$_dir_xbps" && cd "$_dir_xbps" || cd "$_topdir" |
|||
xbps-create --compression none -A "$(uname -m)" -n "$_satname-${version}_astro" -s "Generated with xbps-astronaut" -H "$update_url" "$dir_install" |
|||
rm -rf "$dir_install" |
|||
xbps-rindex -f -a "$_satname-${version}_astro.$(uname -m).xbps" |
@ -0,0 +1,9 @@ |
|||
First attempt died on 18 november 2015. |
|||
Latest update is unknown. |
|||
Birth date is unknown. |
|||
|
|||
Description: |
|||
The first attempt was the first attempt I made at making a distro. |
|||
|
|||
Cause of death: |
|||
Because the latest changes only being version bumps, and me having never actually tested those changes, and after I've made some substantial changes in how satellites are written (adding functions, support for vcs, header_end hooks, etc.), I've decided that if I ever take up making a distro again, I'll rewrite all of these satellites from scratch anyway. |
@ -0,0 +1,18 @@ |
|||
name=acl |
|||
version=2.2.52 |
|||
update_url="http://download.savannah.gnu.org/releases/$name/" |
|||
|
|||
enable_check=false # These tests require a specific filesystem. |
|||
|
|||
dlextract "http://download.savannah.gnu.org/releases/$name/$name-$version.src.tar.gz" \ |
|||
"a61415312426e9c2212bd7dc7929abda" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make -j1 tests |
|||
make DIST_ROOT="$dir_install" install install-lib install-dev |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,18 @@ |
|||
name=attr |
|||
version=2.4.47 |
|||
update_url="http://download.savannah.gnu.org/releases/$name/" |
|||
|
|||
enable_check=false # These tests require a specific filesystem. |
|||
|
|||
dlextract "http://download.savannah.gnu.org/releases/$name/$name-$version.src.tar.gz" \ |
|||
"84f58dec00b60f2dc8fd1c9709291cc7" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make -j1 tests root-tests |
|||
make DIST_ROOT="$dir_install" install install-lib install-dev |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,16 @@ |
|||
name=binutils |
|||
version=2.25.1 |
|||
enable_check=false |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
"ac493a78de4fee895961d025b7905be4" |
|||
header_end |
|||
|
|||
mkdir "$name-build"; cd "$name-build" |
|||
|
|||
"../$name-$version/configure" --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,16 @@ |
|||
name=coreutils |
|||
version=8.24 |
|||
update_url="https://ftp.gnu.org/gnu/$name/" |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz" \ |
|||
"40efdbce865d2458d8da0a9dcee7c16c" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr --enable-no-install-program=kill |
|||
make |
|||
do_check make check # NEED: user nobody, group nogroup, diff -c |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,15 @@ |
|||
name=file |
|||
version=5.24 |
|||
|
|||
dlextract "ftp://ftp.astron.com/pub/$name/$name-$version.tar.gz" \ |
|||
"ec161b5a0d2aef147fb046e5630b1408" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,23 @@ |
|||
name=gcc |
|||
version=5.2.0 |
|||
enable_check=false |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version/$name-$version.tar.bz2" \ |
|||
"a51bcfeb3da7dd4c623e27207ed43467" |
|||
header_end |
|||
|
|||
mkdir "$name-build"; cd "$name-build" |
|||
|
|||
SED=sed "../$name-$version/configure" --prefix=/usr --enable-languages=c,c++ --with-system-zlib --disable-bootstrap --disable-multilib |
|||
make |
|||
if do_check; then |
|||
ulimit -s 32768 |
|||
make -k check |
|||
fi |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
ln -s gcc "$dir_install/usr/bin/cc" |
|||
mkdir -p "$dir_install/usr/lib/bfd-plugins" |
|||
ln -s "../../libexec/gcc/$(gcc -dumpmachine)/5.2.0/liblto_plugin.so" "$dir_install/usr/lib/bfd-plugins/" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,19 @@ |
|||
name=glibc |
|||
version=2.22 |
|||
enable_check=false |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/libc/$name-$version.tar.xz" \ |
|||
"e51e02bf552a0a1fbbdc948fb2f5e83c" |
|||
header_end |
|||
|
|||
mkdir "$name-build"; cd "$name-build" |
|||
|
|||
"../$name-$version/configure" --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# It likes leaving this file here. Something it really shouldn't. |
|||
rm "$dir_install/etc/ld.so.cache" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,16 @@ |
|||
name=gmp |
|||
shortver=6.0.0 |
|||
version=${shortver}a |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz" \ |
|||
"1e6da4e434553d2811437aa42c7f7c76" |
|||
header_end |
|||
|
|||
cd "$name-$shortver" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,7 @@ |
|||
tar |
|||
perl |
|||
stow |
|||
openssl |
|||
ca-certificates |
|||
curl |
|||
astronaut |
@ -0,0 +1,8 @@ |
|||
linux-api |
|||
glibc # Adjust the toolchain after (http://linuxfromscratch.org/lfs/view/stable/chapter06/adjusting.html) |
|||
binutils |
|||
gmp # From here, run ldconfig after every package install. |
|||
mpfr |
|||
mpc |
|||
zlib # Dependency of gcc |
|||
gcc |
@ -0,0 +1,14 @@ |
|||
name=linux |
|||
version=4.1.6 |
|||
|
|||
dlextract "https://www.kernel.org/pub/$name/kernel/v4.x/$name-$version.tar.xz" \ |
|||
"1dae0c808e34164cab3dfd57be88bd53" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
make mrproper |
|||
make INSTALL_HDR_PATH="$dir_install/usr" headers_install |
|||
find "$dir_install/usr/include" \( -name .install -o -name ..install.cmd \) -delete |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,15 @@ |
|||
name=mpc |
|||
version=1.0.3 |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \ |
|||
"d6a1d5f8ddea3abd2cc3e98f58352d26" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,15 @@ |
|||
name=mpfr |
|||
version=3.1.3 |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz" \ |
|||
"6969398cd2fbc56a6af570b5273c56a9" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,16 @@ |
|||
name=shadow |
|||
version=4.2.1 |
|||
update_url="https://pkg-shadow.alioth.debian.org/" |
|||
|
|||
dlextract "https://pkg-shadow.alioth.debian.org/releases/$name-$version.tar.xz" \ |
|||
"2bfafe7d4962682d31b5eba65dba4fc8" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,16 @@ |
|||
name=tar |
|||
version=1.28 |
|||
update_url="https://ftp.gnu.org/gnu/$name/" |
|||
|
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz" \ |
|||
"49b6306167724fe48f419a33a5beb857" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,17 @@ |
|||
name=tzdata |
|||
version=2015f |
|||
|
|||
dlextract "https://www.iana.org/time-zones/repository/releases/$name$version.tar.gz" \ |
|||
"e3b82732d20e973e48af1c6f13df9a1d" |
|||
header_end |
|||
|
|||
timezones="africa antarctica asia australasia backward backzone etcetera europe factory northamerica pacificnew southamerica systemv" |
|||
|
|||
zic -y ./yearistype -d "$dir_install/usr/share/zoneinfo" $timezones |
|||
zic -y ./yearistype -d "$dir_install/usr/share/zoneinfo/posix" $timezones |
|||
zic -y ./yearistype -d "$dir_install/usr/share/zoneinfo/right" -L leapseconds $timezones |
|||
zic -y ./yearistype -d "$dir_install/usr/share/zoneinfo" -p America/New_York |
|||
|
|||
cp zone1970.tab iso3166.tab "$dir_install/usr/share/zoneinfo" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,17 @@ |
|||
name=util-linux |
|||
majver=2.26 |
|||
version=$majver.2 |
|||
update_url="https://www.kernel.org/pub/linux/utils/$name/" |
|||
|
|||
dlextract "https://www.kernel.org/pub/linux/utils/$name/v$majver/$name-$version.tar.xz" \ |
|||
"9bdf368c395f1b70325d0eb22c7f48fb" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install # NEEDS: group tty |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,15 @@ |
|||
name=zlib |
|||
version=1.2.8 |
|||
|
|||
dlextract "http://zlib.net/$name-$version.tar.xz" \ |
|||
"28f1205d8dd2001f26fec1e8c2cebe37" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./configure --prefix=/usr |
|||
make |
|||
do_check make check |
|||
make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -1,5 +1,5 @@ |
|||
#!/bin/bash |
|||
# Copied from LFS 7.6 |
|||
# Copied from LFS 7.7 |
|||
for lib in lib{gmp,mpfr,mpc}.la; do |
|||
echo $lib: $(if find /usr/lib* -name $lib| |
|||
grep -q $lib;then :;else echo not;fi) found |
@ -0,0 +1,54 @@ |
|||
#!/bin/sh |
|||
umask 022 |
|||
set -e |
|||
|
|||
if [ "$(id -u)" != "0" ]; then |
|||
echo "Please run this script as root" 1>&2 |
|||
exit 1 |
|||
fi |
|||
|
|||
if [ ! "$rocket" ]; then |
|||
echo 'Please set the $rocket variable' 1>&2 |
|||
exit 1 |
|||
fi |
|||
|
|||
echo "Changing ownership of $rocket to root" |
|||
chown -R 0.0 "$rocket" |
|||
|
|||
echo "Creating device nodes" |
|||
mkdir -p "$rocket/dev" |
|||
umount -R "$rocket/dev" 2> /dev/null || true |
|||
mknod -m 600 "$rocket/dev/console" c 5 1 2> /dev/null || true |
|||
mknod -m 666 "$rocket/dev/null" c 1 3 2> /dev/null || true |
|||
|
|||
echo "Creating directories" |
|||
install -dm750 "$rocket/root" |
|||
install -dm1777 "$rocket/tmp" |
|||
mkdir -p "$rocket/etc" "$rocket/usr/pkg" "$rocket/usr/sat" |
|||
|
|||
echo "Creating temporary symlinks" |
|||
mkdir -p "$rocket/usr/pkg/tmp-coreutils/bin" |
|||
ln -f "$rocket/tools/bin/busybox" "$rocket/usr/pkg/tmp-coreutils/bin/pwd" |
|||
mkdir -p "$rocket/usr/pkg/tmp-sh/bin" |
|||
ln -f "$rocket/tools/bin/busybox" "$rocket/usr/pkg/tmp-sh/bin/sh" |
|||
mkdir -p "$rocket/usr/pkg/tmp-bash/bin" |
|||
ln -f "$rocket/tools/bin/bash" "$rocket/usr/pkg/tmp-bash/bin/bash" |
|||
mkdir -p "$rocket/usr/pkg/tmp-ca-certificates/etc/ssl" |
|||
ln -sf /tools/ssl/certs "$rocket/usr/pkg/tmp-ca-certificates/etc/ssl/certs" |
|||
mkdir -p "$rocket/usr/pkg/tmp-gcc/usr/lib" |
|||
ln -f "$rocket/tools/lib/libgcc_s.so" "$rocket/usr/pkg/tmp-gcc/usr/lib/libgcc_s.so" |
|||
ln -f "$rocket/tools/lib/libgcc_s.so.1" "$rocket/usr/pkg/tmp-gcc/usr/lib/libgcc_s.so.1" |
|||
ln -f "$rocket/tools/lib/libstdc++.so" "$rocket/usr/pkg/tmp-gcc/usr/lib/libstdc++.so" |
|||
ln -f "$rocket/tools/lib/libstdc++.so.6" "$rocket/usr/pkg/tmp-gcc/usr/lib/libstdc++.so.6" |
|||
ln -f "$rocket/tools/lib/libstdc++.so.6.0.21" "$rocket/usr/pkg/tmp-gcc/usr/lib/libstdc++.so.6.0.21" |
|||
|
|||
echo "Creating users and groups" |
|||
echo 'root:x:0:0:root:/root:/bin/sh |
|||
nobody:x:99:99:Unprivileged User:/dev/null:/bin/false' > "$rocket/etc/passwd" |
|||
echo 'root:x:0: |
|||
tty:x:1: |
|||
nogroup:x:99:' > "$rocket/etc/group" |
|||
|
|||
echo "Configuring stow" |
|||
echo '-d /usr/pkg |
|||
-t /' > "$rocket/etc/stowrc" |
@ -1,4 +1,6 @@ |
|||
# This is a hacky satellite. Please refrain of making more like this if possible. |
|||
|
|||
header_end |
|||
msg "Installing astronaut" |
|||
|
|||
install -Dm755 "$(command -v "$0")" "$dir_install/tools/bin/astronaut" |
@ -1,8 +1,9 @@ |
|||
name=bash |
|||
version=4.3.30 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \ |
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \ |
|||
"a27b3ee9be83bd3ba448c0ff52b28447" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
@ -1,8 +1,9 @@ |
|||
name=binutils |
|||
version=2.25 |
|||
version=2.25.1 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
"e0f71a7b2ddab0f8612336ac81d9636b" |
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
"ac493a78de4fee895961d025b7905be4" |
|||
header_end |
|||
|
|||
mkdir "$name-build"; cd "$name-build" |
|||
|
@ -1,8 +1,9 @@ |
|||
name=binutils |
|||
version=2.25 |
|||
version=2.25.1 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
"e0f71a7b2ddab0f8612336ac81d9636b" |
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
"ac493a78de4fee895961d025b7905be4" |
|||
header_end |
|||
|
|||
mkdir "$name-build"; cd "$name-build" |
|||
|
@ -1,9 +1,10 @@ |
|||
name=busybox |
|||
version=1.23.1 |
|||
version=1.23.2 |
|||
|
|||
dlextract "http://www.busybox.net/downloads/$name-$version.tar.bz2" \ |
|||
"337d1a15ab1cb1d4ed423168b1eb7d7e" |
|||
"7925683d7dd105aabe9b6b618d48cc73" |
|||
extrafile "busybox.config" |
|||
header_end |
|||
|
|||
sed 's@./_install@'"$dir_install/tools"'@' busybox.config > "$name-$version/.config" |
|||
cd "$name-$version" |
@ -0,0 +1,17 @@ |
|||
name=ca-certificates |
|||
version=$(date +%Y%m%d) |
|||
|
|||
dlfile "https://hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt" |
|||
extrafile "make-ca.sh" |
|||
extrafile "make-cert.pl" |
|||
extrafile "remove-expired-certs.sh" |
|||
header_end |
|||
|
|||
./make-ca.sh |
|||
./remove-expired-certs.sh certs |
|||
mkdir -p "$dir_install/tools/ssl/certs" |
|||
cp certs/*.pem "$dir_install/tools/ssl/certs" |
|||
c_rehash "$dir_install/tools/ssl/certs" |
|||
cp ca-certificates.crt "$dir_install/tools/ssl/certs" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,13 @@ |
|||
name=check |
|||
version=0.10.0 |
|||
|
|||
dlextract "https://sourceforge.net/projects/$name/files/$name/$version/$name-$version.tar.gz" \ |
|||
"53c5e5c77d090e103a17f3ed7fd7d8b8" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
PKG_CONFIG= ./configure --prefix=/tools |
|||
make; make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -1,8 +1,9 @@ |
|||
name=curl |
|||
version=7.40.0 |
|||
version=7.44.0 |
|||
|
|||
dlextract "http://curl.haxx.se/download/$name-$version.tar.bz2" \ |
|||
"1efecb5b0e43c17d968f0d228bbbbbbd" |
|||
"6b952ca00e5473b16a11f05f06aa8dae" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
@ -1,8 +1,9 @@ |
|||
name=dejagnu |
|||
version=1.5.2 |
|||
version=1.5.3 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \ |
|||
"8386e04e362345f50ad169f052f4c4ab" |
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.gz" \ |
|||
"5bda2cdb1af51a80aecce58d6e42bd2f" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
@ -1,8 +1,9 @@ |
|||
name=expect |
|||
version=5.45 |
|||
|
|||
dlextract "http://sourceforge.net/projects/$name/files/Expect/$version/$name$version.tar.gz" \ |
|||
dlextract "https://sourceforge.net/projects/$name/files/Expect/$version/$name$version.tar.gz" \ |
|||
"44e1a4f4c877e9ddc5a542dfa7ecc92b" |
|||
header_end |
|||
|
|||
cd "$name$version" |
|||
|
@ -0,0 +1,53 @@ |
|||
#!/bin/sh |
|||
# Begin /usr/sbin/remove-expired-certs.sh |
|||
# |
|||
# Version 20120211 |
|||
|
|||
# Make sure the date is parsed correctly on all systems |
|||
mydate() |
|||
{ |
|||
local y=$( echo $1 | cut -d" " -f4 ) |
|||
local M=$( echo $1 | cut -d" " -f1 ) |
|||
local d=$( echo $1 | cut -d" " -f2 ) |
|||
local m |
|||
|
|||
if [ ${d} -lt 10 ]; then d="0${d}"; fi |
|||
|
|||
case $M in |
|||
Jan) m="01";; |
|||
Feb) m="02";; |
|||
Mar) m="03";; |
|||
Apr) m="04";; |
|||
May) m="05";; |
|||
Jun) m="06";; |
|||
Jul) m="07";; |
|||
Aug) m="08";; |
|||
Sep) m="09";; |
|||
Oct) m="10";; |
|||
Nov) m="11";; |
|||
Dec) m="12";; |
|||
esac |
|||
|
|||
certdate="${y}${m}${d}" |
|||
} |
|||
|
|||
OPENSSL=/usr/bin/openssl |
|||
DIR=/etc/ssl/certs |
|||
|
|||
if [ $# -gt 0 ]; then |
|||
DIR="$1" |
|||
fi |
|||
|
|||
certs=$( find ${DIR} -type f -name "*.pem" -o -name "*.crt" ) |
|||
today=$( date +%Y%m%d ) |
|||
|
|||
for cert in $certs; do |
|||
notafter=$( $OPENSSL x509 -enddate -in "${cert}" -noout ) |
|||
date=$( echo ${notafter} | sed 's/^notAfter=//' ) |
|||
mydate "$date" |
|||
|
|||
if [ ${certdate} -lt ${today} ]; then |
|||
echo "${cert} expired on ${certdate}! Removing..." |
|||
rm -f "${cert}" |
|||
fi |
|||
done |
@ -0,0 +1,21 @@ |
|||
diff -ur stow-2.2.0-orig/bin/stow.in stow-2.2.0/bin/stow.in
|
|||
--- stow-2.2.0-orig/bin/stow.in 2015-08-20 18:05:18.543173733 +0200
|
|||
+++ stow-2.2.0/bin/stow.in 2015-08-20 18:05:58.844669895 +0200
|
|||
@@ -577,15 +577,14 @@
|
|||
# Parameters: none |
|||
# Returns : a list of default options |
|||
# Throws : no exceptions |
|||
-# Comments : prepends the contents of '~/.stowrc' and '.stowrc' to the command
|
|||
+# Comments : prepends the contents of '/etc/stowrc', '~/.stowrc' and '.stowrc' to the command
|
|||
# : line so they get parsed just like normal arguments. (This was |
|||
# : hacked in so that Emil and I could set different preferences). |
|||
#============================================================================= |
|||
sub get_config_file_options { |
|||
my @defaults = (); |
|||
- for my $file ("$ENV{HOME}/.stowrc", '.stowrc') {
|
|||
+ for my $file ('/etc/stowrc', "$ENV{HOME}/.stowrc", '.stowrc') {
|
|||
if (-r $file) { |
|||
- warn "Loading defaults from $file\n";
|
|||
open my $FILE, '<', $file |
|||
or die "Could not open $file for reading\n"; |
|||
while (my $line = <$FILE>){ |
@ -1,8 +1,9 @@ |
|||
name=gawk |
|||
version=4.1.1 |
|||
version=4.1.3 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/gawk/gawk-4.1.1.tar.xz" \ |
|||
"a2a26543ce410eb74bc4a508349ed09a" |
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz" \ |
|||
"97f8f44149ea9b9e94be97f68988be87" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
@ -1,17 +1,19 @@ |
|||
name=glibc |
|||
version=2.21 |
|||
version=2.22 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/libc/glibc-2.20.tar.xz" \ |
|||
"948a6e06419a01bd51e97206861595b0" |
|||
dlextract "https://ftp.gnu.org/gnu/libc/$name-$version.tar.xz" \ |
|||
"e51e02bf552a0a1fbbdc948fb2f5e83c" |
|||
header_end |
|||
|
|||
mkdir "$name-build"; cd "$name-build" |
|||
|
|||
"../$name-$version/configure" \ |
|||
--prefix=/tools \ |
|||
--host="$target" \ |
|||
--build="$(../glibc-2.20/scripts/config.guess)" \ |
|||
--build="$(../$name-$version/scripts/config.guess)" \ |
|||
--disable-profile \ |
|||
--enable-kernel=2.6.32 \ |
|||
--enable-obsolete-rpc \ |
|||
--with-headers=/tools/include \ |
|||
libc_cv_forced_unwind=yes \ |
|||
libc_cv_ctors_header=yes \ |
@ -0,0 +1,13 @@ |
|||
name=linux |
|||
version=4.1.6 |
|||
|
|||
dlextract "https://www.kernel.org/pub/$name/kernel/v4.x/$name-$version.tar.xz" \ |
|||
"1dae0c808e34164cab3dfd57be88bd53" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
make mrproper |
|||
make INSTALL_HDR_PATH="$dir_install/tools" headers_install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -1,8 +1,9 @@ |
|||
name=m4 |
|||
version=1.4.17 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/$name/$name-$version.tar.xz" \ |
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz" \ |
|||
"12a3c829301a4fd6586a57d3fcf196dc" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
@ -1,8 +1,9 @@ |
|||
name=make |
|||
version=4.1 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
"57a7a224a822f94789a587ccbcedff69" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
@ -1,13 +1,13 @@ |
|||
name=openssl |
|||
version=1.0.2 |
|||
version=1.0.2d |
|||
|
|||
dlextract "https://www.openssl.org/source/$name-$version.tar.gz" \ |
|||
"f7175c9cd3c39bb1907ac8bba9df8ed3" |
|||
"38dd619b2e77cbac69b99f52a053d25a" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
./config --prefix=/tools shared |
|||
# This makefile fails when building in parallel |
|||
make -j1 all; make -j1 INSTALL_PREFIX="$dir_install" install_sw |
|||
make all; make INSTALL_PREFIX="$dir_install" install_sw |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -1,8 +1,9 @@ |
|||
name=perl |
|||
version=5.20.1 |
|||
version=5.22.0 |
|||
|
|||
dlextract "http://www.cpan.org/src/5.0/$name-$version.tar.gz" \ |
|||
"7a195abb7d6769f751e90c7d30dcf2e0" |
|||
"e32cb6a8dda0084f2a43dac76318d68d" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
@ -1,13 +1,16 @@ |
|||
name=stow |
|||
version=2.2.0 |
|||
|
|||
dlextract "http://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
dlextract "https://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2" \ |
|||
"5bb56592eff9aaf9dfb6c975b3004240" |
|||
extrafile "fix-warning-message-perl5.20.patch" |
|||
extrafile "etc-stowrc.patch" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
|
|||
patch -p1 -i "../fix-warning-message-perl5.20.patch" |
|||
patch -p1 -i "../etc-stowrc.patch" |
|||
|
|||
./configure --prefix=/tools |
|||
make DESTDIR="$dir_install" install-exec-am install-pmDATA install-dist_pmstowDATA |
@ -1,9 +1,11 @@ |
|||
name=tcl |
|||
fullname=$name-core |
|||
majver=8.6 |
|||
version=$majver.3 |
|||
version=$majver.4 |
|||
|
|||
dlextract "http://prdownloads.sourceforge.net/$name/$name$version-src.tar.gz" \ |
|||
"db382feca91754b7f93da16dc4cdad1f" |
|||
dlextract "https://sourceforge.net/projects/tcl/files/Tcl/$version/$fullname$version-src.tar.gz" \ |
|||
"8b8c9d85469d8dbe32e51117b8ef11e3" |
|||
header_end |
|||
|
|||
cd "$name$version/unix" |
|||
|
@ -0,0 +1,106 @@ |
|||
#!/bin/sh -e |
|||
|
|||
# This is a very hacky script to generate satellites. |
|||
# A honestly shitty attempt to auto-generate satellites. |
|||
|
|||
astronaut="$(dirname "$0")/astronaut" |
|||
[ ! -f "$astronaut" ] && astronaut="astronaut" |
|||
|
|||
# TODO: These variables won't always be valid |
|||
dir_build="$PWD/build" |
|||
dir_source="$PWD/source" |
|||
dir_install="$PWD/install" |
|||
|
|||
tempdir="/tmp/internaut" |
|||
rm -rf "$tempdir" |
|||
mkdir -p "$tempdir" |
|||
|
|||
intshell() { |
|||
# This is the most hacky part in the script, so bear with me. |
|||
# Why this is even a thing, is because I need two things: |
|||
# - Run some commands on start |
|||
# - Capture all input |
|||
# I'm sure "tee ouput | bash --rcfile filewithcommands" would effectively do the same thing, but fuck bash. |
|||
|
|||
echo "Entering shell..." |
|||
|
|||
cmdfifo="$tempdir/cmdfifo" |
|||
waitfifo="$tempdir/waitfifo" |
|||
mkfifo "$cmdfifo" 2> /dev/null || true |
|||
mkfifo "$waitfifo" 2> /dev/null || true |
|||
|
|||
sh -s < "$cmdfifo" "$pkgfile" & |
|||
shpid=$! |
|||
|
|||
echo ". \"$astronaut\"; set +e; echo \$PWD > \"$waitfifo\"; cat \"$waitfifo\"" > "$cmdfifo" |
|||
while ps -p $shpid > /dev/null; do |
|||
printf "$(cat "$waitfifo")> " |
|||
read cmd |
|||
|
|||
case "$cmd" in |
|||
exit) ;; |
|||
!*) cmd="$(echo "$cmd" | cut -c 2-)" ;; |
|||
*) echo "$cmd" >> "$pkgfile" ;; |
|||
esac |
|||
|
|||
echo "$cmd" > "$cmdfifo" |
|||
|
|||
echo "echo \$PWD > \"$waitfifo\"; cat \"$waitfifo\"" > "$cmdfifo" |
|||
printf '' > "$waitfifo" |
|||
done |
|||
|
|||
rm -f "$waitfifo" "$cmdfifo" |
|||
echo 'End shell.' |
|||
} |
|||
|
|||
# The rest of this script is your olde gather info stuff. |
|||
|
|||
printf 'Package name: ' |
|||
read pkgname |
|||
pkgfile="$PWD/$pkgname.sat" |
|||
|
|||
echo "# Generated with internaut. Please revise and edit." > "$pkgfile" |
|||
echo >> "$pkgfile" |
|||
|
|||
printf 'Software name [enter for same as package]: ' |
|||
read name |
|||
if [ "$name" ]; then |
|||
echo "name=$name" >> "$pkgfile" |
|||
else |
|||
echo "name=$pkgname" >> "$pkgfile" |
|||
fi |
|||
|
|||
printf 'Version: ' |
|||
read version |
|||
echo "version=$version" >> "$pkgfile" |
|||
|
|||
printf 'Update URL: ' |
|||
read update_url |
|||
echo "update_url=\"$update_url\"" >> "$pkgfile" |
|||
|
|||
echo >> "$pkgfile" |
|||
|
|||
# Now we ask the user to fetch the files they need. |
|||
echo '=> Header' |
|||
intshell |
|||
|
|||
# Generate the md5sums, append them to the satellite, for manual inspection. |
|||
for file in $(find "$dir_source" -type f); do |
|||
printf '# ' >> "$pkgfile" |
|||
md5sum "$file" >> "$pkgfile" |
|||
done |
|||
|
|||
printf 'header_end\n\n' >> "$pkgfile" |
|||
|
|||
# Now we ask the user to build and install the program in question. |
|||
echo '=> Build' |
|||
intshell |
|||
|
|||
# Replacing all the instances of the name and the version with the variable. |
|||
#sed -i -e "s/$name/\$name/g" -e "s/$version/\$version/g" -e "s/name=\$name/name=$name/g" -e "s/version=\$version/version=$version/g" "$pkgfile" |
|||
# TODO: Why dun dis shit work? |
|||
|
|||
# The usual vim config line. |
|||
printf '\n# vim:set tabstop=4 shiftwidth=4 syntax=sh et:\n' >> "$pkgfile" |
|||
|
|||
rm -rf "$tempdir" |
@ -0,0 +1,6 @@ |
|||
Internaut died on 14 november 2015. |
|||
It's latest known update was 31 october of the same year. |
|||
Birth date is unknown. |
|||
|
|||
Cause of death: |
|||
I initially wanted something that could generate satellites easily, and after hacking together internaut, I may have used it one or two times, but that was it. I haven't touched it in a few months and it's latest update has been to change the way the astronaut program is found. It just isn't practical, and the implementation is awful. After deciding I wanted to make some changes to the way satellites work, I've come to realize that maintaining it is more work than it's worth. |
@ -0,0 +1,13 @@ |
|||
name=astronaut |
|||
version=$(date +%Y%m%d) |
|||
|
|||
extrafile "astronaut" |
|||
extrafile "freshnaut" |
|||
extrafile "xbps-astronaut" |
|||
header_end |
|||
|
|||
install -D "astronaut" "$dir_install/$prefix/bin/astronaut" |
|||
install -D "freshnaut" "$dir_install/$prefix/bin/freshnaut" |
|||
install -D "xbps-astronaut" "$dir_install/$prefix/bin/xbps-astronaut" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,13 @@ |
|||
name=ctrulib |
|||
libname=libctru |
|||
version=0.6.0 |
|||
update_url="https://sourceforge.net/projects/devkitpro/files/$libname/" |
|||
|
|||
download "https://sourceforge.net/projects/devkitpro/files/$libname/$version/$libname-$version.tar.bz2" \ |
|||
"2dffb7826ae3d30a32c9ad773b133a07" |
|||
header_end |
|||
|
|||
mkdir -p "$dir_install/opt/devkitPRO/$libname" |
|||
extract "$libname-$version.tar.bz2" "$dir_install/opt/devkitPRO/$libname" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,14 @@ |
|||
name=devkitARM |
|||
version=r44 |
|||
update_url="https://sourceforge.net/projects/devkitpro/files/$name/" |
|||
|
|||
download "https://sourceforge.net/projects/devkitpro/files/$name/${name}_$version/${name}_$version-x86_64-linux.tar.bz2" \ |
|||
"1609d74be8e167c32d9a6194c704ae36" |
|||
extrafile "devkitarm.sh" |
|||
header_end |
|||
|
|||
mkdir -p "$dir_install/opt/devkitPRO" |
|||
extract "${name}_$version-x86_64-linux.tar.bz2" "$dir_install/opt/devkitPRO" |
|||
install -Dm644 devkitarm.sh "$dir_install/etc/profile.d/devkitarm.sh" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,3 @@ |
|||
export DEVKITPRO=/opt/devkitPRO |
|||
export DEVKITARM="$DEVKITPRO/devkitARM" |
|||
export PATH="$DEVKITARM/bin:$PATH" |
@ -0,0 +1,13 @@ |
|||
[Desktop Entry] |
|||
Version=1.0 |
|||
Name=Pale Moon Web Browser |
|||
Comment=Browse the World Wide Web |
|||
Keywords=Internet;WWW;Browser;Web;Explorer |
|||
Exec=palemoon %u |
|||
Terminal=false |
|||
X-MultipleArgs=false |
|||
Type=Application |
|||
Icon=palemoon |
|||
Categories=Network;WebBrowser;Internet |
|||
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall; |
|||
StartupNotify=true |
@ -0,0 +1,24 @@ |
|||
name=palemoon |
|||
version=25.7.3 |
|||
update_url="https://linux.palemoon.org/download/mainline/" |
|||
|
|||
download "https://linux.palemoon.org/files/$version/$name-$version.en-US.linux-x86_64.tar.bz2" \ |
|||
"a0b11f6c3a78592fa27904dce9f7942c" |
|||
extrafile "palemoon.desktop" |
|||
header_end |
|||
|
|||
mkdir -p "$dir_install/opt" "$dir_install/$prefix/bin" "$dir_install/$prefix/share/applications" \ |
|||
"$dir_install/$prefix/share/icons/hicolor/16x16/apps" \ |
|||
"$dir_install/$prefix/share/icons/hicolor/32x32/apps" \ |
|||
"$dir_install/$prefix/share/icons/hicolor/48x48/apps" \ |
|||
"$dir_install/$prefix/share/icons/hicolor/128x128/apps" \ |
|||
|
|||
extract "$name-$version.en-US.linux-x86_64.tar.bz2" "$dir_install/opt" |
|||
ln -s "/opt/$name/$name" "$dir_install/$prefix/bin/$name" |
|||
ln -s "/opt/$name/browser/chrome/icons/default/default16.png" "$dir_install/$prefix/share/icons/hicolor/16x16/apps/$name.png" |
|||
ln -s "/opt/$name/browser/chrome/icons/default/default32.png" "$dir_install/$prefix/share/icons/hicolor/32x32/apps/$name.png" |
|||
ln -s "/opt/$name/browser/chrome/icons/default/default48.png" "$dir_install/$prefix/share/icons/hicolor/48x48/apps/$name.png" |
|||
ln -s "/opt/$name/browser/icons/mozicon128.png" "$dir_install/$prefix/share/icons/hicolor/128x128/apps/$name.png" |
|||
cp "palemoon.desktop" "$dir_install/$prefix/share/applications/palemoon.desktop" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,11 @@ |
|||
name=unetbootin |
|||
version=613 |
|||
update_url="https://unetbootin.github.io/linux_download.html" |
|||
|
|||
dlfile "https://launchpad.net/$name/trunk/$version/+download/$name-linux64-$version.bin" \ |
|||
"d5d1cddc144fc64d8291c33ebd4f457b" |
|||
header_end |
|||
|
|||
install -D $name-linux64-$version.bin "$dir_install/$prefix/bin/$name" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1 @@ |
|||
../../../astronaut |
@ -0,0 +1,16 @@ |
|||
compile_cmake_base() { |
|||
mkdir -p build; cd build |
|||
cmake -DCMAKE_INSTALL_PREFIX="$prefix" -DCMAKE_BUILD_TYPE=Release $@ .. |
|||
make |
|||
} |
|||
|
|||
compile_cmake() { |
|||
compile_cmake_base $@ |
|||
make DESTDIR="$dir_install" install |
|||
} |
|||
|
|||
compile_cmake_installbin() { |
|||
_func_file="$1"; shift |
|||
compile_cmake_base $@ |
|||
install -D "$_func_file" "$dir_install/$prefix/bin/$_file" |
|||
} |
@ -0,0 +1,4 @@ |
|||
compile_python() { |
|||
_func_ver="$1"; shift |
|||
python$_func_ver setup.py install --prefix="$prefix" --root="$dir_install" $@ |
|||
} |
@ -0,0 +1,6 @@ |
|||
compile_qt() { |
|||
_func_ver="$1"; shift |
|||
qmake-qt$_func_ver PREFIX="$prefix" build_mode=release build_type=shared $@ |
|||
make |
|||
make INSTALL_ROOT="$dir_install" install |
|||
} |
@ -0,0 +1,10 @@ |
|||
download_git() { |
|||
if [ ! -d "$dir_source/$name/$2" ]; then |
|||
rm -rf "$dir_source/$name/$2" |
|||
git clone --recursive --depth=1 -b "$2" "$1" "$dir_source/$name/$2" |
|||
else |
|||
cd "$dir_source/$name/$2" |
|||
git checkout "tags/$2" |
|||
cd "$OLDPWD" |
|||
fi |
|||
} |
@ -0,0 +1,21 @@ |
|||
vcs_git() { |
|||
if [ ! -d "$dir_source/$name/vcs" ]; then |
|||
rm -rf "$dir_source/$name/vcs" |
|||
git clone --recursive --depth=1 "$1" "$dir_source/$name/vcs" |
|||
vcs_compile=true |
|||
fi |
|||
} |
|||
|
|||
_hook_git() { |
|||
cd "$dir_source/$name/vcs" |
|||
|
|||
git remote update |
|||
if [ "$(git rev-parse @)" != "$(git rev-parse @{u})" ]; then |
|||
git pull |
|||
vcs_compile=true |
|||
fi |
|||
version="$(git rev-list HEAD --count)-$(git rev-parse --short HEAD)" |
|||
cd "$OLDPWD" |
|||
} |
|||
|
|||
_hooks="_hook_git" |
@ -0,0 +1,14 @@ |
|||
name=Markdown |
|||
version=1.0.1 |
|||
update_url="https://daringfireball.net/projects/markdown/" |
|||
|
|||
download "https://daringfireball.net/projects/downloads/${name}_$version.zip" \ |
|||
"f17b3c2b2830c6fd2fe0098226e59a2f" |
|||
header_end |
|||
|
|||
# TODO: Support other formats, such as zip, with the extract command. |
|||
extract "${name}_$version.zip" "" \ |
|||
"unzip -qd {dst} {src}" |
|||
install -D "${name}_$version/$name.pl" "$dir_install/$prefix/bin/markdown" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,14 @@ |
|||
import "compile/python" |
|||
|
|||
name=pycrc16 |
|||
version=0.1.1 |
|||
update_url="https://api.github.com/repos/gennady/$name/tags" |
|||
|
|||
dlextract "https://github.com/gennady/$name/archive/v$version.tar.gz" \ |
|||
"0e6432cea6cd71a151cfe7fba96b67c9" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
compile_python 3.4 |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,14 @@ |
|||
import "compile/python" |
|||
|
|||
name=websocket-client |
|||
version=0.34.0 |
|||
update_url="https://api.github.com/repos/liris/$name/tags" |
|||
|
|||
dlextract "https://github.com/liris/$name/archive/v$version.tar.gz" \ |
|||
"d7b222cb75877a5ddd5a0260f09af2e6" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
compile_python 3.4 |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,18 @@ |
|||
# This program includes libfresh, but since it's only needed by this, and has seen no versioned release, I'll just include it in this package. |
|||
import "compile/qt" |
|||
import "download/git" |
|||
|
|||
name=qwbfsmanager |
|||
version=1.2.5 |
|||
update_url="https://api.github.com/repos/pasnox/$name/tags" |
|||
|
|||
# Downloading this way to get dependencies. |
|||
download_git "https://github.com/pasnox/$name" "v$version" |
|||
header_end |
|||
|
|||
getfile "v$version"; cd "v$version" |
|||
sed -i -e "s/CONFIG \*= fresh//" qwbfs.pro qwbfs/qwbfs.pro # Make sure we always use the bundled library. |
|||
|
|||
compile_qt 5 |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,14 @@ |
|||
import "compile/python" |
|||
|
|||
name=speedtest-cli |
|||
version=0.3.4 |
|||
update_url="https://api.github.com/repos/sivel/$name/tags" |
|||
|
|||
dlextract "https://github.com/sivel/$name/archive/v$version.tar.gz" \ |
|||
"45344501fab5e19492ae3ef1de4ed9ae" |
|||
header_end |
|||
|
|||
cd "$name-$version" |
|||
compile_python 3.4 |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,12 @@ |
|||
import "vcs/git" |
|||
import "compile/cmake" |
|||
|
|||
name=armips |
|||
|
|||
vcs_git "https://github.com/Kingcom/$name" |
|||
header_end |
|||
|
|||
getfile "$name"; cd "$name" |
|||
compile_cmake_installbin "$name" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,13 @@ |
|||
import "vcs/git" |
|||
|
|||
name=ctr |
|||
|
|||
vcs_git "https://github.com/b1l1s/$name" |
|||
header_end |
|||
|
|||
getfile "$name"; cd "$name" |
|||
|
|||
mkdir -p "$dir_install/opt/devkitPRO/devkitARM/arm-none-eabi/include" "$dir_install/opt/devkitPRO/devkitARM/arm-none-eabi/lib" |
|||
make DEVKITARM="$dir_install/opt/devkitPRO/devkitARM" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,13 @@ |
|||
import "vcs/git" |
|||
|
|||
name=ctrff |
|||
|
|||
vcs_git "https://github.com/b1l1s/$name" |
|||
header_end |
|||
|
|||
getfile "$name"; cd "$name" |
|||
|
|||
mkdir -p "$dir_install/opt/devkitPRO/devkitARM/arm-none-eabi/include" "$dir_install/opt/devkitPRO/devkitARM/arm-none-eabi/lib" |
|||
make DEVKITARM="$dir_install/opt/devkitPRO/devkitARM" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,13 @@ |
|||
import "vcs/git" |
|||
|
|||
name=Project_CTR |
|||
|
|||
vcs_git "https://github.com/profi200/$name" |
|||
header_end |
|||
|
|||
getfile "$name"; cd "$name/ctrtool" |
|||
|
|||
make |
|||
install -D ctrtool "$dir_install/$prefix/bin/ctrtool" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,12 @@ |
|||
import "vcs/git" |
|||
|
|||
name=ctrulib |
|||
|
|||
vcs_git "https://github.com/smealum/$name" |
|||
header_end |
|||
|
|||
getfile "$name"; cd "$name/libctru" |
|||
|
|||
make DEVKITPRO="$dir_install/opt/devkitPRO" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1 @@ |
|||
../functions |
@ -0,0 +1,13 @@ |
|||
import "vcs/git" |
|||
|
|||
name=Project_CTR |
|||
|
|||
vcs_git "https://github.com/profi200/$name" |
|||
header_end |
|||
|
|||
getfile "$name"; cd "$name/makerom" |
|||
|
|||
make |
|||
install -D makerom "$dir_install/$prefix/bin/makerom" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -0,0 +1,12 @@ |
|||
import "compile/cmake" |
|||
import "vcs/git" |
|||
|
|||
name=sockfile |
|||
|
|||
vcs_git "https://github.com/mid-kid/$name" |
|||
header_end |
|||
|
|||
getfile "$name"; cd "$name" |
|||
compile_cmake_installbin "$name" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -1,51 +0,0 @@ |
|||
#!/bin/sh |
|||
umask 022 |
|||
set -e |
|||
|
|||
if [ "$(id -u)" != "0" ]; then |
|||
echo "Please run this script as root" 1>&2 |
|||
exit 1 |
|||
fi |
|||
|
|||
if [ ! "$rocket" ]; then |
|||
echo 'Please set the $rocket variable' 1>&2 |
|||
exit 1 |
|||
fi |
|||
|
|||
echo "Changing ownership of $rocket to root" |
|||
chown -R 0.0 "$rocket" |
|||
|
|||
echo "Creating device nodes" |
|||
mkdir -p "$rocket/dev" |
|||
if cut -d' ' -f2 /proc/mounts | grep "$rocket/dev" > /dev/null; then |
|||
umount -R "$rocket/dev" |
|||
fi |
|||
mknod -m 600 "$rocket/dev/console" c 5 1 2> /dev/null || true |
|||
mknod -m 666 "$rocket/dev/null" c 1 3 2> /dev/null || true |
|||
|
|||
echo "Creating directories" |
|||
install -dm750 "$rocket/root" |
|||
install -dm1777 "$rocket/tmp" |
|||
mkdir -p "$rocket/etc" "$rocket/usr/pkg" "$rocket/usr/sat" |
|||
#if [ "$(uname -m)" == "x86_64" ]; then |
|||
# ln -sf lib "$rocket/lib64" |
|||
# ln -sf lib "$rocket/usr/lib64" |
|||
#fi |
|||
|
|||
echo "Creating temporary symlinks" |
|||
mkdir -p "$rocket/usr/pkg/tmp-coreutils/bin" |
|||
ln -sf ../../../../tools/bin/sh "$rocket/usr/pkg/tmp-coreutils/bin/sh" |
|||
ln -sf ../../../../tools/bin/pwd "$rocket/usr/pkg/tmp-coreutils/bin/pwd" |
|||
mkdir -p "$rocket/usr/pkg/tmp-bash/bin" |
|||
ln -sf ../../../../tools/bin/bash "$rocket/usr/pkg/tmp-bash/bin/bash" |
|||
mkdir -p "$rocket/usr/pkg/tmp-ca-certificates/etc/ssl" |
|||
ln -sf ../../../../../tools/lib/ssl/certs "$rocket/usr/pkg/tmp-ca-certificates/etc/ssl/certs" |
|||
mkdir -p "$rocket/usr/pkg/tmp-gcc/usr/lib" |
|||
ln -sf ../../../../../tools/lib/libgcc_s.so "$rocket/usr/pkg/tmp-gcc/usr/lib/libgcc_s.so" |
|||
ln -sf ../../../../../tools/lib/libgcc_s.so.1 "$rocket/usr/pkg/tmp-gcc/usr/lib/libgcc_s.so.1" |
|||
ln -sf ../../../../../tools/lib/libstdc++.so "$rocket/usr/pkg/tmp-gcc/usr/lib/libstdc++.so" |
|||
ln -sf ../../../../../tools/lib/libstdc++.so.6 "$rocket/usr/pkg/tmp-gcc/usr/lib/libstdc++.so.6" |
|||
|
|||
echo "Creating users and groups" |
|||
echo 'root:x:0:0:root:/root:/bin/sh' > "$rocket/etc/passwd" |
|||
echo 'root:x:0:' > "$rocket/etc/group" |
@ -1,12 +0,0 @@ |
|||
name=ca-certificates |
|||
version=$(date +%d%m%Y) |
|||
|
|||
dlfile "https://mxr.mozilla.org/mozilla-central/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1" |
|||
extrafile "make-ca.sh" |
|||
extrafile "make-cert.pl" |
|||
|
|||
mkdir -p "$dir_install/tools/lib/ssl/certs" |
|||
sh ./make-ca.sh ./certdata.txt "$dir_install/tools/lib/ssl/certs" |
|||
c_rehash "$dir_install/tools/lib/ssl/certs" |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -1,12 +0,0 @@ |
|||
name=check |
|||
version=0.9.14 |
|||
|
|||
dlextract "http://sourceforge.net/projects/$name/files/$name/$version/$name-$version.tar.gz" \ |
|||
"38263d115d784c17aa3b959ce94be8b8" |
|||
|
|||
cd "$name-$version" |
|||
|
|||
PKG_CONFIG= ./configure --prefix=/tools |
|||
make; make DESTDIR="$dir_install" install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
@ -1,13 +0,0 @@ |
|||
srcname=linux |
|||
name=$srcname-api |
|||
version=3.19 |
|||
|
|||
dlextract "https://www.kernel.org/pub/$srcname/kernel/v3.x/$srcname-$version.tar.xz" \ |
|||
"ce49828adecf8908eb3a9ffc5b860d44" |
|||
|
|||
cd "$srcname-$version" |
|||
|
|||
make mrproper |
|||
make INSTALL_HDR_PATH="$dir_install/tools" headers_install |
|||
|
|||
# vim:set tabstop=4 shiftwidth=4 syntax=sh et: |
Loading…
Reference in new issue