soft package manager
This commit is contained in:
		
							parent
							
								
									b3c760446f
								
							
						
					
					
						commit
						cfa82df72b
					
				
							
								
								
									
										204
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										204
									
								
								Makefile
									
									
									
									
									
								
							@ -87,207 +87,3 @@ dist/str:
 | 
			
		||||
dist/streq:
 | 
			
		||||
	$(MAKE) -C streq
 | 
			
		||||
	cp streq/streq dist/
 | 
			
		||||
 | 
			
		||||
$(HOME)/.fonts/unscii-16-full.ttf:
 | 
			
		||||
	mkdir -p $(HOME)/.fonts/
 | 
			
		||||
	curl -o $(HOME)/.fonts/unscii-16-full.ttf.tmp http://viznut.fi/unscii/unscii-16-full.ttf
 | 
			
		||||
	mv $(HOME)/.fonts/unscii-16-full.ttf.tmp $(HOME)/.fonts/unscii-16-full.ttf
 | 
			
		||||
 | 
			
		||||
# I never finished this because I realized it needed OpenJDK. Fuck Java.
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:chimerautils (on Chimera Linux)
 | 
			
		||||
#	apk:curl
 | 
			
		||||
$(PREFIX)/src/arduino18:
 | 
			
		||||
	# the person that made the tarball used the absolute file location in
 | 
			
		||||
	# the sha512 file, so it looks like
 | 
			
		||||
	# [sum]  /home/user/dir/tarball.tar.xz
 | 
			
		||||
	# so filter out the file locations before diffing
 | 
			
		||||
	curl -L https://github.com/arduino/Arduino/releases/download/1.8.19/arduino-1.8.19.tar.xz \
 | 
			
		||||
		>"$(PREFIX)"/src/arduino-1.8.19.tar.xz
 | 
			
		||||
	curl -L https://github.com/arduino/Arduino/releases/download/1.8.19/arduino-1.8.19.tar.xz.sha512 \
 | 
			
		||||
		| sed 's/  .*//' \
 | 
			
		||||
		>"$(PREFIX)"/src/arduino-1.8.19.tar.xz.sha512
 | 
			
		||||
	sha512sum arduino-1.8.19.tar.xz \
 | 
			
		||||
		| sed 's/  .*//' \
 | 
			
		||||
		>"$(PREFIX)"/src/arduino-1.8.19.tar.xz.sha512.local
 | 
			
		||||
	# if the sums differ the makefile will terminate
 | 
			
		||||
	cat arduino-1.8.19.tar.xz.sha512 $(PREFIX)/src/arduino-1.8.19.tar.xz.sha512.local \
 | 
			
		||||
		| uniq \
 | 
			
		||||
		| wc -l \
 | 
			
		||||
		| xargs echo \
 | 
			
		||||
		| xargs test 1 =
 | 
			
		||||
	xz -cd "$(PREFIX)"/src/arduino-1.8.19.tar.xz \
 | 
			
		||||
		| tar -C "$(PREFIX)" x
 | 
			
		||||
	mv "$(PREFIX)"/arduino-1.8.19 "$(PREFIX)"/arduino18
 | 
			
		||||
 | 
			
		||||
$(PREFIX)/bin/bar:
 | 
			
		||||
	git clone https://github.com/LemonBoy/bar.git "$(PREFIX)"/src/bar
 | 
			
		||||
	$(MAKE) -C "$(PREFIX)"/src/bar PREFIX="$(PREFIX)" install
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
# 	apk:clang
 | 
			
		||||
# 	apk:git
 | 
			
		||||
#	apk:gmake
 | 
			
		||||
#	apk:libx11-devel
 | 
			
		||||
#	apk:libxau-devel
 | 
			
		||||
#	apk:libxcb-devel
 | 
			
		||||
#	apk:libxinerama-devel
 | 
			
		||||
#	apk:xcb-util-devel
 | 
			
		||||
#	apk:xcb-util-keysyms-devel
 | 
			
		||||
#	apk:xcb-util-wm-devel
 | 
			
		||||
$(PREFIX)/bin/bspwm:
 | 
			
		||||
	git clone https://github.com/baskerville/bspwm.git "$(PREFIX)"/src/bspwm
 | 
			
		||||
	$(MAKE) -C "$(PREFIX)"/src/bspwm install
 | 
			
		||||
 | 
			
		||||
# depends on:
 | 
			
		||||
#	apk:git (build)
 | 
			
		||||
#	apk:ncurses-devel (optional if curses.h is present on system)
 | 
			
		||||
$(PREFIX)/bin/cmatrix:
 | 
			
		||||
	git clone https://github.com/abishekvashok/cmatrix.git $(PREFIX)/src/cmatrix
 | 
			
		||||
	sh -c 'cd "$(PREFIX)"/src/cmatrix; autoreconf -i && ./configure --prefix="$(PREFIX)"'
 | 
			
		||||
	$(MAKE) -C "$(PREFIX)"/src/cmatrix install
 | 
			
		||||
 | 
			
		||||
# game.tar should extract to
 | 
			
		||||
# 'The Coffin of Andy and Leyley'/
 | 
			
		||||
#	Game.exe
 | 
			
		||||
#	[files on which Game.exe depends]
 | 
			
		||||
# I originally got it as a RAR which I decompressed and packed into a TAR.
 | 
			
		||||
# _CommonRedist/
 | 
			
		||||
#	dotNetFx40_Full_setup.exe
 | 
			
		||||
#	dxwebsetup.exe
 | 
			
		||||
#	oalinst.exe
 | 
			
		||||
#	vcredist_2015-2019_x64.exe
 | 
			
		||||
#	vcredist_2015-2019_x86.exe
 | 
			
		||||
#	vcredist_x64.exe
 | 
			
		||||
#	vcredist_x86.exe
 | 
			
		||||
#	xnafx40_redist.msi
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:curl
 | 
			
		||||
#	apk:git
 | 
			
		||||
#	apk:qemu-system-arm
 | 
			
		||||
#	apk:xz
 | 
			
		||||
$(PREFIX)/bin/coffin_files/2021-10-30-raspios-bullseye-armhf-full.img:
 | 
			
		||||
	mkdir -p "$(PREFIX)"/bin/coffin_files
 | 
			
		||||
	curl http://downloads.raspberrypi.org/raspios_full_armhf/images/raspios_full_armhf-2021-11-08/2021-10-30-raspios-bullseye-armhf-full.zip -o "$(PREFIX)"/bin/coffin_files/2021-10-30-raspios-bullseye-armhf-full.zip
 | 
			
		||||
	tar -C "$(PREFIX)"/bin/coffin_files xf "$(PREFIX)"/bin/coffin_files/2021-10-30-raspios-bullseye-armhf-full.zip
 | 
			
		||||
#$(PREFIX)/bin/coffin: $(PREFIX)/bin/coffin_files/game.tar $(PREFIX)/bin/coffin_files/2021-10-30-raspios-bullseye-armhf-full.img $(PREFIX)/src/qemu-rpi-kernel
 | 
			
		||||
 | 
			
		||||
# Installs the Python script without documentation because I'm lazy and don't
 | 
			
		||||
# wanna run the upstream Makefile and then deal with filtering out the Python
 | 
			
		||||
# stuff (which is specific to 3.6 which is a little outdated).
 | 
			
		||||
# depends on apk:git apk:python
 | 
			
		||||
$(PREFIX)/bin/git-filter-repo:
 | 
			
		||||
	git clone https://github.com/newren/git-filter-repo.git $(PREFIX)/src/git-filter-repo
 | 
			
		||||
	$(INSTALL) -Dm0755 $(PREFIX)/src/git-filter-repo/git-filter-repo $(PREFIX)/bin/git-filter-repo
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:git
 | 
			
		||||
#	apk:texinfo
 | 
			
		||||
$(PREFIX)/bin/macchanger:
 | 
			
		||||
	git clone https://github.com/alobbs/macchanger.git "$(PREFIX)"/src/macchanger
 | 
			
		||||
	sh -c 'cd "$(PREFIX)"/src/macchanger; ./autogen.sh --prefix=/usr/local/'
 | 
			
		||||
	# https://github.com/alobbs/macchanger/issues/14
 | 
			
		||||
	sed -i .orig -e 's/caddr_t/void */' "$(PREFIX)"/src/macchanger/src/netinfo.c
 | 
			
		||||
	$(MAKE) -C "$(PREFIX)"/src/macchanger install
 | 
			
		||||
 | 
			
		||||
# nmap 7.80 is the last Free nmap release
 | 
			
		||||
# depends on apk:linux-headers
 | 
			
		||||
# had to # ln -s /bin/gmake /usr/local/bin/make
 | 
			
		||||
# with clang 16.0.6 aarch75-chimera-linux-musl, cannot compile (4 errors?)
 | 
			
		||||
$(PREFIX)/bin/nmap:
 | 
			
		||||
	curl "https://nmap.org/dist/nmap-7.80.tar.bz2" | bzip2 -cd | tar x -C /usr/local/src/
 | 
			
		||||
	cd /usr/local/src/nmap-7.80; ./configure --prefix=/usr/local
 | 
			
		||||
	$(MAKE) -C /usr/local/src/nmap-7.80
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:git
 | 
			
		||||
$(PREFIX)/bin/pandoc: $(PREFIX)/bin/cabal
 | 
			
		||||
	git clone https://github.com/jgm/pandoc.git "$(PREFIX)"/src/pandoc.tmp
 | 
			
		||||
	mv "$(PREFIX)"/pandoc.tmp "$(PREFIX)"/pandoc
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
# 	apk:bison
 | 
			
		||||
# 	apk:cairo-devel
 | 
			
		||||
# 	apk:flex
 | 
			
		||||
# 	apk:gdk-pixbuf-devel
 | 
			
		||||
# 	apk:glib-devel
 | 
			
		||||
# 	apk:libxkbcommon-devel
 | 
			
		||||
# 	apk:pango-devel
 | 
			
		||||
# 	apk:pkgconf
 | 
			
		||||
# 	apk:meson
 | 
			
		||||
# 	apk:startup-notification-devel
 | 
			
		||||
# 	apk:xcb-util-cursor-devel
 | 
			
		||||
$(PREFIX)/bin/rofi:
 | 
			
		||||
	git clone https://davatorium/rofi.git $(PREFIX)/src/rofi
 | 
			
		||||
	sh -c 'cd $(PREFIX)/src/rofi; meson setup build'
 | 
			
		||||
	ninja -C $(PREFIX)/src/rofi/build install
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
# 	apk:autoconf
 | 
			
		||||
# 	apk:autoconf-archive
 | 
			
		||||
# 	apk:imlib2-devel
 | 
			
		||||
# 	apk:libxcomposite-devel
 | 
			
		||||
# 	apk:libxfixes-devel
 | 
			
		||||
$(PREFIX)/bin/scrot:
 | 
			
		||||
	git clone https://github.com/resurrecting-open-source-projects/scrot.git "$(PREFIX)"/src/scrot
 | 
			
		||||
	sh -c 'cd $(PREFIX)/src/scrot && ./autogen.sh && ./configure MAKE=$(MAKE) PREFIX=$(PREFIX)'
 | 
			
		||||
	$(MAKE) -C $(PREFIX)/src/scrot install
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:g++
 | 
			
		||||
$(PREFIX)/bin/unrar:
 | 
			
		||||
	git clone https://github.com/pmachapman/unrar.git "$(PREFIX)"/src/unrar
 | 
			
		||||
	$(MAKE) -C "$(PREFIX)"/src/unrar
 | 
			
		||||
	$(INSTALL) -Dm0755 "$(PREFIX)"/src/unrar/unrar "$(PREFIX)"/bin/unrar
 | 
			
		||||
 | 
			
		||||
# I tried final_official_2.50 but it wouldn't build
 | 
			
		||||
# (ld: error: duplicate symbol: comDat)
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:sudo
 | 
			
		||||
$(PREFIX)/src/wiringpi:
 | 
			
		||||
	git clone https://github.com/WiringPi/WiringPi.git $(PREFIX)/src/wiringpi
 | 
			
		||||
	git -C $(PREFIX)/src/wiringpi checkout 2.61-1
 | 
			
		||||
	sed -i .old -e /^sudo/d $(PREFIX)/src/wiringpi/build
 | 
			
		||||
	sed -i .old -e s/root\.root/root\:root/ $(PREFIX)/src/wiringpi/gpio
 | 
			
		||||
	sh -c 'cd $(PREFIX)/src/wiringpi; sudo=sudo ./build'
 | 
			
		||||
 | 
			
		||||
$(PREFIX)/bin/xdo:
 | 
			
		||||
	git clone https://github.com/baskerville/xdo.git $(PREFIX)/src/xdo
 | 
			
		||||
	$(MAKE) -C $(PREFIX)/src/xdo install
 | 
			
		||||
 | 
			
		||||
$(PREFIX)/share/audacious/Skins/Sailor_Moon_Gang.wsz:
 | 
			
		||||
	mkdir -p $(PREFIX)/share/audacious/Skins
 | 
			
		||||
	curl https://archive.org/download/winampskin_Sailor_Moon_Gang/Sailor_Moon_Gang.wsz -o $(PREFIX)/share/audacious/Skins/Sailor_Moon_Gang.wsz
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:git
 | 
			
		||||
$(PREFIX)/src/qemu-rpi-kernel:
 | 
			
		||||
	git clone https://github.com/dhruvvyas90/qemu-rpi-kernel "$(PREFIX)"/src/qemu-rpi-kernel
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:git
 | 
			
		||||
$(PREFIX)/src/moreutils:
 | 
			
		||||
	git clone git://git.joeyh.name/moreutils "$(PREFIX)"/src/moreutils.tmp
 | 
			
		||||
	mv "$(PREFIX)"/src/moreutils.tmp "$(PREFIX)"/src/moreutils
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
#	apk:git
 | 
			
		||||
$(PREFIX)/src/syslinux:
 | 
			
		||||
	git clone --recursive https://repo.or.cz/syslinux.git "$(PREFIX)"/src/syslinux
 | 
			
		||||
 | 
			
		||||
.PHONY: android-udev-rules
 | 
			
		||||
android-udev-rules:
 | 
			
		||||
	git clone https://github.com/M0Rf30/android-udev-rules.git "$(PREFIX)"/src/android-udev-rules
 | 
			
		||||
	# rather than requiring user to be in `adbusers`, just use group wheel
 | 
			
		||||
	sed -i .orig -e s/adbusers/wheel/g "$(PREFIX)"/src/android-udev-rules/51-android.rules
 | 
			
		||||
	mkdir -p /etc/udev/rules.d
 | 
			
		||||
	cp "$(PREFIX)"/src/android-udev-rules/51-android.rules /etc/udev/rules.d/51-android.rules
 | 
			
		||||
	chmod a+r /etc/udev/rules.d/51-android.rules
 | 
			
		||||
	udevadm control --reload-rules
 | 
			
		||||
	# assumes dinit
 | 
			
		||||
	dinitctl restart udevd
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.PHONY: unscii-pkgsrc
 | 
			
		||||
unscii-pkgsrc:
 | 
			
		||||
	$(MAKE) -C /usr/pkgsrc/fonts/unscii install clean clean-depends
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										16
									
								
								soft/android-udev-rules
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								soft/android-udev-rules
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,16 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
NAME=android-udev-rules
 | 
			
		||||
VERSION=nightly
 | 
			
		||||
UPSTREAM=https://github.com/M0Rf30/android-udev-rules.git
 | 
			
		||||
UPSTREAM_TYPE=git
 | 
			
		||||
. soft
 | 
			
		||||
 | 
			
		||||
# rather than requiring user to be in `adbusers`, just use group wheel
 | 
			
		||||
sed -i .orig -e s.adbusers.wheel.g "$PREFIX"/src/android-udev-rules/51-android.rules
 | 
			
		||||
mkdir -p /etc/udev/rules.d
 | 
			
		||||
cp "$PREFIX"/src/android-udev-rules/51-android.rules /etc/udev/rules.d/51-android.rules
 | 
			
		||||
chmod a+r /etc/udev/rules.d/51-android.rules
 | 
			
		||||
 | 
			
		||||
soft_advise '#' udevadm control --reload-rules
 | 
			
		||||
soft_advice '#' dinitctl restart udevd
 | 
			
		||||
							
								
								
									
										11
									
								
								soft/audacious-theme-sailor-moon-gang
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								soft/audacious-theme-sailor-moon-gang
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,11 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
NAME=audacious-theme-sailor-moon-gang
 | 
			
		||||
VERSION=1.0.0
 | 
			
		||||
UPSTREAM=https://archive.org/download/winampskin_Sailor_Moon_Gang/Sailor_Moon_Gang.wsz
 | 
			
		||||
UPSTREAM_TYPE=https
 | 
			
		||||
. soft
 | 
			
		||||
 | 
			
		||||
mkdir -p "$PREFIX/share/audacious/Skins"
 | 
			
		||||
ln -s	"$PREFIX/src/$NAME/Sailor_Moon_Gang.wsz" \
 | 
			
		||||
	"$PREFIX/share/audacious/Skins/Sailor_Moon_Gang.wsz"
 | 
			
		||||
							
								
								
									
										9
									
								
								soft/bar
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								soft/bar
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,9 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
NAME=bar
 | 
			
		||||
VERSION=nightly
 | 
			
		||||
UPSTREAM=https://github.com/LemonBoy/bar.git
 | 
			
		||||
UPSTREAM_TYPE=git
 | 
			
		||||
. soft
 | 
			
		||||
 | 
			
		||||
$GMAKE -C "$PREFIX/src/$NAME" PREFIX="$PREFIX" install
 | 
			
		||||
							
								
								
									
										18
									
								
								soft/bspwm
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								soft/bspwm
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,18 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
NAME=bspwm
 | 
			
		||||
VERSION=nightly
 | 
			
		||||
UPSTREAM=https://github.com/baskerville/bspwm.git
 | 
			
		||||
UPSTREAM_TYPE=git
 | 
			
		||||
. soft
 | 
			
		||||
 | 
			
		||||
# depends on
 | 
			
		||||
#	libx11-devel
 | 
			
		||||
#	libxau-devel
 | 
			
		||||
#	libxcb-devel
 | 
			
		||||
#	libxinerama-devel
 | 
			
		||||
#	xcb-util-devel
 | 
			
		||||
#	xcb-util-keysyms-devel
 | 
			
		||||
#	xcb-util-wm-devel
 | 
			
		||||
 | 
			
		||||
$GMAKE -C "$PREFIX/src/NAME" install
 | 
			
		||||
							
								
								
									
										13
									
								
								soft/cmatrix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								soft/cmatrix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,13 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
NAME=cmatrix
 | 
			
		||||
VERSION=nightly
 | 
			
		||||
UPSTREAM=https://github.com/abishekvashok/cmatrix.git
 | 
			
		||||
UPSTREAM_TYPE=git
 | 
			
		||||
. soft
 | 
			
		||||
 | 
			
		||||
# depends on:
 | 
			
		||||
#	ncurses-devel (optional if curses.h is present on system)
 | 
			
		||||
 | 
			
		||||
sh -c 'cd "$PREFIX/src/$NAME"; autoreconf -i && ./configure --prefix="$PREFIX"'
 | 
			
		||||
$GMAKE -C "$PREFIX/src/$NAME" install
 | 
			
		||||
							
								
								
									
										8
									
								
								soft/git-filter-repo
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								soft/git-filter-repo
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,8 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
NAME=git-filter-repo
 | 
			
		||||
VERSION=nightly
 | 
			
		||||
UPSTREAM=https://github.com/newren/git-filter-repo.git
 | 
			
		||||
UPSTREAM_TYPE=git
 | 
			
		||||
 | 
			
		||||
ln -s "$PREFIX/src/$NAME/git-filter-repo" "$PREFIX/bin/git-filter-repo"
 | 
			
		||||
							
								
								
									
										20
									
								
								soft/soft
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								soft/soft
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,20 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
GMAKE=gmake
 | 
			
		||||
PREFIX=/usr/local
 | 
			
		||||
 | 
			
		||||
case "$UPSTREAM_TYPE" in
 | 
			
		||||
https)	mkdir -p "$PREFIX/src/$NAME"
 | 
			
		||||
	curl -O "$UPSTREAM" --output-dir "$PREFIX/src/$NAME" ;;
 | 
			
		||||
git)	git pull "$UPSTREAM" "$PREFIX/src/$NAME" ;;
 | 
			
		||||
*)	! printf '%s: %s: %s: Unknown upstream type\n' \
 | 
			
		||||
		soft "$NAME" "$UPSTREAM_TYPE" >&2 ;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
soft_advise(){
 | 
			
		||||
	printf "\
 | 
			
		||||
%s: %s: It is advised to run the following, or the system equivalent:
 | 
			
		||||
	%s\n" soft "$NAME" "$*" >&2
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user