aboutsummaryrefslogtreecommitdiff
path: root/extra/yash
diff options
context:
space:
mode:
Diffstat (limited to 'extra/yash')
-rwxr-xr-xextra/yash/build18
-rw-r--r--extra/yash/checksums3
-rw-r--r--extra/yash/depends1
-rw-r--r--extra/yash/files/doas42
-rw-r--r--extra/yash/meta3
-rw-r--r--extra/yash/sources2
-rw-r--r--extra/yash/version1
7 files changed, 70 insertions, 0 deletions
diff --git a/extra/yash/build b/extra/yash/build
new file mode 100755
index 00000000..9271a93a
--- /dev/null
+++ b/extra/yash/build
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+# LANG variable can often lead to failures in compiling lineedit commands. So we
+# disable it.
+unset LANG
+export LDFLAGS="$LDFLAGS -static"
+
+./configure \
+ --prefix=/usr \
+ --enable-help \
+ --enable-history \
+ --disable-nls \
+ --disable-printf \
+ --enable-socket \
+ --enable-lineedit
+
+make
+make DESTDIR="$1" install
diff --git a/extra/yash/checksums b/extra/yash/checksums
new file mode 100644
index 00000000..891ff908
--- /dev/null
+++ b/extra/yash/checksums
@@ -0,0 +1,3 @@
+%BLAKE3
+b53e011ff3e9ef8f472d282288be06e351c17c8333f71790e6a22cb2f91eff78 yash-2.55.tar.xz
+74aaf3452e29b14ae02d6c142eae5b50083b56f2ef93a210916250baed399964 doas
diff --git a/extra/yash/depends b/extra/yash/depends
new file mode 100644
index 00000000..6a470ffa
--- /dev/null
+++ b/extra/yash/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/extra/yash/files/doas b/extra/yash/files/doas
new file mode 100644
index 00000000..ffe41bbc
--- /dev/null
+++ b/extra/yash/files/doas
@@ -0,0 +1,42 @@
+# Completion script for the "doas" command.
+function completion/doas {
+
+ typeset OPTIONS ARGOPT PREFIX
+ OPTIONS=( #>#
+ "C:; specify the config file to parse and check its contents"
+ "L; Clear any persisted authorizations from previous invocations"
+ "n; Non interactive mode, fail if doas would prompt for password"
+ "s; run \$SHELL"
+ "u:; specify the user to change to"
+ ) #<#
+
+ command -f completion//parseoptions
+ case $ARGOPT in
+ (-)
+ command -f completion//completeoptions
+ ;;
+ (C)
+ complete -P "$PREFIX" -f
+ ;;
+ (u)
+ complete -P "$PREFIX" -u
+ ;;
+ ('')
+ typeset i=2 edit=false
+ while [ $i -le ${WORDS[#]} ]; do
+ case ${WORDS[i]} in
+ (--) break;;
+ (-e) edit=true;;
+ esac
+ i=$((i+1))
+ done
+ if $edit; then
+ complete -P "$PREFIX" -f
+ else
+ command -f completion//getoperands
+ command -f completion//reexecute
+ fi
+ ;;
+ esac
+
+}
diff --git a/extra/yash/meta b/extra/yash/meta
new file mode 100644
index 00000000..948c1ab3
--- /dev/null
+++ b/extra/yash/meta
@@ -0,0 +1,3 @@
+description: POSIX-compliant shell
+license: GPL-2.0-or-later
+maintainer: Cem Keylan <cem@carbslinux.org>
diff --git a/extra/yash/sources b/extra/yash/sources
new file mode 100644
index 00000000..eba819af
--- /dev/null
+++ b/extra/yash/sources
@@ -0,0 +1,2 @@
+https://github.com/magicant/yash/releases/download/2.55/yash-2.55.tar.xz
+files/doas share/completion
diff --git a/extra/yash/version b/extra/yash/version
new file mode 100644
index 00000000..c2266e87
--- /dev/null
+++ b/extra/yash/version
@@ -0,0 +1 @@
+2.55 1