Skip to content

Instantly share code, notes, and snippets.

@ericonr

ericonr/Steps Secret

Created March 5, 2021 07:15
Show Gist options
  • Save ericonr/9c7a4e7d52b5eb9e72d350281fe25df2 to your computer and use it in GitHub Desktop.
Save ericonr/9c7a4e7d52b5eb9e72d350281fe25df2 to your computer and use it in GitHub Desktop.
Build ordering
openssl
mariadb
openldap
mit-krb5
ca-certificates
python3
postgresql13
FreeRADIUS
Ice
libssh2
libevent
nghttp2
curl
rhash
LGOGDownloader
MEGAsdk
ppp
NetworkManager-l2tp
NetworkManager-openconnect
libzip
OpenRCT2
VirtualGL
aircrack-ng
alpine
git
libgit2
cargo
amp
pulseaudio
python
ruby
qt5
android-file-transfer-linux
android-tools
apr-util
apache
apk-tools
argyllcms
aria2
attic
axel
bacula-common
badvpn
re
baresip
barrier
u-boot-tools
beaglebone-kernel
bind
bitchx
bitcoin
blindfold
boinc
borg
botan
burp2-server
butt
c-client
podofo
calibre
cargo-aoc
cargo-crev
cargo-deny
cargo-edit
cargo-geiger
cargo-outdated
castor
libtls
catgirl
cbang
cgit
chatterino2
chntpw
libarchive
nim
choosenim
ci20-kernel
clamav
cloudfuse
cmusfm
coWPAtty
libesmtp
net-snmp
collectd
coturn
python-M2Crypto
crda
cryfs
cryptsetup
crystal
cyrus-sasl
dillo
dkms
dma
dmg2img
dovecot
dovecot-plugin-pigeonhole
libbsd
dpdk
easyrsa
ecryptfs-utils
efitools
efl
eggdrop
eid-mw
eiskaltdcpp-qt
erlang
ejabberd
elinks
elog
encfs
ettercap
facter
falkon
mupdf
fbpdf
fdm
python3-tkinter
fetchmail
ffsend
fossil
libnice
rtmpdump
gst-plugins-bad1
fractal
freerdp
freshplayerplugin
gambit
gatling
gcsf
gemserv
rsync
gerbil
unbound
getdns
gftp
gip
git-brws
git-crypt
git-series
gitui
gkrellm
glusterfs
gnome-podcasts
opusfile
godot
gogglesmm
grpc
grub
grub-customizer
gsoap
gtklp
gwenhywfar
h2o
haproxy
hcxdumptool
hcxtools
hexchat
hfsprogs
hitch
hostapd
sane
hplip
httpdirfs
httrack
i2pd
icecast
iputils
ldns
libfido2
openssh
postfix
monitoring-plugins
icinga2
libimobiledevice
ifuse
imapfilter
inadyn
inspircd
ipmitool
ipmiutil
irssi
isync
john
kea
keepalived
kicad
libssh
openjdk11
kodi
kodi-addon-inputstream-rtmp
kodi-addon-vfs-sftp
kodi-rpi
kore
kristall
kvirc
lastpass-cli
ldapvi
lftp
libasr
libetpan
libevhtp
libfetch
libgda
libgdal
libircclient
libknet1
libmowgli
libostree
librdkafka
libsignal-protocol-c
libstrophe
libtd
libtorrent-rasterbar
libtorrent
libu2f-host
libu2f-server
libucl
libvncserver
libwebsockets
lighttpd
links-x11
links
linux-tools
linux4.14
linux4.19
linux4.4
linux4.9
linux5.10
linux5.11
linux5.4
litecoin
litterbox
live555
loudmouth
lua54-luasec
wget
lxc
lynx
mailx
mairix
maturin
mbox
mbuffer
mdbook-linkcheck
mdcat
megatools
miniupnpd
mixxx
mktorrent
monero-gui
monero
mongo-c-driver
mongoose
monit
monolith
mosh
mosquitto
mtd-utils
mtree
mtxclient
muchsync
mumble
munge
musikcube
mutt
namecoin
nasa-wallpaper
w3m
neomutt
neon
nodejs
netdata
netpgp
netsurf
network-ups-tools
next
nextcloud-client
nginx
ngircd
ngrep
nix
nmap
nmh
nodejs-lts-10
nodejs-lts
nrpe
nsd
ntp
nushell
nzbget
odroid-u2-kernel
open-isns
open-iscsi
xmlsec1
open-vm-tools
opendkim
openfortivpn
openntpd
opensc
opensmtpd
opensmtpd-extras
pkcs11-helper
openvpn
openvswitch
opkg
opmsg
pacman
pam-u2f
pam_ssh
pam_ssh_agent_auth
partclone
passwordsafe
pen
perl-Crypt-OpenSSL-Bignum
perl-Crypt-OpenSSL-RSA
perl-Crypt-OpenSSL-Random
perl-DBD-mysql
perl-Net-SSH2
perl-Net-SSLeay
pev
pgadmin3
pgbackrest
pgbouncer
php
pidgin-sipe
pijul
pinebookpro-kernel
pinebookpro-uboot
pinephone-kernel
pinephone-uboot
pjproject
pmbootstrap
poco
postgresql
postgresql12
pounce
prosody
python-cryptography
python-tkinter
python3-adblock
python3-cryptography
python3-curl
python3-grpcio
python3-mysqlclient
python3-scrypt
qbittorrent
qca-qt5
qingy
rabbitmq-c
rdedup
rdis-git
spice-gtk
remmina
removed-packages
remwharead
sqlcipher
retroshare
rmilter
rng-tools
rooster
rpi-imager
rpi-kernel
rspamd
rstudio
rtags
rust-cargo-audit
rust-sccache
rustup
s-nail
s3fs-fuse
s6-networking
sbsigntool
scrypt
seafile-libclient
serf
sgfutils
signal-backup-decode
slrn
slurm-wlm
so
socat
spice
spiped
spotify-tui
spotifyd
ucspi-ssl
sqmail
squid
srain
sssd
starship
stremio-shell
stunnel
sun7i-kernel
supertuxkart
swi-prolog
swiften
swirc
sylpheed
synergy
sysbench
sysdig
taisei
tarpaulin
tarsnap
tcpdump
tcpflow
tealdeer
tectonic
tg_owt
telegram-desktop
telepathy-salut
testssl.sh
thc-hydra
thrift
tinc
tmplgen
tnftp
tor
trousers
tpm-tools
transmission
ttyd
turbovnc
tvheadend
uftp
uget
umurmur
vanitygen
vboot-utils
vde2
xorg-server
virtualbox-ose
virtuoso
volta
vpn-ws
vpnc
vsftpd
watchman
websocat
wesnoth
wpa_supplicant
wrk
wvstreams
x11vnc
xar
xarcan
xbps
xca
xen
xmlrpc-c
yara
ympd
yubico-piv-tool
zbackup
zchunk
zeek
zeroinstall
zfs
znc
$ git diff --name-only upstream/master | grep template | sort | sed 's:srcpkgs/::;s:/.*$::' > changed-packages
$ ./xbulk-new $(cat changed-packages)
$ make
# push in order shown in package-order
#!/bin/sh
# xbulk [-n] [-k] [xbps-src flags...] PKGS... - simple XBPS bulk builder
ARGS=
MAKEARGS=
PKGS=
mainpkg() {
dir=$(readlink -f srcpkgs/"$1")
echo ${dir##*/}
}
while [ $# -gt 0 ]; do
case $1 in
-n|-k) MAKEARGS="$MAKEARGS $1";;
-a|-H|-m|-o|-r) ARGS="$ARGS $1 $2"; shift;;
-*) ARGS="$ARGS $1";;
*) PKGS="$PKGS
$(mainpkg $1)"
esac
shift
done
{
for pkg in $PKGS; do
echo all: pkg-$pkg
for dep in $(./xbps-src $ARGS show-build-deps $pkg |
sed '/^[<=>]/d'); do
mainpkg $dep |
grep -Fx "$PKGS" |
sed 's/^/pkg-'$pkg': pkg-/'
done
done
printf '%s\n' pkg-%: " pkg=\$@; echo \$\${pkg#pkg-} >> package-order"
} > makefile
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment