From: Ian Kelling Date: Sun, 11 Oct 2020 12:56:47 +0000 (-0400) Subject: various improvements for my own systems X-Git-Url: https://iankelling.org/git/?p=buildscripts;a=commitdiff_plain;h=2f919040c2b04aa585017a7dfb531e660d8f9e6e various improvements for my own systems --- diff --git a/emacs b/emacs index 6b5ec5c..488da0c 100755 --- a/emacs +++ b/emacs @@ -19,18 +19,21 @@ if [[ -s ~/.bashrc ]];then . ~/.bashrc;fi # arg = git commit to check out update=false -recompile=true -export FORCE_RECOMPILE=true +bootstrap=false +recompile=false show_pkgs=false while [[ $1 == -* ]]; do case $1 in - --no-r) recompile=false; unset FORCE_RECOMPILE; shift ;; - -u) update=true; shift ;; - -p) show_pkgs=true; shift ;; + -b) bootstrap=true; recompile=true ;; + -r) recompile=true ;; + --no-r) recompile=false ;; + -u) update=true ;; + -p) show_pkgs=true ;; --) break ;; *) echo "$0: error: bad arg: $1" >&2; exit 1 ;; esac + shift done @@ -67,31 +70,38 @@ fi #building emacs, INSTALL.BZR -# gawk and attr were no longer automatically installed in stretch, -# looking back, i assume i got some error. -# autoconf-archive due to come error -pi ${pkgs[@]} #git repo dir=/a/opt/emacs-$(distro-name)$(distro-num) +last_build=$dir/iank-emacs-build # e/e because autofs failing to mount will make it so # you cant ls whatever directory it is in, so we # need an extra directory dirs=($dir $dir-nox/.iank/e/e) -if [[ ! -e $dir ]]; then +m cd $dir + +rev=$(cat $last_build 2>/dev/null) ||: +head=$(git rev-parse HEAD) + +if ! $recompile && [[ $rev == "$head" ]]; then + echo "already compiled, exiting" + exit 0 +fi + +if [[ ! -e $dir || $rev != "$head" ]]; then m cp -ar /a/opt/emacs $dir + bootstrap=true recompile=true fi +# gawk and attr were no longer automatically installed in stretch, +# looking back, i assume i got some error. +# autoconf-archive due to come error +pi ${pkgs[@]} -m cd $dir - -rev=$(cat ~/.local/emacs-build-git-revision 2>/dev/null) ||: -head=$(git rev-parse HEAD) - -if $recompile || [[ $rev != "$head" ]]; then +if $recompile; then case $(distro-name) in fedora ) logq s yum-builddep -y emacs @@ -130,7 +140,7 @@ for d in ${dirs[@]}; do m sudo chown $USER:$USER $mp m cd $mp fi - if $recompile; then + if $recompile || [[ ! -e configure ]]; then # todo, consider when this should be uncommented #logq s make uninstall m find ~/.emacs.d/ -name '*.elc' -delete @@ -176,7 +186,7 @@ for d in ${dirs[@]}; do # make emacs always work for root sudo /a/exe/lnf /usr/local/bin/emacs /usr/bin - echo $head >~/.local/emacs-build-git-revision + echo $head >$last_build fi nox=true done @@ -189,7 +199,9 @@ done cd /a/opt/mu -rev=$(cat ~/.local/mu-build-git-revision 2>/dev/null) ||: +last_build=$PWD/iank-mu-build + +rev=$(cat $last_build 2>/dev/null) ||: head=$(git rev-parse HEAD) if $recompile || [[ $rev != "$head" ]]; then diff --git a/tor-browser b/tor-browser index c105e6e..3370981 100755 --- a/tor-browser +++ b/tor-browser @@ -57,6 +57,20 @@ if [[ $timestamp != $new_timestamp || ! -e /a/opt/tor-browser_en-US/Browser/star # not already installed rm -rf tor-browser_en-US tar Jxf $f + + ## begin handlers customization + dest=/a/opt/tor-browser_en-US/Browser/TorBrowser/Data/Browser/profile.default/handlers.json + orig=/p/c/tor-handlers-orig.json + src=/p/c/tor-handlers.json + if diff -q $src $dest; then + echo "Error: handlers file changed. adjust based on upstream" + exit 1 + fi + cp $src $dest + ## end handlers customization + + cp /p/c/tor-user.js /a/opt/tor-browser_en-US/Browser/TorBrowser/Data/Browser/profile.default/user.js + fi for x in tor-*.tar.xz; do