#!/bin/bash . $HOME/.config/mabox/mabox.conf # jgmenu_use-icons= gtkbookmarks() { BOOKMARKS="$HOME/.gtk-bookmarks" if [[ -s "$BOOKMARKS" ]]; then while read -r line do uri=$(echo $line | cut -b 8- | cut -d' ' -f1 | sed 's/%20/ /g') dirs+=("${line#* },^pipe(jgbrowser \"${uri}\")") done <"$BOOKMARKS" printf "%b\n" "^sep(Zakładki GTK)" printf '%s\n' "${dirs[@]}" fi } # to ma być też podczas autostaru robione do pliku csv virtualboxes() { if [[ -x "$(command -v VBoxManage)" ]]; then echo "^sep(Maszyny wirtualne)" IFS='"';VBoxManage list -s vms | while read empty vm checksum; do echo "$vm,vboxmanage startvm \"${vm}\"";done fi } JGWIDTH="280" [ $(pidof picom) ] && RADIUS="4" #SCREENWIDTH=$(xdpyinfo | awk '/^ +dimensions/ {print $2}' | cut -d 'x' -f1) #Poniższe, wywalić do mabox.conf który i tak jest wczytywany - uaktualiać przez usługę z autostartu + sponge z moreutils OSNAME=$(lsb_release -d | awk '{print $2}') OSVERSION=$(lsb_release -r | awk '{print $2}') OSCODE=$(lsb_release -c | awk '{print $2}') #KERNEL=$(uname -r) mkconfigfile() { cat < ${CONFIG_FILE} position_mode = ${POSITION_MODE:-fixed} csv_cmd = lx stay_alive = 0 hide_back_items = ${HIDE_BACK_ITEMS:-0} terminal_exec = terminator terminal_args = -e tabs = ${TABS:-220} menu_margin_x = 0 menu_margin_y = 0 menu_width = $JGWIDTH menu_height_min = ${MENU_HEIGHT_MIN:-0} menu_height_max = ${MENU_HEIGHT_MAX:-0} menu_padding_top = ${MENU_PADDING_TOP:-90} menu_padding_right = ${MENU_PADDING_RIGHT:-10} menu_padding_bottom = ${MENU_PADDING_BOTTOM:-10} menu_padding_left = ${MENU_PADDING_LEFT:-10} menu_radius = ${MENU_RADIUS:-0} menu_valign = ${MENU_VALIGN:-top} menu_halign = ${MENU_HALIGN:-left} item_height = ${ITEM_HEIGHT:-20} item_halign = ${ITEM_HALIGN:-left} item_padding = 4 item_radius = 2 arrow_string = ${ARROW_STRING:-⮞} columns = ${COLUMNS:-1} sep_markup = font="Noto Sans Bold 9" foreground="#FFFFFF" font = ${FONT:-Noto Sans Medium 9} icon_size = ${ICON_SIZE:-0} color_menu_bg = ${COLOR_MENU_BG:-#222222 80} color_menu_border = ${COLOR_MENU_BORDER:-#2f9b85 100} color_norm_bg = ${COLOR_NORM_BG:-#000000 0} color_norm_fg = ${COLOR_NORM_FG:-#CCCCCC 100} color_sel_bg = ${COLOR_SEL_BG:-#169f6f 60} color_sel_fg = ${COLOR_SEL_FG:-#f8f8f8 100} color_sel_border = ${COLOR_SEL_BORDER:-#504e65 100} color_sep_fg = ${COLOR_SEP_FG:-#4D4D4D 100} color_sep_bg = ${COLOR_SEP_BG:-#262626 100} color_scroll_ind = ${COLOR_SCROLL_IND:-#504e65 100} EOF } #MENU GŁÓWNE main() { echo $1; CONFIG_FILE=$(mktemp) MENU_ITEMS=$(mktemp) trap "rm -f ${CONFIG_FILE} ${MENU_ITEMS}" EXIT POSITION_MODE=${1:-pointer} HIDE_BACK_ITEMS=1 MENU_PADDING_TOP=30 MENU_PADDING_RIGHT=0 MENU_PADDING_BOTTOM=0 MENU_PADDING_LEFT=0 JGWIDTH=0 ITEM_HEIGHT=20 [ $jgmenu_use_icons == true ] && ICON_SIZE=16 MENU_RADIUS=${RADIUS:-0} mkconfigfile #jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null jgmenu --config-file=${CONFIG_FILE} 2>/dev/null } # PANEL PO PRAWEJ AKTUALIZACE-USTAWIENIA-POMOC right() { CONFIG_FILE=$(mktemp) MENU_ITEMS=$(mktemp) trap "rm -f ${CONFIG_FILE} ${MENU_ITEMS}" EXIT MENU_HALIGN="right" ITEM_HALIGN="right" ARROW_STRING=" ⮜ " MENU_HEIGHT_MIN=$(xdpyinfo | awk '/^ +dimensions/ {print $2}' | cut -d 'x' -f2) mkconfigfile cat < ${MENU_ITEMS} @icon,,225,10,48,48,4,left,top,,,/usr/share/icons/hicolor/48x48/apps/distributor-logo-mabox.png @text,,20,10,200,20,4,left,top,#EEEEEE,#111111,$OSNAME $OSVERSION $OSCODE @text,,20,30,200,20,4,left,top,#666666,#444444,$USER@$HOSTNAME @text,,20,50,200,20,4,left,top,#666666,#444444, #@rect,,40,70,262,20,0,left,top,#666666,#262626, @text,,74,70,20,20,0,left,top,auto,#222222, @search,,90,70,292,20,4,left,top,auto,#262626,""" pisz, aby wyszukać""" . $HOME/.config/mabox/right-prepend.csv ^sep(Zarządzanie oprogramowaniem) Aktualizacja systemu (Pamac)  ,pamac-manager --updates Aktualizacja systemu (cli)  ,^term(sudo pacman -Syyu) Menadżer pakietów - Pamac  ,pamac-manager Odnawianie kluczy  ,^term(sudo pacman -Sy archlinux-keyring manjaro-keyring mabox-keyring) Ranking mirrorów  ,^checkout(mirrory) ^sep(Ustawienia) System i sprzęt  ,^root(system) Wygląd i zachowanie  ,^root(wyglad) ^sep(Pomoc) Skróty klawiszowe  , Zasoby online  ,^root(weblinks) ^sep(Inne) Zrzut ekranu  ,mb-jgtools screenshot ^sep(Wyjście) Wyloguj  ,openbox --exit Uśpij  ,systemctl suspend Hibernuj  ,systemctl hibernate, Uruchom ponownie  ,systemctl reboot Wyłącz  ,systemctl poweroff Zablokuj ekran  , betterlockscreen -l # Niestety CSV nie obsługuke Unikodu #. $HOME/.config/mabox/logout.csv . $HOME/.config/mabox/right-append.csv ^tag(system) ^sep(System i sprzęt) Język i formaty,manjaro-settings-manager -m msm_locale, Pakiety językowe,manjaro-settings-manager -m msm_language_packages, Jądro systemowe,manjaro-settings-manager -m msm_kernel, Konta użytkowników,manjaro-settings-manager -m msm_users, Data i Czas,manjaro-settings-manager -m msm_timedate, Ustawienia klawiatury,manjaro-settings-manager -m msm_keyboard, Konfiguracja sprzętowa,manjaro-settings-manager -m msm_mhwd,  wróć,^back() ^tag(mirrory) Wszystkie,^term(sudo pacman-mirrors -i -c all) Najbliższe (wg GEOIP),term(sudo pacman-mirrors -i --geoip)  wróć,^back() ^tag(wyglad) ^sep(Wygląd i zachowanie) Wystrój i ikony,lxappearance, Wybór tapety,nitrogen, Menadżer konfiguracji OpenBox,obconf, Konfiguracja powiadomień,xfce4-notifyd-config Preferowane aplikacje,exo-preferred-applications Ustawienia Menedżera logowania,pkexec lightdm-settings, Ustawienia zasilania,xfce4-power-manager-settings ^sep(Elementy pulpitu Mabox) Conky,^pipe(jgmenu_run ob --cmd=mabox-conky-pipemenu) Panele Tint2,^pipe(jgmenu_run ob --cmd=mabox-tint2-pipemenu) Kompozytor,^pipe(jgmenu_run ob --cmd='mabox-compositor' --tag='Kompo'),compton ^sep(Predefiniowane konfiguracje pulpitu) Menadżer schematów,mb-obthemes  wróć,^back() ^tag(weblinks) ^sep(Zasoby online) ^sep() ^sep(Mabox) Mabox - pierwsze kroki,exo-open --launch WebBrowser https://pl.maboxlinux.org/przewodnik-uzytkownika/ Forum Maboxa,exo-open --launch WebBrowser https://forum.maboxlinux.org/ ^sep(Manjaro) Strona domowa,exo-open --launch WebBrowser https://manjaro.org Wiki,exo-open --launch WebBrowser https://wiki.manjaro.org Forum,exo-open --launch WebBrowser https://forum.manjaro.org Manjaro PL,exo-open --launch WebBrowser https://manjaro.pl Forum Manjaro PL,exo-open --launch WebBrowser https://forum.manjaro.pl ^sep(ArchLinux) ArchWiki,exo-open --launch WebBrowser https://wiki.archlinux.org/ ^sep() ^sep(Openbox) ^sep(Dokumentacja Tint2) ^sep(Dokumentacja Conky)  wróć,^back() EOF jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null } places() { CONFIG_FILE=$(mktemp) MENU_ITEMS=$(mktemp) trap "rm -f ${CONFIG_FILE} ${MENU_ITEMS}" EXIT MENU_HEIGHT_MIN=$(xdpyinfo | awk '/^ +dimensions/ {print $2}' | cut -d 'x' -f2) JGWIDTH=240 ITEM_HEIGHT="18" mkconfigfile cat < ${MENU_ITEMS} @icon,,10,20,48,48,4,left,top,,,/usr/share/icons/hicolor/48x48/apps/mbcc.png @text,,70,10,200,20,4,left,top,#EEEEEE,#111111,$OSNAME $OSVERSION $OSCODE @text,,70,30,200,20,4,left,top,#666666,#444444,$USER@$HOSTNAME @text,,70,50,200,20,4,left,top,#666666,#444444, . $HOME/.config/mabox/places-prepend.csv Wyszukiwarka plików, fsearch ^sep(Szybka nawigacja)  Katalog główny,^pipe(jgbrowser /)  Katalog domowy,^pipe(jgbrowser)  $(basename $(xdg-user-dir DESKTOP)),^pipe(jgbrowser $(xdg-user-dir DESKTOP))  $(basename $(xdg-user-dir DOWNLOAD)),^pipe(jgbrowser $(xdg-user-dir DOWNLOAD)) #  $(basename $(xdg-user-dir TEMPLATES)),^pipe(jgbrowser $(xdg-user-dir TEMPLATES)) #  $(basename $(xdg-user-dir PUBLICSHARE)),^pipe(jgbrowser $(xdg-user-dir PUBLICSHARE))  $(basename $(xdg-user-dir DOCUMENTS)),^pipe(jgbrowser $(xdg-user-dir DOCUMENTS))  $(basename $(xdg-user-dir MUSIC)),^pipe(jgbrowser $(xdg-user-dir MUSIC))  $(basename $(xdg-user-dir PICTURES)),^pipe(jgbrowser $(xdg-user-dir PICTURES))  $(basename $(xdg-user-dir VIDEOS)),^pipe(jgbrowser $(xdg-user-dir VIDEOS)) #^sep(Zakładki) ^sep() $(gtkbookmarks) . $HOME/.config/mabox/places-append.csv EOF jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null } mblogout() { CONFIG_FILE=$(mktemp) MENU_ITEMS=$(mktemp) trap "rm -f ${CONFIG_FILE} ${MENU_ITEMS};wmctrl -k off" EXIT JGWIDTH="340" MENU_HALIGN="center" MENU_VALIGN="center" MENU_PADDING_TOP=213 TABS="280" ITEM_HEIGHT="30" FONT="Noto Sans Medium 10" MENU_RADIUS=${RADIUS:-0} mkconfigfile wmctrl -k on THUMB="$(DISPLAY=:0 scrot -t 340x213 -o /tmp/mblogout.png -e 'echo $m')" cat < ${MENU_ITEMS} @icon,,0,0,340,100,4,left,top,,,$THUMB @icon,,10,20,48,48,4,left,top,,,/usr/share/icons/hicolor/48x48/apps/mbcc.png @text,,180,170,220,20,4,left,top,#EEEEEE,#111111,$OSNAME $OSVERSION $OSCODE @text,,180,190,200,20,4,left,top,#DDDDDD,#DDDDDD,$USER@$HOSTNAME ^sep(Wylogować?)  Wyloguj,openbox --exit  Uśpij,systemctl suspend  Hibernuj,systemctl hibernate  Uruchom ponownie,systemctl reboot  Wyłącz,systemctl poweroff  Zablokuj ekran, betterlockscreen -l ^sep()  Anuluj esc,exit 1 EOF jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null } screenshot() { CONFIG_FILE=$(mktemp) MENU_ITEMS=$(mktemp) trap "rm -f ${CONFIG_FILE} ${MENU_ITEMS}" EXIT #Lokalne zmienne; JGWIDTH="340" MENU_PADDING_TOP=213 MENU_HALIGN="center" MENU_VALIGN="center" TABS="280" ITEM_HEIGHT="25" FONT="Noto Sans Medium 10" MENU_RADIUS=${RADIUS:-0} IMG="$(xdg-user-dir PICTURES)/Mabox_%Y-%m-%d-%H:%M:%s.png" VIEW="'viewnior $IMG'" THUMB="$(DISPLAY=:0 scrot -t 340x213 -o /tmp/jgscrot.png -e 'echo $m')" mkconfigfile cat < ${MENU_ITEMS} @icon,,0,0,340,100,4,left,top,,,$THUMB ^sep(Zrzuty ekranu)  Pełny ekran,^root(full)  Aktywne okno,^root(window)  Aktywne okno (bez dekoracji),^root(borderless)  Zaznaczony obszar lub okno,scrot -s $IMG -e $VIEW  Multimonitor, scrot -m $IMG -e $VIEW ^sep()  Anuluj esc,exit 1 ^tag(full) ^sep(Pełny ekran )  Teraz,scrot $IMG -e $VIEW  Za 5 sekund,scrot -d 5 $IMG -e $VIEW  Za 10 sekund,scrot -d 10 $IMG -e $VIEW  wróć,^back() ^tag(window) ^sep(Aktywne Okno )  Teraz,scrot -d 1 -u -b $IMG -e $VIEW  Za 5 sekund,scrot -d 5 -u -b $IMG -e $VIEW  Za 10 sekund,scrot -d 10 -u -b $IMG -e $VIEW  wróć,^back() ^tag(borderless) ^sep(Aktywne Okno - bez dekoracji)  Teraz,scrot -d 1 -u $IMG -e $VIEW  Za 5 sekund,scrot -d 5 -u $IMG -e $VIEW  Za 10 sekund,scrot -d 10 -u $IMG -e $VIEW  wróć,^back() EOF jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null } panels() { CONFIG_FILE=$(mktemp) MENU_ITEMS=$(mktemp) trap "rm -f ${CONFIG_FILE} ${MENU_ITEMS}" EXIT #Lokalne zmienne; JGWIDTH="300" MENU_HALIGN="center" MENU_VALIGN="center" MENU_HEIGHT_MIN="210" #MENU_HEIGHT_MAX="210" TABS="280" ITEM_HEIGHT="50" FONT="Noto Sans Medium 12" COLUMNS="1" mkconfigfile cat < ${MENU_ITEMS} @icon,,10,20,48,48,4,left,top,,,/usr/share/icons/hicolor/48x48/apps/mbcc.png @text,,70,10,220,20,4,left,top,#EEEEEE,#111111,$OSNAME $OSVERSION $OSCODE @text,,70,30,240,20,4,left,top,#666666,#444444,$USER@$HOSTNAME @text,,70,50,200,20,4,left,top,#666666,#444444,Panele dla Maboxa  Szybka nawigacja,mb-jgtools places  System panel,mb-jgtools right  Menu główne,mb-jgtools main  Zrzuty ekranu,mb-jgtools screenshot  Wylogowanie,mb-jgtools mblogout EOF jgmenu --config-file=${CONFIG_FILE} --csv-file=${MENU_ITEMS} 2>/dev/null } #--------------------------------------------------------------------+ #Color picker, usage: printf $BLD$CUR$RED$BBLU'Hello World!'$DEF | #-------------------------+--------------------------------+---------+ # Text color | Background color | | #-----------+-------------+--------------+-----------------+ | # Base color|Lighter shade| Base color | Lighter shade | | #-----------+-------------+--------------+-----------------+ | BLK='\e[30m'; blk='\e[90m'; BBLK='\e[40m'; bblk='\e[100m' #| Black | RED='\e[31m'; red='\e[91m'; BRED='\e[41m'; bred='\e[101m' #| Red | GRN='\e[32m'; grn='\e[92m'; BGRN='\e[42m'; bgrn='\e[102m' #| Green | YLW='\e[33m'; ylw='\e[93m'; BYLW='\e[43m'; bylw='\e[103m' #| Yellow | BLU='\e[34m'; blu='\e[94m'; BBLU='\e[44m'; bblu='\e[104m' #| Blue | MGN='\e[35m'; mgn='\e[95m'; BMGN='\e[45m'; bmgn='\e[105m' #| Magenta | CYN='\e[36m'; cyn='\e[96m'; BCYN='\e[46m'; bcyn='\e[106m' #| Cyan | WHT='\e[37m'; wht='\e[97m'; BWHT='\e[47m'; bwht='\e[107m' #| White | #----------------------------------------------------------+---------+ # Effects | #--------------------------------------------------------------------+ DEF='\e[0m' #Default color and effects | BLD='\e[1m' #Bold\brighter | DIM='\e[2m' #Dim\darker | CUR='\e[3m' #Italic font | UND='\e[4m' #Underline | INV='\e[7m' #Inverted | COF='\e[?25l' #Cursor Off | CON='\e[?25h' #Cursor On | #--------------------------------------------------------------------+ case "$1" in main) main "$2";; right) right;; mblogout) mblogout;; places) places;; screenshot) screenshot;; panels) panels;; *) echo -e " ${GRN}Kolekcja narzędzi dla Mabox-a stworzonych z pomocą Jgmenu Użycie: ${DEF} $(basename "$0")${YLW} [${RED} OPCJA${YLW} ] ${GRN} Opcje: ${YLW} >${RED} main ${YLW} -${DEF} main menu - replaces OB menu ${YLW} >${RED} panels ${YLW} -${DEF} all panel access ${YLW} >${RED} right ${YLW} -${DEF} run right panel ${YLW} >${RED} places ${YLW} -${DEF} places menu ${YLW} >${RED} mblogout ${YLW} -${DEF} run logout script ${YLW} >${RED} screenshot ${YLW} -${DEF} run screenshot script " >&2 exit 1 ;; esac exit 0