diff --git a/packages/wayland/util/foot/config/foot.ini b/packages/wayland/util/foot/config/foot.ini new file mode 100644 index 0000000000..8c8608e416 --- /dev/null +++ b/packages/wayland/util/foot/config/foot.ini @@ -0,0 +1,197 @@ +# -*- conf -*- + +# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd) +term=xterm +# login-shell=no + +# app-id=foot +title=foo terminal +# locked-title=no + +font=monospace:size=12 +# font-bold= +# font-italic= +# font-bold-italic= +# line-height= +# letter-spacing=0 +# horizontal-letter-offset=0 +# vertical-letter-offset=0 +# underline-offset= +# box-drawings-uses-font-glyphs=no +dpi-aware=auto + +# initial-window-size-pixels=700x500 # Or, +# initial-window-size-chars= +# initial-window-mode=windowed +# pad=2x2 # optionally append 'center' +# resize-delay-ms=100 + +# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body} + +# bold-text-in-bright=no +# bell=none +# word-delimiters=,│`|:"'()[]{}<> +# selection-target=primary +# workers= + +[bell] +# urgent=no +# notify=no +# command= +# command-focused=no + +[scrollback] +# lines=1000 +# multiplier=3.0 +# indicator-position=relative +# indicator-format= + +[url] +# launch=xdg-open ${url} +# label-letters=sadfjklewcmpgh +# osc8-underline=url-mode +# protocols=http, https, ftp, ftps, file, gemini, gopher +# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="' + +[cursor] +style=beam +color=000000 eeeeee +blink=yes +# beam-thickness=1.5 +# underline-thickness= + +[mouse] +# hide-when-typing=no +# alternate-scroll-mode=yes + +[colors] +alpha=0.95 +background=000000 +foreground=eeeeee +regular0=1c1c1c # black +regular1=af005f # red +regular2=5faf00 # green +regular3=d7af5f # yellow +regular4=5fafd7 # blue +regular5=808080 # magenta +regular6=d7875f # cyan +regular7=d0d0d0 # white +bright0=bcbcbc # bright black +bright1=5faf5f # bright red +bright2=afd700 # bright green +bright3=af87d7 # bright yellow +bright4=ffaf00 # bright blue +bright5=ff5faf # bright magenta +bright6=00afaf # bright cyan +bright7=5f8787 # bright white +#selection-foreground=1c1c1c +#selection-background=af87d7 + +## Normal/regular colors (color palette 0-7) +# regular0=222222 # black +# regular1=cc9393 # red +# regular2=7f9f7f # green +# regular3=d0bf8f # yellow +# regular4=6ca0a3 # blue +# regular5=dc8cc3 # magenta +# regular6=93e0e3 # cyan +# regular7=dcdccc # white + +## Bright colors (color palette 8-15) +# bright0=666666 # bright black +# bright1=dca3a3 # bright red +# bright2=bfebbf # bright green +# bright3=f0dfaf # bright yellow +# bright4=8cd0d3 # bright blue +# bright5=fcace3 # bright magenta +# bright6=b3ffff # bright cyan +# bright7=ffffff # bright white + +## dimmed colors (see foot.ini(5) man page) +# dim0= +# ... +# dim7= + +## The remaining 256-color palette +# 16 = <256-color palette #16> +# ... +# 255 = <256-color palette #255> + +## Misc colors +# selection-foreground= +# selection-background= +# jump-labels= +# urls= +# scrollback-indicator= + +[csd] +# preferred=server +# size=26 +# font= +# color= +# border-width=0 +# border-color= +# button-width=26 +# button-color= +# button-minimize-color= +# button-maximize-color= +# button-close-color= + +[key-bindings] +# scrollback-up-page=Shift+Page_Up +# scrollback-up-half-page=none +# scrollback-up-line=none +# scrollback-down-page=Shift+Page_Down +# scrollback-down-half-page=none +# scrollback-down-line=none +# clipboard-copy=Control+Shift+c +# clipboard-paste=Control+Shift+v +# primary-paste=Shift+Insert +# search-start=Control+Shift+r +# font-increase=Control+plus Control+equal Control+KP_Add +# font-decrease=Control+minus Control+KP_Subtract +# font-reset=Control+0 Control+KP_0 +# spawn-terminal=Control+Shift+n +# minimize=none +# maximize=none +# fullscreen=none +# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none +# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none +# pipe-selected=[xargs -r firefox] none +# show-urls-launch=Control+Shift+u +# show-urls-copy=none +# noop=none + +[search-bindings] +# cancel=Control+g Control+c Escape +# commit=Return +# find-prev=Control+r +# find-next=Control+s +# cursor-left=Left Control+b +# cursor-left-word=Control+Left Mod1+b +# cursor-right=Right Control+f +# cursor-right-word=Control+Right Mod1+f +# cursor-home=Home Control+a +# cursor-end=End Control+e +# delete-prev=BackSpace +# delete-prev-word=Mod1+BackSpace Control+BackSpace +# delete-next=Delete +# delete-next-word=Mod1+d Control+Delete +# extend-to-word-boundary=Control+w +# extend-to-next-whitespace=Control+Shift+w +# clipboard-paste=Control+v Control+y +# primary-paste=Shift+Insert + +[url-bindings] +# cancel=Control+g Control+c Control+d Escape +# toggle-url-visible=t + +[mouse-bindings] +# primary-paste=BTN_MIDDLE +# select-begin=BTN_LEFT +# select-begin-block=Control+BTN_LEFT +# select-extend=BTN_RIGHT +# select-extend-character-wise=Control+BTN_RIGHT +# select-word=BTN_LEFT-2 +# select-word-whitespace=Control+BTN_LEFT-2 +# select-row=BTN_LEFT-3 diff --git a/packages/wayland/util/foot/package.mk b/packages/wayland/util/foot/package.mk new file mode 100644 index 0000000000..f9c6226bbd --- /dev/null +++ b/packages/wayland/util/foot/package.mk @@ -0,0 +1,31 @@ +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2021-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="foot" +PKG_VERSION="1.10.3" +PKG_SHA256="24f57d9926ead7bea491f1bdd97eaceae5fdc10c1cb3435ee588a8f9c9af805a" +PKG_LICENSE="MIT" +PKG_SITE="https://codeberg.org/dnkl/foot/" +PKG_URL="https://codeberg.org/dnkl/foot/archive/${PKG_VERSION}.tar.gz" +PKG_DEPENDS_TARGET="toolchain ncurses wayland wayland-protocols pixman fontconfig libxkbcommon fcft" +PKG_LONGDESC="A fast, lightweight and minimalistic Wayland terminal emulator" + +PKG_MESON_OPTS_TARGET="-Ddocs=disabled \ + -Dthemes=false \ + -Dime=false \ + -Dgrapheme-clustering=auto \ + -Dterminfo=disabled \ + -Ddefault-terminfo=xterm" + +post_makeinstall_target(){ + # clean up + safe_remove ${INSTALL}/usr/share/* + + # install scripts + mkdir -p ${INSTALL}/usr/bin + cp ${PKG_DIR}/scripts/foot.sh ${INSTALL}/usr/bin + + # install config + mkdir -p ${INSTALL}/usr/share/foot + cp ${PKG_DIR}/config/foot.ini ${INSTALL}/usr/share/foot +} diff --git a/packages/wayland/util/foot/scripts/foot.sh b/packages/wayland/util/foot/scripts/foot.sh new file mode 100755 index 0000000000..7e30579dc0 --- /dev/null +++ b/packages/wayland/util/foot/scripts/foot.sh @@ -0,0 +1,18 @@ +#!/bin/sh +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2021-present Team LibreELEC (https://libreelec.tv) + +FOOT_CONFIG_DIR=/storage/.config/foot +FOOT_CONFIG_DEFAULT=/usr/share/foot/foot.ini +FOOT_LOG_FILE=/var/log/foot.log + +if [ ! -f ${FOOT_CONFIG_DIR}/foot.ini ]; then + mkdir -p ${FOOT_CONFIG_DIR} + cp ${FOOT_CONFIG_DEFAULT} ${FOOT_CONFIG_DIR} +fi + +if [ -z "${LOCPATH}" ]; then + export LOCPATH="/storage/.cache/locpath" +fi + +/usr/bin/foot > ${FOOT_LOG_FILE} 2>&1