summaryrefslogtreecommitdiff
path: root/abraham-porter.sh
diff options
context:
space:
mode:
Diffstat (limited to 'abraham-porter.sh')
-rwxr-xr-xabraham-porter.sh180
1 files changed, 90 insertions, 90 deletions
diff --git a/abraham-porter.sh b/abraham-porter.sh
index 033ffb0..5b13524 100755
--- a/abraham-porter.sh
+++ b/abraham-porter.sh
@@ -6,9 +6,6 @@
doas="doas"
terminal="alacritty"
pager="rofi -location 2 -width -81 -e"
-ports_dir="/usr/local/poudriere/ports/default"
-pkglist="$HOME/.pkglist"
-jail="121x64"
## Error codes
@@ -19,16 +16,17 @@ NO_PKG_DESCR_FOUND=5
NO_WANT_ANOTHER_PROVIDED=6
-## Gets a port name from the user with dmenu
-get_port() {
- fetch -o /tmp/ports.txt -i /tmp/ports.txt https://pkg.53hor.net/ports.txt
- dmenu -p "Port" < /tmp/ports.txt
+## Lets user choose a port from a list of FreshPorts search results.
+search_port() {
+ query="$(dmenu -p 'Search?')"
+ fetch -qo - "https://www.freshports.org/search.php?stype=name&method=match&num=500&format=plaintext&query=$query"\
+ | dmenu -p "Port?"
}
## Gets an action from the user with dmenu
get_action() {
- action=$(dmenu -p "Abraham Porter" << EOF
+ action=$(dmenu -p "Abraham Porter" << EOH
1. print pkg-descr
2. set options
3. set options, add to pkglist
@@ -37,70 +35,70 @@ get_action() {
6. add to pkglist
7. set options on pkglist
8. build entire pkglist (lengthy and intensive!)
-EOF
+EOH
)
echo "$action" | cut -d'.' -f1
}
-## Handle printing a package description file
-handle_print_pkg_desc() {
- port=$(get_port)
- [ -z $port ] && exit $NO_PORT_PROVIDED
- pkg_descr="$ports_dir"/$port/pkg-descr
- [ ! -f "$pkg_descr" ] && exit $NO_PKG_DESCR_FOUND
- text=$(cat "$ports_dir"/$port/pkg-descr)
- $pager "$text"
-}
+### Handle printing a package description file
+#handle_print_pkg_desc() {
+# port=$(get_port)
+# [ -z $port ] && exit $NO_PORT_PROVIDED
+# pkg_descr="$ports_dir"/$port/pkg-descr
+# [ ! -f "$pkg_descr" ] && exit $NO_PKG_DESCR_FOUND
+# text=$(cat "$ports_dir"/$port/pkg-descr)
+# $pager "$text"
+#}
-## Handle appending a port to the pkglist. Skips appending if already present
-handle_append_pkglist() {
- port="$1"
- grep -q $port "$pkglist" && exit $OK
- cp "$pkglist" "$pkglist".bak
- echo $port >> "$pkglist"
- sort "$pkglist" -o "$pkglist"
- echo $port
-}
+### Handle appending a port to the pkglist. Skips appending if already present
+#handle_append_pkglist() {
+# port="$1"
+# grep -q $port "$pkglist" && exit $OK
+# cp "$pkglist" "$pkglist".bak
+# echo $port >> "$pkglist"
+# sort "$pkglist" -o "$pkglist"
+# echo $port
+#}
-## Handle running poudriere options on a single port
-handle_poudriere_options_single() {
- port="$1"
- $terminal -e $doas poudriere options -c $port
- echo $port
-}
+### Handle running poudriere options on a single port
+#handle_poudriere_options_single() {
+# port="$1"
+# $terminal -e $doas poudriere options -c $port
+# echo $port
+#}
-## Handle running poudriere bulk on a single port
-handle_poudriere_bulk_single() {
- port="$1"
- notify-send "Poudriere bulk started" "$port"
- $terminal -e $doas poudriere bulk -j "$jail" $port
- notify-send "Poudriere bulk finished" "$port"
-}
+### Handle running poudriere bulk on a single port
+#handle_poudriere_bulk_single() {
+# port="$1"
+# notify-send "Poudriere bulk started" "$port"
+# $terminal -e $doas poudriere bulk -j "$jail" $port
+# notify-send "Poudriere bulk finished" "$port"
+#}
-## Handle running poudriere options on pkglist
-handle_poudriere_options_pkglist() {
- $terminal -e $doas poudriere options -f "$pkglist"
-}
+### Handle running poudriere options on pkglist
+#handle_poudriere_options_pkglist() {
+# $terminal -e $doas poudriere options -f "$pkglist"
+#}
-## Handle running poudriere bulk on pkglist
-handle_poudriere_bulk_pkglist() {
- notify-send "Poudriere bulk started" "(pkglist)"
- $terminal -e $doas poudriere bulk -j "$jail" -f "$pkglist"
- notify-send "Poudriere bulk finished" "(pkglist)"
-}
+### Handle running poudriere bulk on pkglist
+#handle_poudriere_bulk_pkglist() {
+# notify-send "Poudriere bulk started" "(pkglist)"
+# $terminal -e $doas poudriere bulk -j "$jail" -f "$pkglist"
+# notify-send "Poudriere bulk finished" "(pkglist)"
+#}
get_another() {
- choice=$(dmenu -p "Do you want another?" << EOF
+ choice=$(dmenu -p "Do you want another?" << EOH
no
yes
-EOF
+EOH
)
[ $choice = "no" ] && return 1
[ $choice = "yes" ] && return 0
@@ -110,43 +108,45 @@ EOF
## Main
while true ; do
- action=$(get_action)
- case $action in
- 1)
- # 1. print pkg-descr
- handle_print_pkg_desc
- ;;
- 2)
- # 2. set options
- handle_poudriere_options_single $(get_port)
- ;;
- 3)
- # 3. set options, add to pkglist
- handle_poudriere_options_single $(handle_append_pkglist $(get_port))
- ;;
- 4)
- # 4. set options, build pkg
- handle_poudriere_bulk_single $(handle_poudriere_options_single $(get_port))
- ;;
- 5)
- # 5. set options, build pkg, add to pkglist
- handle_poudriere_bulk_single $(handle_poudriere_options_single $(handle_append_pkglist $(get_port)))
- ;;
- 6)
- # 6. add to pkglist
- handle_append_pkglist $(get_port)
- ;;
- 7)
- # 7. set options on pkglist
- handle_poudriere_options_pkglist
- ;;
- 8)
- # 8. build entire pkglist (lengthy and intensive!)
- handle_poudriere_bulk_pkglist
- ;;
- *)
- exit $NO_ACTION_PROVIDED
- ;;
- esac
+ port="$(search_port)"
+ #action=$(get_action)
+ #case $action in
+ # 1)
+ # # 1. print pkg-descr
+ # handle_print_pkg_desc
+ # ;;
+ # 2)
+ # # 2. set options
+ # handle_poudriere_options_single $(get_port)
+ # ;;
+ # 3)
+ # # 3. set options, add to pkglist
+ # handle_poudriere_options_single $(handle_append_pkglist $(get_port))
+ # ;;
+ # 4)
+ # # 4. set options, build pkg
+ # handle_poudriere_bulk_single $(handle_poudriere_options_single $(get_port))
+ # ;;
+ # 5)
+ # # 5. set options, build pkg, add to pkglist
+ # handle_poudriere_bulk_single $(handle_poudriere_options_single $(handle_append_pkglist $(get_port)))
+ # ;;
+ # 6)
+ # # 6. add to pkglist
+ # handle_append_pkglist $(get_port)
+ # ;;
+ # 7)
+ # # 7. set options on pkglist
+ # handle_poudriere_options_pkglist
+ # ;;
+ # 8)
+ # # 8. build entire pkglist (lengthy and intensive!)
+ # handle_poudriere_bulk_pkglist
+ # ;;
+ # *)
+ # exit $NO_ACTION_PROVIDED
+ # ;;
+ #esac
+ echo $port
get_another || exit $OK
done