aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xbin/awkf4
-rwxr-xr-xbin/clean6
-rwxr-xr-xbin/e (renamed from bin/ee)0
-rwxr-xr-xbin/gc1
-rwxr-xr-xbin/print26
-rwxr-xr-xbin/vcs46
-rw-r--r--etc/guix/channels.scm1
-rw-r--r--etc/guix/home.scm75
-rw-r--r--etc/guix/system.scm2
-rw-r--r--etc/sh/rc16
-rw-r--r--etc/ssh/config.tmpl2
-rw-r--r--etc/ssh/known_hosts22
12 files changed, 129 insertions, 72 deletions
diff --git a/bin/awkf b/bin/awkf
new file mode 100755
index 0000000..dc2d291
--- /dev/null
+++ b/bin/awkf
@@ -0,0 +1,4 @@
+#!/bin/sh
+set -euo pipefail
+
+exec awk -f "$@"
diff --git a/bin/clean b/bin/clean
index 5a94c77..0ec255f 100755
--- a/bin/clean
+++ b/bin/clean
@@ -2,7 +2,11 @@
set -eu
if [ -e Makefile ]; then
- make -s clean
+ if [ -e fuzz.mk ]; then
+ make -sffuzz.mk clean
+ else
+ make -s clean
+ fi
elif [ -e mkfile ]; then
mk clean
fi
diff --git a/bin/ee b/bin/e
index 67d2d52..67d2d52 100755
--- a/bin/ee
+++ b/bin/e
diff --git a/bin/gc b/bin/gc
index 21abd53..50ee1b5 100755
--- a/bin/gc
+++ b/bin/gc
@@ -95,7 +95,6 @@ gc_guix() {
}
gc_nix() {
- return
if [ ! -e /nix/ ]; then
return
fi
diff --git a/bin/print b/bin/print
index 5aef102..6e62590 100755
--- a/bin/print
+++ b/bin/print
@@ -57,19 +57,22 @@ main() {
ps2pdf "$FILE" "$NEWDIR"/in.pdf
elif file -b "$FILE" | grep -q PDF; then
cp "$FILE" "$NEWDIR"/in.pdf
+ elif file -b "$FILE" | grep -q text; then
+ enscript -C -o- "$FILE" | ps2pdf - "$NEWDIR"/in.pdf
else
- enscript -o- "$FILE" | ps2pdf - "$NEWDIR"/in.pdf
+ lp $OPTS "$FILE"
+ return
fi
cd "$NEWDIR"
if [ -z "$DUPLEX" ]; then
- lp in.pdf
+ lp $OPTS in.pdf
cd - > /dev/null
return
fi
if [ "$(n_pages in.pdf)" = '1' ]; then
- lp in.pdf
+ lp $OPTS in.pdf
return
fi
@@ -80,10 +83,10 @@ main() {
NEVEN="$(n_pages even.pdf)"
printf 'Printing odd pages...\n' >&2
- lp odd.pdf
+ lp $OPTS odd.pdf
printf 'Has printing finished yet? Once it does, reload the pages and hit it enter to continue. '
read -r < /dev/tty
- lp even.pdf
+ lp $OPTS even.pdf
if [ "$NODD" != "$NEVEN" ]; then
printf '\n' | lp
@@ -107,24 +110,23 @@ for flag in "$@"; do
esac
done
-QUALITY_SET=false
DUPLEX=
+OPTS='-o PrintQuality=standard'
while getopts 'dq:h' flag; do
case "$flag" in
(d)
DUPLEX=1
;;
(q)
- QUALITY_SET=true
case "$OPTARG" in
low)
- lpoptions -o PrintQuality=draft
+ OPTS='-o PrintQuality=draft'
;;
medium)
- lpoptions -o PrintQuality=standard
+ OPTS='-o PrintQuality=standard'
;;
high)
- lpoptions -o PrintQuality=high
+ OPTS='-o PrintQuality=high'
;;
*)
echo "Bad QUALITY option: \"$OPTARG\"" >&2
@@ -145,10 +147,6 @@ while getopts 'dq:h' flag; do
done
shift $((OPTIND - 1))
-if [ "$QUALITY_SET" = false ]; then
- lpoptions -o PrintQuality=standard
-fi
-
NEWDIR="$(mkdtemp)"
trap 'rm -rf "$NEWDIR"' EXIT
if [ -z "${1:-}" ]; then
diff --git a/bin/vcs b/bin/vcs
index bf12527..73a2925 100755
--- a/bin/vcs
+++ b/bin/vcs
@@ -4,6 +4,7 @@ set -eu
TYPES='
git
+pijul
fossil
bitkeeper
darcs
@@ -15,6 +16,8 @@ cvs
guess_type() {
if [ -e "$1"/.git ] || { [ -n "${GIT_DIR:-}" ] && [ -n "$GIT_WORK_TREE" ]; }; then
echo git
+ elif [ -e "$1"/.pijul ]; then
+ echo pijul
elif [ -e "$1"/.hg ]; then
echo mercurial
elif [ -e "$1"/.bk ]; then
@@ -135,6 +138,45 @@ git_ps1() {
color -c blacki " - git/$(git rev-parse HEAD)"
}
+pijul_ps1() {
+ LINE="$(pijul channel | awk '$1 == "*" && $0=$2')"
+
+ DIFF_LINES="$(pijul diff -u -s)"
+ HAS_DIFF=false
+ HAS_UNTRACKED=false
+ if printf '%s\n' "$DIFF_LINES" | grep -q '^[A|D|M|R| ][M|D| ]'; then
+ HAS_DIFF=true
+ fi
+ if printf '%s\n' "$DIFF_LINES" | grep -Eq '^([?][?]| A)'; then
+ HAS_UNTRACKED=true
+ fi
+
+ if [ "$HAS_DIFF" = true ]; then
+ COLOR_FN=redb
+ LINE="{$LINE}"
+ elif [ "$IS_AHEAD" = true ] || [ "$IS_BEHIND" = true ]; then
+ COLOR_FN=bluei
+ LINE="[$LINE]"
+ elif [ "$HAS_UNTRACKED" = true ]; then
+ COLOR_FN=lightblue
+ LINE="{$LINE}"
+ else
+ COLOR_FN=green
+ LINE="($LINE)"
+ fi
+
+ color -c "$COLOR_FN" "$LINE"
+
+ CHANNEL_COUNT="$(pijul channel | wc -l)"
+ if [ "$CHANNEL_COUNT" -gt 1 ]; then
+ color -c lightblue "<$CHANNEL_COUNT>"
+ fi
+
+ CHANGEID="$(pijul log --limit 1 --output-format json |
+ jq -r '.[0].hash')"
+ color -c blacki " - pijul/$CHANGEID"
+}
+
bitkeeper_ps1() {
printf ''
}
@@ -178,6 +220,10 @@ git_ls() {
git ls-files
}
+pijul_ls() {
+ pijul ls
+}
+
fossil_ls() {
fossil ls
}
diff --git a/etc/guix/channels.scm b/etc/guix/channels.scm
index a9700da..6c0d71a 100644
--- a/etc/guix/channels.scm
+++ b/etc/guix/channels.scm
@@ -9,6 +9,7 @@
"d749e053e6db365069cb9b2ef47a78b06f9e7361"
(openpgp-fingerprint
"5BDA E9B8 B2F6 C6BC BB0D 6CE5 81F9 0EC3 CD35 6060"))))
+#;
(channel
(name 'the-dam)
(url "https://gitlab.com/edouardklein/guix")
diff --git a/etc/guix/home.scm b/etc/guix/home.scm
index 2e5e5e4..74dfc7c 100644
--- a/etc/guix/home.scm
+++ b/etc/guix/home.scm
@@ -40,38 +40,6 @@
-(define tiniercc
- (package
- (inherit tcc)
- (name "tiniercc")
- (arguments
- (substitute-keyword-arguments (package-arguments tcc)
- ((#:tests? _ #f) #f)
- ((#:configure-flags _)
- #~(list
- "--enable-static"
- "--config-musl"
- (string-append
- "--crtprefix="
- #$(file-append musl "/lib"))))
- ((#:phases phases)
- #~(modify-phases #$phases
- (add-after 'install 'ln-alias
- (lambda _
- (symlink (string-append #$out "/bin/tcc")
- (string-append #$out "/bin/cc"))
- (symlink (string-append #$out "/bin/tcc")
- (string-append #$out "/bin/c99"))))))))
- (native-inputs
- (modify-inputs (package-native-inputs tcc)
- (append which)))))
-
-(define yt-dlp-latest
- ((transformations:options->transformation
- '((with-latest . "yt-dlp")))
- yt-dlp))
-
-
(define (slurp name)
(string-trim-both
(call-with-input-file
@@ -162,6 +130,7 @@
man-pages-posix
bash-completion
+ zip
;; amber
@@ -185,6 +154,9 @@
cvs
subversion
quilt
+ pijul
+ tkrev
+ meld
;; urubu
gperftools
@@ -194,6 +166,7 @@
ncurses:doc
bdb
nvi
+ xxd
vis
libx11:out
libx11:doc
@@ -223,6 +196,7 @@
;; lime
nasm
+ fasm
;; pilotis
pandoc
@@ -234,6 +208,8 @@
lighttpd
hexchat
weechat
+ ngircd
+ inspircd
;; adoc
asciidoc
@@ -315,7 +291,7 @@
tcpdump
nmap
stunnel
- netcat
+ netcat-openbsd
siege
socat
curl:out
@@ -324,12 +300,10 @@
cloc
strace
file
- ;; urlscan ; conflicts
+ ;; urlscan ; conflicts with python-telegram-bot
rlwrap
direnv
borg
- khal
- khard
libfaketime
qrencode ;; needed by qr(1)
feh
@@ -389,7 +363,7 @@
tcl
z3
- frama-c
+ ;; frama-c ; broken
clojure
clojure-core-async
clojure-core-cache
@@ -416,7 +390,7 @@
opencl-icd-loader
pciutils
usbutils
- ;; python-pyopencl ; broken
+ python-pyopencl
python-pandas
;; python-scikit-learn ; conflicts with python-requests
python
@@ -428,14 +402,14 @@
python-docx
python-telegram-bot
valgrind
- go-full
+ aflplusplus
+ gol
;; gm2 ; broken: not exported from channel
gcc-toolchain:out
gcc-toolchain:debug
gcc-toolchain:static
cppcheck
clang
- ;; musl
pcc
compcert
quickjs-ng
@@ -451,7 +425,7 @@
clisp
ccl
abcl
- janet
+ ;; janet
kawa
chez-scheme
racket
@@ -468,6 +442,7 @@
brightnessctl
xss-lock
+ fuse
ranger
libnotify
espeak-ng
@@ -480,10 +455,14 @@
less
nano
patch
- ;; yt-dlp
ripgrep
fd
- ;; mktorrent
+
+ ;; unicode fonts
+ font-google-noto
+ font-google-noto-serif-cjk
+ font-google-noto-sans-cjk
+ font-google-noto-emoji
mpvx
imagemagick
@@ -497,24 +476,24 @@
cheese ; webcam
gpodder
mate-calc
- ;; telegram-desktop ; broken
+ telegram-desktop
zathura
zathura-djvu
zathura-pdf-poppler
zathura-ps
transmission:out
transmission:gui
+ frescobaldi
audacity
quodlibet
icedove
netsurf
- ;; ungoogled-chromium
anki
firefox))
(list
- yt-dlp-latest
- pkg:mktorrent-latest
- tiniercc)
+ ((transformations:options->transformation
+ '((with-latest . "yt-dlp")))
+ yt-dlp))
(list
(script "cronjob"
(slurp (string-append (getenv "HOME")
diff --git a/etc/guix/system.scm b/etc/guix/system.scm
index 019d0ea..b0d2cec 100644
--- a/etc/guix/system.scm
+++ b/etc/guix/system.scm
@@ -138,7 +138,7 @@ Seiko Epson Color Ink Jet Printers.")
(supplementary-groups '()))
(user-account
(name "andreh")
- (comment "EuAndreh")
+ (comment "EuAndreh,,,,eu@euandre.org")
(group "users")
(supplementary-groups '("netdev" "audio" "video" "wheel" "kvm" "docker" "dialout"))))
%base-user-accounts))
diff --git a/etc/sh/rc b/etc/sh/rc
index d5fd36a..8d820ec 100644
--- a/etc/sh/rc
+++ b/etc/sh/rc
@@ -48,6 +48,7 @@ export BROWSER='firefox'
export MAILDIR=~/Maildir
export TZ='America/Sao_Paulo'
export DICT=~/Desktop/en_US.dic
+export POSIXLY_CORRECT=1
HOST="$(uname -s)/$(uname -m)"
TARGET="Linux/i386"
@@ -127,7 +128,6 @@ export VGFLAGS='
'
VGFLAGS="$(printf '%s\n' "$VGFLAGS" | grep . | tr -d '\t' | tr '\n' ' ')"
-export FUZZSEC=0.1
export CC=gcc
export CCFLAGS='
-g
@@ -136,10 +136,8 @@ export CCFLAGS='
-Wall
-Wextra
-Wpedantic
- -Wconversion
-Wshadow
-Wundef
- -Wdouble-promotion
-Wvla
-Wmissing-prototypes
'
@@ -147,6 +145,7 @@ CCFLAGS="$(printf '%s\n' "$CCFLAGS" | grep . | tr -d '\t' | tr '\n' ' ')"
export LLDFLAGS=''
export LDFLAGS="$LLDFLAGS -static"
export CFLAGS="$CCFLAGS"
+export CCFLAGS="$CCFLAGS -Wconversion -Wdouble-promotion"
export YFLAGS='-Wother'
export GOCFLAGS="-I $PREFIX/lib/go -N"
export GOLDFLAGS="-L $PREFIX/lib/go"
@@ -197,7 +196,6 @@ unalias -a
alias p='ping euandre.org -c 3'
alias o='open'
-alias e='vi'
alias mm='msmtp-queue -r'
alias s='vcs status'
alias d='vcs diff'
@@ -212,7 +210,7 @@ alias diff='diff --color=auto'
alias watch='watch --color '
alias man='MANWIDTH=$((COLUMNS > 80 ? 80 : COLUMNS)) man'
alias less='less -R'
-alias tree='tree -F -aC -I .git -I vendor -I STUFF -I refers'
+alias tree='tree -F -aC -I .git -I .pijul -I vendor -I STUFF -I refers'
alias make='make -e --no-print-directory'
alias mv='mv -i'
alias bc='bc -lq'
@@ -350,6 +348,12 @@ PS1='`error_marker`'$(timestamp_fn)' '$(path)'`direnv_status``makeflags_status`
'$(in_ssh_session)'$ '
export PS1
+bind 'set show-mode-in-prompt on'
+bind 'set vi-ins-mode-string \1\e[34;1m\2.\1\e[0m\2'
+bind 'set vi-cmd-mode-string \1\e[35;1m\2^\1\e[0m\2'
+set -o vi
+set -o emacs
+
g() {
@@ -438,7 +442,7 @@ f() {
}
idiff() {
- diff -U10 --color=always "$1" "$2" | less
+ diff -U10 --color=always "$1" "$2" | ifne less -R
}
diff --git a/etc/ssh/config.tmpl b/etc/ssh/config.tmpl
index 21f404d..199b79c 100644
--- a/etc/ssh/config.tmpl
+++ b/etc/ssh/config.tmpl
@@ -9,7 +9,7 @@ Host *
PasswordAuthentication no
# personal rsync.net account
-Host suyin
+Host suyin zh3051.rsync.net
HostName zh3051.rsync.net
User zh3051
diff --git a/etc/ssh/known_hosts b/etc/ssh/known_hosts
index 1df6668..f9364c1 100644
--- a/etc/ssh/known_hosts
+++ b/etc/ssh/known_hosts
@@ -68,3 +68,25 @@ papo.im ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABB
usurpador ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINXBNw2GKp1ia+Y8R/k6oGbLcs73G9YIt9QgpdaUTwN6
usurpador ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDPNTHW2Zwf8X2cNuP2tZqyStIOJJG8vwlXvAp5zi7SbeBuATbT7YZBsiD/25MxeptCFTyVTyTu8iLUFeE31f2F78//OOzzQyOQAosaiMP8LsRmko5qgl+M1u576LHRITrBIDB80ucYk9FXOGakIs/acypMDsQEzG1BUgsT9DwnbIlaqEoh+cin3QPc/7d4OmCTZhzsMbePUtwupdTKQ1In6phYI7VHJQVyqsysYgWqbt6Lp2AFvrUlSJkoSLJLYo3HzXj8vN7WZ9Hsw1+koENLjQPxsG52WGNvK94HU6DBk84wx6FuFg/Z0FETwkva9dmkyJAEaioYyfyN7woA4jxJAu7TrMJRe4vxFFDrx+oTD29HIpvUIfN6rM/wkVnwhoIa5RgG29xj5IrGfYPs78OfmOumzJaKxRCe5YzLULN+Bt8ADhtXlD1KJRyJLs/f1fby2iwbPUwSEHHNMW2I8MHpGEpp0mt3Cc3MmS5Q4SlGz6EuM4olrQA7u2HTnFvmJQEWywN46mKgtz/3i/o9BkdyRzDa1kOUufj76Rg2D2WY+QkdFOtoLmnMQ5dmkbrjaG/TB0usAlT+G+t973K1hdyhxAuiWxYrRgB08X3SiZwLJFznNL0PLt8FhZiTi7rIGpFBFLAI1gKxDhrqrMdZj8uTt9b/34XioV5r1c/7i5nabQ==
+
+
+#
+# TOFU, unverified
+#
+
+devzat.hackclub.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC7oO3Zh+NMk8qsakdy7pvcifO04M38ET8LznC0Ad3G6KsrCz4PLIv8gi4YCBW9xJLrwy8ICj1bEh61Hf/rSzl0J4dWbZCKy656l1XihSd0fdjNefMpOY/FTejYt1TszkCbohOEwDM39t+/hr4C2LQ6YC9QeznBXBw2mNn7f4nW1lwDeoKV6hr3vlqSwZ2pvZaZu6sWdhYPcA6omLyyycs8ar/AecxDNWFQZhwPXbEElDS4iRl4Wlw5kK+DrxsJuxdkkf7ur8SN4GADKUEULsfShx9M7j/aTx+rqtWg0O4gC/sTtczED4ugkdxNTmahYEMhvutja/pSHIvMAERXjETQtbUj/DkPkHQoFpax+GBaFV3Ge2ys521AyE/2I6vuwcNk5cNVXan7SXtf5lSKKemtqBEpE+omRx6YIIClTxRJL1Ee6elgFkPloo0Kxx3tcdNN66bpStw9DVzcZ/coC7hLl2m4vya/OAjey2AIt+aifD2iNIiPubV2ZGHOV3SSUFM=
+
+
+#
+# TOFU, unverified
+#
+
+ssh.pijul.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICv96fnLXyeSnz4eCCpQVnSc377BGpzi0oER5m+3fAwE
+
+
+#
+# TOFU, unverified
+#
+
+anoncvs.netbsd.org ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAFhP4E9+oDpCQZ9yVQA7OzDF0tHnL3eykrqEt3hS+rdHXA0Ak5uCaxi2Aj2JRnAKW1JYbjQ5hyKHYZ2o6SfDimqaQBAt18nWm4CCKc20UbSgyWaH/x+O3J68j5n43MY8gHycPKcLHly2FjhDhuhHuoYODfq9GYn3okYsMu2T/i6Tg+SKw==
+anoncvs.netbsd.org ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEA3QiBl8leG9fqIJpKeNov0PKq5YryFFiroMWOPUv4hDFn8R0jC07YVaR/OSBrr37CTmGX5AFceXPzoFnLlwCqWR7rXg4NR75FTlTp9CG9EBAEtU8mee27KDrUFBTZdfVl2+aRYoAI5fTXA+0vpIO68Cq843vRWUZCcwinS4cNLUU=