binary releases

This commit is contained in:
Q
2025-11-04 09:52:10 +02:00
parent c2c703aec4
commit 063266985b
3 changed files with 53 additions and 28 deletions

View File

@@ -24,7 +24,6 @@ the installation commands.
``` ```
sudo apt-get install git sqlite3 python3 python3-magic python3-pip python3-gtk2 sc \ sudo apt-get install git sqlite3 python3 python3-magic python3-pip python3-gtk2 sc \
gnuplot wget vim rsync curl pv gnuplot wget vim rsync curl pv
pip2 install csvkit ncsv
``` ```
@@ -32,24 +31,17 @@ pip2 install csvkit ncsv
``` ```
mkdir -p ~/lib/q-tools mkdir -p ~/lib/q-tools
curl https://git.six9.net/moonq/q-tools/archive/HEAD.tar.gz | tar xz --strip 1 -C ~/lib/q-tools curl -L https://six9.net/software/q-tools/current.tar.gz | tar -xz -C ~/lib/q-tools
source ~/lib/q-tools/rc source ~/lib/q-tools/rc
``` ```
Add the to your startup scripts: Add the to your startup scripts:
`echo '. ~/lib/q-tools/rc' >> ~/.bashrc` `echo '. ~/lib/q-tools/rc' >> ~/.bashrc`
## Installation in user home
```
mkdir -p ~/lib
git clone https://git.six9.net/moonq/q-tools ~/lib/q-tools
echo '. ~/lib/q-tools/rc' >> ~/.bashrc
```
## Systemwide installation ## Systemwide installation
``` ```
git clone https://git.six9.net/moonq/q-tools /usr/local/share/q-tools mkdir -p /usr/local/share/q-tools
curl -L https://six9.net/software/q-tools/current.tar.gz | tar -xz -C /usr/local/share/q-tools
echo '[ -e /usr/local/share/q-tools/rc ] && . /usr/local/share/q-tools/rc' >> /etc/profile.d/q-tools.sh echo '[ -e /usr/local/share/q-tools/rc ] && . /usr/local/share/q-tools/rc' >> /etc/profile.d/q-tools.sh
ln -s /usr/local/share/q-tools/rc /etc/cron.weekly/q-tools ln -s /usr/local/share/q-tools/rc /etc/cron.weekly/q-tools
``` ```
@@ -60,12 +52,12 @@ The last step ensures weekly updates
Markslider is a terminal slide presentation with markdown backend: Markslider is a terminal slide presentation with markdown backend:
- `pipx install https://git.six9.net/moonq/q-tools/raw/HEAD/py-packages/markslider.tgz` - `pipx install https://six9.net/py/markslider/current.tar.gz`
TSVFilter: a TSV (or CSV) filtering with simple syntax. Limit printed rows by matching header names and operators, ex. "Column1>0.5,Column2==10" TSVFilter: a TSV (or CSV) filtering with simple syntax. Limit printed rows by matching header names and operators, ex. "Column1>0.5,Column2==10"
- `pipx install https://git.six9.net/moonq/q-tools/raw/HEAD/py-packages/TSVFilter.tgz` - `pipx install https://six9.net/py/TSVFilter/current.tar.gz`
SimpleWepPage: An HTML file index generator SimpleWepPage: An HTML file index generator
- `pipx install https://git.six9.net/moonq/q-tools/raw/HEAD/py-packages/SimpleWebPage.tgz` - `pipx install https://six9.net/py/SimpleWebPage/current.tar.gz`

33
rc
View File

@@ -30,28 +30,39 @@ function _q-tools-update-binary {
# update self # update self
[[ -z "$QTOOLSPATH" ]] && return [[ -z "$QTOOLSPATH" ]] && return
[[ -w "$QTOOLSPATH" ]] || return [[ -w "$QTOOLSPATH" ]] || return
local foo #local foo
echo "Updating with binary deletes the existing folder! sure? y/N" #echo "Updating with binary deletes the existing folder! sure? y/N"
read foo #read foo
[[ "$foo" = y ]] || return #[[ "$foo" = y ]] || return
pushd ~ >/dev/null
set -u
rm -rf "$QTOOLSPATH" rm -rf "$QTOOLSPATH"
mkdir -p "$QTOOLSPATH" mkdir -p "$QTOOLSPATH"
curl https://bitbucket.org/MoonQ/q-tools/get/HEAD.tar.gz | \ curl -L https://six9.net/software/q-tools/current.tar.gz | \
tar xz --strip 1 -C "$QTOOLSPATH" tar xz -C "$QTOOLSPATH"
popd > /dev/null
_q-tools-reload _q-tools-reload
} }
function _self_update() { function _self_update() {
touch "$QTOOLSPATH"/.lastupdate touch "$QTOOLSPATH"/.lastupdate
pushd "$QTOOLSPATH" > /dev/null pushd "$QTOOLSPATH" > /dev/null
git remote get-url origin 2>&1 | grep -q https...bitbucket.org/MoonQ && { if [[ -d .git ]]; then
git remote set-url origin https://git.six9.net/moonq/q-tools git remote get-url origin 2>&1 | grep -q https.*git.six9.net && {
_q-tools-update-binary
popd > /dev/null
} }
[[ "$1" = "-u" ]] && { if [[ "$1" = "-u" ]]; then
git pull git pull
} || { else
timeout 10 git pull > /dev/null 2>&1 timeout 10 git pull > /dev/null 2>&1
} fi
else
_q-tools-update-binary
fi
popd > /dev/null popd > /dev/null
} }

22
release.sh Executable file
View File

@@ -0,0 +1,22 @@
#!/bin/bash
set -exu
mkdir -p ~/tmp/q-tools-release-$$
cd ~/tmp/q-tools-release-$$
git clone ssh://git@git.six9.net:8222/moonq/q-tools.git
cd q-tools
rm -rf .git release.sh
seconds=$(( 10#$( date +%H )*3600 + 10#$( date +%M )*60 + 10#$( date +%S ) ))
version="$( date +%Y%m%d ).$seconds"
echo $version > .version
tar \
-czf ~/www/static/six9.net/software/q-tools/q-tools.$version.tar.gz \
--owner=0 --group=0 \
.
ln -sfT q-tools.$version.tar.gz ~/www/static/six9.net/software/q-tools/current.tar.gz
echo $version > ~/www/static/six9.net/software/q-tools/current.txt
cd $HOME
rm -r ~/tmp/q-tools-release-$$