Date: 2022-06-20 20:00:00 Tags: technologie OpenBSD desktop Desc: Dlouho ocekavane pokracovani me legendarni Instalace OpenBSD. # BareGUI Po puldruhem roce se dostavam k pokracovani Instalace OpenBSD. Druha cast je tedy na svete. Po dlouhem obdobi pouzivani cwm(1) jsem dostal chut se vratit ke klasictejsimu desktopovemu prostredi. Nainstaloval jsem tedy Xfce, jedno z mene narocnych a vicemene kompletnich DE (desktop environment), velmi rozsirene v Linuxove komunite i na BSD. Nastaveni Xfce je jednoduche a je dobre popsano nize. Na mem notebooku mi vsak Xfce pripadalo zpomalene a navic jsem si neuzil takovou legraci s nastavovanim. Vratil jsem se tedy k desktopu, ktery jeho autor nazyva BareGui a rika o nem nasledujici: > This grew from a previous SimpleDesktop thread that built a lightweight Desktop Environment (DE) in OpenBSD. The older project relied on manually edited configuration scripts and menus. This iteration produces a fast, lightweight stacking desktop with a resting memory footprint around 170mb. When a user adds an application that has a freedesktop compliant *.desktop entry, it will automatically be added to the menu. Jeho autorem je jediny clovek, shep, casty prispevatel na daemonforums.org. Vzhled BareGUI je mirne inspirovan MacOS. Povazuju BareGUI za jednoduchy funkcni desktop a chci se zde venovat jeho instalaci, ale nejprve par slov o DE v unixovskem svete obecne. ## Desktopova prostredi Uzivatel, ktery k unixovskym systemum presel z Windows, si vetsinou neni vedom, ze to, co zna jako operacni system (OS), je v unixovskem svete zname jako desktopove prostredi (DE), oddelene od samotneho systemu. Pro me bylo zpocatku prekvapenim, kdyz na me po dokonceni instalace Linuxoveho distra ziral blikajici kurzor terminalu. To je ten slavny Linux? Ano, je. Graficke prostredi (GUI) se jmenuje Xorg a instaluje se zvlast. Teprve pak se na me obrazovce objevilo neco, co uz jsem znal: plochu a otevrene okno (znalci tusi, ze se jedna o twm(1), prastary window manager, nehezky, ale funkcni). Pomalu jsem zacal chapat, jak v praxi funguje filozofie programu, co umi pouze 1 vec, ale umi ji dobre. To, cemu se rika DE, je ve skutecnosti souhra mnoha programu, ktere obstaravaji funkce, na nez jsme zvykli z Windows. Tento pristup ma tu vyhodu, ze lze usit sve GUI na miru vlastnim potrebam a vykonnosti sveho stroje. To je zaroven i nevyhoda, nebot je treba se trochu ponorit do problematiky a stravit nejaky cas ucenim a experimentovanim. Unixovsti uzivatele zpravidla voli jednu ze dvou cest: _Plnohodnotne DE_ jako Gnome ci KDE, zminene Xfce nebo MATE, abych jmenoval ty nejznamejsi. Gnome a KDE predstavuji desktop zcela na urovni Windows a mozna lepsi. Jejich vyvojari venuji cas sladeni desitek az stovek komponent, aby vytvorili funkcni a vzajemne provazany, spolupracujici celek. Mam zkusenost hlavne s KDE a rekl bych, ze se jim to dari. Xfce a MATE jsou mensi DE, maji mene "ficur" a komponent, ale stale dobre pouzitelne a mene narocne na systemove prostredky, takze clovek nemusi kazde 2 roky kupovat novy notebook, ktery utahne nejnovejsi verzi Windows. Zkusenejsi uzivatele casto voli instalaci _samotneho window manageru_ a pridavaji ekosystem aplikaci dle vlastniho vyberu z nepreberneho vyberu samostatnych programu ci komponent ruznych DE. A samozrejme skriptu obstaravajicich potrebne funkce. BareGUI je prikladem takoveho pristupu. Neni treba stat se programatorem na plny uvazek, aby to clovek zvladl. Vetsi hlavolam, o tom neni sporu, ale konecny vysledek je uspokojivejsi, lepe sity na miru, snadneji upravitelny, protoze clovek rozumi, jak je celek poskladany dohromady. V "konfekcnim" DE preci jen rozhoduje nekdo jiny, kde co ma byt a jak to ma fungovat, i pres jinak velmi bohate moznosti nastaveni. Doufam, ze tato delsi odbocka dostatecne objasnila problematiku GUI v unixovskem prostredi a nyni se muzeme pustit do prace. ## BareGUI Zakladni instalace OpenBSD jiz obsahuje Xorg ci presneji Xenocaru, upraveny Xorg, aby vyhovoval bezpecnostnim pozadavkum OpenBSD. Pokud jsme pri instalaci nastavili login manager xenodm(1), system nas automaticky vyzve k prihlaseni do GUI, defaultne fvwm(1). Odtud se muzeme vrhnout do instalace a konfigurace BareGUI. BareGUI je v podstate slozka obsahujici navod, 2 seznamy aplikaci a konfiguracni soubory, ktere se kopiruji do prislusnych adresaru dle instrukci v navodu. Jednoduche, genialni. Filozofii BareGUI je maximalne vyuzit nastroju, jez jsou k dispozici v zakladni instalaci OpenBSD. ## Instalace Nejprve je treba stahnout zkomprimovanou slozku: $ ftp -o BareGUI.tar.gz http://www.daemonforums.org/attachment.php?attachmentid=958&d=1592676088 $ tar xzfv BareGUI.tar.gz Nyni je treba nainstalovat nutne aplikace. Instalator programu na OpenBSD, pkg_add(1) umi instalovat dle seznamu ulozeneho v textovem souboru: # pkg_add -l BareGUI_pkglist.txt Nasleduji uzivatelske a systemove nastaveni. ## Zakladni uzivatelska nastaveni Zacneme kopirovanim konfiguracnich souboru. Jedna se o konfiguraci spousteni GUI, soubor `.xsession`, terminalu, soubor `.Xdefaults`, a instalovanych programu, ktere patri do adresare `~/.config`. V dobre uklizenem systemu obsahuje tento adresar pokud mozno vsechny konfiguracni soubory aplikaci. To ovsem neni muj pripad. LARBS je v tomto ohledu jina kava, nebot Luke Smith je muz, jenz bere jarni uklid `$HOME` vazne. Soubor `.xsession` se cte pri prihlaseni do GUI a nastavuje locale, cili jakym jazykem system komunikuje, layout klavesnice atd. Nastaveni castecneho ceskeho locale a prepinani americkeho a ceskeho QWERTY layoutu se nastavi pridanim radek: export LC_CTYPE=cs_CZ.UTF-8 setxkbmap -layout "us,cz" -variant ",qwerty" -option "grp:ctrls_toggle,caps:swapescape" Dale spousti zakladni programy, predevsim window manager a uzivatelske daemony. Window manager je v nasem pripade openbox(1) a ten dale spousti panel tint2(1). Oba tvori pater naseho desktopu. Openbox je velmi oblibeny jednoduchy window manager, tzn. ze umoznuje (sofistikovanou) manipulaci s okny a pasivni menu, coz je znama nabidka programu. Pasivni v tom smyslu, ze se menu automaticky neaktualizuje pri instalaci ci odinstalaci programu a je treba rucne upravit konfiguracni soubor XML. Shep jej proto nahradil programem jgmenu(1), ktery je v tomto ohledu vyspelejsi a lepe vyhovuje modernim pozadavkum na desktop. Openbox, tint2 i jgmenu maji konfiguracni soubory ulozene v adresari `~/.config`, o kterem byla rec vyse, a k jejich nastaveni se jeste dostaneme. ## Systemova nastaveni Moderni desktop vyzaduje dbus neboli message bus, daemon pro interni komunikaci mezi aplikacemi. # rcctl enable messagebus Je take mozne rucne editovat `/etc/rc.conf.local`, ale nedoporucuje se to. Dale je potreba umoznit uzivatelum ve skpine `wheel` vypnuti a restart systemu. To je nutne, abychom mohli pouzivat tlacitka Shutdown a Reboot z menu. K tomu slouzi soubor `doas.conf`, ktery je treba nakopirovat do adresare `/etc`. Pokud jsme nepovolili xenodm(1) pri instalaci: # rcctl enable xenodm ## Prihlasovaci obrazovka a wallpaper Nyni je vhodna chvile k nastaveni prihlasovaci obrazovky. Provede se kopirovanim souboru `Xresources` do adresare `/etc/X11/xenodm`. Pozor, soubor uz tam je, takze je vhodne ho predtim zazalohovat. Viz README.txt, bod 7. Osobne pouzivam jine nastaveni xenodm(1). Tento bod neni z hlediska funkcnosti nutny, jde pouze o estetickou volbu. Shep ma take separatni instrukce jak nastavit wallpaper. Sam jsem se temito instrukcemi neridil, protoze pouzivam interni program na nastaveni wallpaperu od vyvojaru OpenBSD. K tomu je treba nainstalovat balicek openbsd-backgrounds, odkomentovat nekolik radek v souboru `/etc/X11/xenodm/Xsetup_0` a je hotovo. ## Doporucene aplikace A dostavame se k shepovu druhemu seznamu. Zde ma uzivatel naprostou svobodu vybrat si skutecne ty aplikace, ktere chce a potrebuje. Presne to jsem take udelal. Kdo nema oblibene programy nebo nevi, co si vybrat, muze se s klidnym srdcem drzet shepova seznamu. Chybu neudela. # pkg_add -l BareGUI_recommended_apps.txt Zminim jenom, ze audioprehravac Gimmix se uz zrejme nevyviji, takze byl vyrazen z packages OpenBSD. Nahradil jsem ho prehravacem Deadbeef. Narozdil od shepa nepouzivam [mpd], Music Player Daemon, k nemuz byl Gimmix frontendem. Mpd bezi jako daemon na pozadi a je k nemu potreba frontend, ktery mpd ovlada. Kdo chce pouzivat mpd, necht se podiva na seznam frontendu zde. ## Soubory *.desktop Shepem doporucovane aplikace se instaluji spolecne s `*.desktop` souborem, takze se automaticky objevi v (jg)menu. Starsi programy nebo CLI aplikace jako xterm `*.desktop` soubor nemaji. Pro ty shep nachystal vlastni v adresari `desktop_files`. Kopiruji se do adresare `~/.local/share/applications` pro daneho uzivatele. Systemove se nachazeji v `/usr/local/share/applications`. K cemu vlastne slouzi? Soubor `*.desktop (i.e. xterm.desktop)` v ramci desktopu identifikuje program. Obsahuje popis, cestu ke spusteni programu, cestu k ikone programu a to vse umoznuje desktopovym aplikacim, jakou je vyse uvedene jgmenu(1) program rozpoznat, zobrazit, zaradit a pripadne spoustet. Dalsi takovy desktopovy program je tint2(1), ktery se stara o launcher a panel a bude o nem rec za chvili. Diky souborum `*.desktop` take tint2(1) dokaze zobrazit pozadovane aplikace a spustit je na kliknuti uzivatele. Soubory `*.desktop` jsou soucasti projektu freedesktop.org. Chybejici soubory `*.desktop` se daji najit na internetu nebo rucne upravit. Musel jsem napr. upravit `vimb.desktop`, protoze vimb(1) nema ikonu. Stahl jsem z netu starou ikonu Netscape Navigatoru a ulozil jako `~/.local/share/icons/hicolor/48x48/apps/vimb.png` a `/usr/local/share/icons/hicolor/48x48/apps/vimb.png`. Do desktopoveho souboru jsem dopsal nazev ikony. Toto by mel byt kanonicky adresar dle specifikaci Freedesktop (viz vyse). Pokud se ikona neobjevuje v menu, nutno vymazat `.cache/jgmenu`. Pokud problemy pretrvavaji, lze ulozit ikonu do `/usr/local/share/pixmaps/` a ve vimb.desktop nastavit absolutni cestu k teto ikone. Nyni lze restartovat pocitac a po opetovnem prihlaseni bychom meli videt toto: IMG img/baregui.jpg BareGUI ## Tint2 Kdyz nyni vime, k cemu slouzi `*.desktop` soubory, muzeme se pustit do nastaveni taskbaru a launcheru. Na obrazku vyse vidime, ze vsechny ikony spousti terminal. To rozhodne neni to prave orechove. Take informace v systemovem trayi v pravem hornim rohu jsou ponekud chudicke. Zvuk, cas a kalendar tvori jen zlomek toho, co bych tam rad videl. Ikony v dolni casti plochy se nazyvaji _launcher_ (v MacOS se jim pry rika dock). Horni lista je _taskbar_. Tam najdeme ikony ci tlacitka minimalizovanych programu, tedy "shozenych" na listu. V prave casti panelu je systemovy tray cili systray cili notifikacni oblast, kde programy bezici na pozadi komunikuji s uzivatelem, pripadne je mozne kliknutim vyvolat urcite akce, napr. zobrazit kalendar. Taskbar i launcher produkuje programek zvany tint2(1). Je velmi lehky, flexibilni a v kombinaci s openbox(1) se pouziva casto. Jeho ukolem je generovat _panely_. Muze jich byt vice nez jeden. V nasem pripade jde o 2 panely zvane taskbar a launcher a kazdy z nich ma vlastni konfiguracni soubor. Panel se definuje velikosti a obsahem. Velikost je sirka a vyska, panel samozrejme muze byt siroky pres celou obrazovku. Muze byt umisteny na kterekoliv hrane plochy. Obsah znamena, co na panelu bude. Tint2 rozeznava ruzne typy ukolu, ktere ma panel provadet a z nichz se ma skladat. - L znamena Launcher - T znamena Taskbar - S znamena Systray - B ukazuje status baterie - C ukazuje hodiny - E znamena Exekutor - P znamena Push button Pomoci techto pismen se da slozit obsah panelu. Tint2 ma take mnoho moznosti, jak upravit vzhled panelu, ale o tom se dlouze a dopodrobna rozepisuje manualova stranka tint2(1). ## Launcher Konfiguruje se prostrednictvim souboru `~/.config/tint2/launcher.tint2rc`. Obsahuje pouze L, tedy Launcher a sirka panelu se definuje pomoci velikosti ikon (64 x 64 pixelu) a mezer mezi nimi (8 pixelu), 6 ikon tedy zabira 424 pixelu. Chceme-li pridat dalsi ikony, je nutne vypocitat novou sirku a zmenit v konfiguracnim souboru. Dale je nutne upravit cast Launcher, kde je treba uvest cesty k `*.desktop` souborum programu, ktere chceme v launcheru mit. Nasleduje restart tint2(1): pkill -USR1 tint2 A nyni muzeme overit, zda upravy zafungovaly. IMG img/extra_apps.jpg Doporucene aplikace Existuji i jine aplikace zastavajici funkci docku, napr. Plank, ktere se daji upravovat i pres graficke rozhrani, ale shep v nich zrejme nevidel pridanou hodnotu a tak zustal u druhe instance tint2(1) pro launcher. Osobne v tom nevidim problem, konfigurace tint2(1) je pomerne jednoducha a neni duvod menit launcher nejak zvlast casto. Ale je dobre vedet o alternativach, kdyby bylo puzeni ctenarova vnitrniho geeka prilis silne. ## Taskbar a systray Horni panel se konfiguruje souborem `~/.config/tint2/tint2rc`. Puvodni obsah tvorily TPSC, tedy Taskbar, Push button, Systray a Clock. Tlacitko (push button) obsahuje klikaci ikonu mracku na spusteni skriptu na predpoved pocasi. Systray obsahuje ikonu zvuku. Tu posila program tray-app/volume na ovladani hlasitosti, ktery se spousti pri prihlaseni a bezi na pozadi. Na hodiny lze take kliknout a objevi se kalendar. Kalendar a skripty na pocasi vyuzivaji sluzeb jineho programu, zvaneho yad(1). Ten umi zobrazit dialogova okna pro nejruznejsi skripty. Takze kliknutim na cas se spusti dialogove okno yad(1) s kalendarem. Kliknutim na oblacek se spusti dialogove okno s nabidkou tlacitek spoustejici ruzne skripty, jez stahuji predpovedi pocasi z netu. Potreboval jsem pridat zobrazeni aktualniho pripojeni wifi, ukazatel stavu baterie a ukazatel layoutu klavesnice, nebot casto prepinam mezi ceskou a americkou klavesnici. ## Wifi Shep napsal skript na zobrazeni informaci o aktualnim wifi pripojeni, ktery jsem si malicko upravil. Stacilo tedy nadefinovat dalsi Push button, ktery spusti dialogove okno yad(1) s vystupem shepova skriptu. Opet jsem tedy vyuzil neco, co napsal a zverejnil nekdo jiny a prizpusobil to svym potrebam. V tom spociva kouzlo svobodneho softwaru. ## Baterie Mel jsem 2 moznosti: - tint2(1) sam zjistuje a zobrazuje stav baterie v ruznych - pouzit externi program tray-app/battery, ktery uz je stejne formatech; nainstalovany, protoze je soucasti skupiny programu tray-app. Zvolil jsem oboji. V nastaveni baterie v tint2rc jsem nic nemenil, pouze jsem pridal pismeno B do definice panelu. Diky tomu nyni vidim stav baterie jako text v procentech a zbyvajici cas do uplneho vybiti. Hned vedle se zobrazuje ikona baterie, ktera ma nekolik stavu a graficky zobrazuje to, co ukazuje vedlejsi text. Az budu mluvit o nastaveni openbox(1), vysvetlim, jak se tray-app/battery spousti. ## Dunst V raci BareGUI byl nainstalovan libnotify, coz umoznuje desktopove notifikace, v tomto pripade ohledne baterie, coz nemusi byt zdaleka jedine vyuziti. Podle nastaveni tint2(1) prikaz `notify-send "zprava"` se spusti notifikace. Z nejakeho duvodu to nefunguje primo. Bylo nutne doinstalovat program dunst(1), coz je daemon, ktery zobrazi pozadovanou zpravu. Daemon se spousti v `~/.config/openbox/autostart`, tzn. pri prihlaseni do GUI. Nastaveni vzhledu notifikaci je mozne v konfiguracnim souboru. Ten je treba zkopirovat: cp /usr/local/share/dunst/dunstrc ~/.config/dunst/ Mozne nastaveni zpravy v `~/.config/tint2/tint2rc`. Druha zprava se zobrazi v cervenem ramecku: notify-send "low battery" # bezna zprava notify-send -u critical "low battery" # kriticka zprava Pokud stav pretrvava, notifikace se zobrazuje permanentne. Je mozne ji zavrit rucne pomoci ovladani daemona (viz manualova stranka dunstctl): dunstctl close Zatim jsem neprisel na to, jak takovou pretrvavajici zpravu vypnout automaticky. Ale vyse uvedeny prikaz lze namapovat na klavesovou ## Layout klavesnice Pridat indikaci layoutu klavesnice predstavovalo jisty orisek. Neznam zadny samostatny program, ktery by indikoval layout. Protoze jsem tento problem zkoumal uz drive, nasel jsem na internetu reseni zcela v ramci aplikaci zakladni instalace. Napsal jsem kratky skript, jehoz vystupem je "EN" nebo "CZ". Skript nereaguje na zadny podnet, takze se musi neustale opakovat v kratkem casovem sledu. Jak ale dostat vystup skriptu do panelu? Push button neni vhodny, nebot stav se musi ukazovat automaticky, nikoliv na zaklade uzivatelske akce (kliknuti). Po prostudovani manualove stranky tint2(1) jsem zjistil, ze existuje exekutor E, ktery umi spustit muj skript kazdou vterinu a vypsat vystup do notifikacni oblasti. Vysledna definice panelu tedy vypada takto: TEBSPPC. ## Konfigurujeme Openbox Konfiguracni soubory pro openbox(1) se nachazeji v adresari `~/.config/openbox/` a kopirovali jsme je tam na zacatku. Jsou to: - autostart, cte se pri spusteni openbox(1), takze na zmeny za - menu.xml, menu nahradilo jgmenu, takze nehraje roli; - rc.xml, nejdulezitejsi, ridi chovani oken, klavesnice, mysi behu se nebere zretel; atd. O souboru `autostart` uz byla rec. Spousti aplikace, ktere chceme mit spustene, kdyz openbox(1) nabehne, napr. zminene programky v systrayi: sound, battery a nakonec jsem pridal i eject, ktery zobrazuje pripojene disky. Pokud nepouzivame openbsd-backgrounds, spousti se zde wallpaper pomoci programu feh(1) a dale kompozitor zodpovedny za obrazove efekty desktopu a samozrejme tint2. Lze zde spouste i mpd a dalsi programy. Struktura konfiguracniho souboru `autostart` je jednoducha, jde v podstate o seznam spoustenych programu, podobne jako v souboru `~/.xsession`, ktery vlastne dela stejnou praci. Aby se spustily v pozadovanem poradi, je treba pred kazdy vlozit casovou mezeru pomoci prikazu `sleep`. Druhy konfiguracni soubor, `rc.xml` uz je komplikovanejsi. Jak nazev napovida, jedna se o XML soubor, jenz nepovazuju za obzvlast citelny znackovaci jazyk. A take je velmi dlouhy, protoze moznosti, jak ovlivnit chovani openbox(1) je mnoho: vzhled, chovani oken jako fokus, jejich interakce s mysi, prace s vice monitory, klavesnice a klavesove zkratky a dokonce _tiling_. Ano, i tak typicky stacking window manager jako openbox(1) dokaze jednoduchy tiling pouhou upravou konfiguracniho souboru. A prave tiling a pridani klavesovych zkratek na spousteni nekterych souboru jsem mel v umyslu pridat. Nastaveni tilingu jsem nasel na internetu a zkopiroval ho do sekce pro klavesnici. Jeste jsem zkontroloval, zda se pouzite klavesove zkratky netlucou s jiz existujicimi. Uprava a pridani klavesovych zkratek je ve stejne sekci. Tento tiling funguje podobne jako u Windows. Pomoci klavesovych zkratek lze oknem vyplnit levou nebo pravou polovinu plochy s nasledne horni ci dolni ctvrtinu predesle poloviny. Neni to samozrejme pravy tiling, ale pro me ucely staci. IMG img/baregui_rice.png Finalni BareGUI Nasledujici oddily uz nejsou soucasti instalace shepova BareGUI. ## Terminal a shell Na zacatku tohoto predlouheho textu bylo receno, ze `~/.Xdefaults` ma co do cineni s terminalem. Presneji nastavuje vzhled a funkcionalitu xterm(1). Na "trhu" je spousta fancy terminalu, tak proc pouzivat tento prastary terminal, ktery ani neumi pruhlednost? Zaprve, tento terminal je soucasti zakladni instalace a tim padem ma clovek jistotu, ze mu byla venovana nalezita pozornost, pokud jde o bezpecnost a spravnost zdrojoveho kodu. A zadruhe, pruhlednost sice skutecne nema, ale jinak jde o pomerne schopny terminal, pokud se mu venuje nalezita pece. Terminal je pouhe rozhrani, ktere posila uzivatelske vstupy do programu zvaneho _shell_ (a vraci vystupy shellu). Je mnoho typu shellu, patrne nejznamejsi je Linuxovy bash(1). Na OpenBSD je defaultni _kornshell_ neboli ksh(1). Zde je nekolik typu, jak si ulehcit zivot v terminalu, a zbytek necham na ctenarove samostudiu. V souboru `~/.Xdefaults` umoznuje nastaveni vkladani textu zkopirovaneho v externich aplikacich i interne. Dvojklikem lze oznacit webovy odkaz a nasledne ho otevrit v externim prohlizeci dle vlastniho vyberu a hromada dalsich veci. Soubor `~/.kshrc` je konfiguracni soubor ksh(1). Systemovy konfig v `/etc` lze nakopirovat do `$HOME` a upravit dle vlastniho vkusu. Pouzivam ho k nastaveni _aliasu_, zkratek zastupujicich dlouhe, komplexni prikazy. Na internetu jsem nasel skript `kshbookmark`, kde lze definovat casto navstevovane slozky a nasledne se do nich premistovat pomoci nekolika malo uderu klaves. Takovy inteligentnejsi alias, hodi se zejmena pokud se z aliasu do oblibenych slozek stal dlouhy seznam. Soubor `~/.ksh_completions`. Zmineny bash(1) automaticky instaluje `bash_completions`. Dobra zprava je, ze daleko mensi ksh(1) umi totez. Jen si to musime nastavit sami. ## Pripojeni externich disku a USB klicenek Jelikoz nepritel (=Widle) ciha vsude, je nutne s nim komunikovat. Proto formatuju vetsinu svych externich zarizeni na NTFS. Je nutne nainstalovat ntfs-3g(8), aby bylo mozne NTFS pripojit. Standardni unixovske pripojeni externich ulozist jako adresare kdesi ve stromu adresaru pod vrchnim adresarem, tzv. _rootem_ pomoci prikazu `mount` a `umount` je samozrejme mozne a pouzitelne. Nicmene OpenBSD umoznuje i automatickou detekci pripojenych zarizeni a pripadne i jejich pripojeni pomoci, jak jinak, skriptu. Detekci zajistuje daemon hotplud(8), pripojeni a odpojeni skripty `attach` a `detach` umistene v adresari `/etc/hotplug/`. Je vsak treba tyto skripty nejprve napsat! Nastesti priklady skriptu uvadeji manualove stranky. Skript `attach` se spusti pri pripojeni disku, `detach` pri jeho odpojeni. ## Pripojeni mobilniho telefonu Aplikace simple-mtpfs(1) se stara o pripojeni mobilnich telefonu. Jedna se o pomerne dlouhy prikaz, takze: alias simple_mtpfs='doas /usr/local/bin/simple-mtpfs --device 1 $HOME/android -o uid=1000 -o gid=1000 -o allow_other' Nesmime zapomenout povolit na telefonu prenos souboru. Bohuzel toto nefunguje na mem novem Androidu 11. Na starem androidu fungovalo bez problemu. Zda se, ze simple-mtpfs(1) potrebuje upgrade. Alespon na OpenBSD, nebot na Artixu bezi bez problemu. Snad k nemu dojde brzy. Zatim lze vyuzit sftp(1) a to je na delsi povidani. ## Konecne zaver Opet jsem se snazil vysvetlit v ramci moznosti nejen co kde nastavit, ale i jak dana vec funguje. Doufam, ze to bude nekomu k uzitku. => 2021-01-02-instalace-openbsd.html [Instalace OpenBSD] => https://man.openbsd.org/cwm.1 [cwm(1)] => https://xfce.org/ [Xfce] => https://sohcahtoa.org.uk/openbsd.html [Nastaveni Xfce] => http://daemonforums.org/showthread.php?t=11178 [BareGui] => http://daemonforums.org/index.php [Daemonforums, forum venovane BSD] => https://en.wikipedia.org/wiki/Xenocara [Xenocara] => https://man.openbsd.org/xenodm [Xenodm] => https://www.fvwm.org/ [Fvwm] => https://man.openbsd.org/pkg_add [pkg_add(1)] => 2022-05-27-larbs.html [LARBS] => https://en.wikipedia.org/wiki/Openbox [Openbox] => https://jgmenu.github.io/ [Jgmenu] => https://deadbeef.sourceforge.io/ [Deadbeef] => https://musicpd.org/ [MPD] => https://wiki.archlinux.org/title/Music_Player_Daemon#Graphical [Seznam frontendu k MPD] => https://www.freedesktop.org/wiki/ [Specifikace Freedesktop] => https://fanglingsu.github.io/vimb/ [Vimb] => https://wiki.archlinux.org/title/Tint2 [Tint2] => https://launchpad.net/plank [Plank] => https://github.com/Shiny1814/Simple-Openbox-Tiling [Simple Openbox Tiling] => https://lukas.zapletalovi.com/2013/07/hidden-gems-of-xterm.html [Hidden gems of xterm] => https://www.vincentdelft.be/post/post_20210105 [kshbookmark] => https://www.deftly.net/posts/2017-05-01-openbsd-ksh-tab-complete.html [Tab completion in OpenBSD's ksh]