Kul aplikacije za Linux

Občasno naletim na kakšno zanimivo aplikacijo za Linux. Ker zna biti katera od njih zanimiva tudi za širšo publiko, bom kakšno od njih občasno opisal tukaj.

Metadata Cleaner (Čistilec metapodatkov)

Metadata Cleaner ali Čistilec metapodatkov je preprosta aplikacija, ki omogoča pregled in čiščenje metapodatkov v datotekah.

Metapodatek je podatek, ki vsebuje informacije o nekem podatku, a ni del le-tega. Metapodatki tako zagotavljajo informacije, ki nam pomagajo osmisliti podatke. Primer metapodatkov pri fotografiji so recimo avtor datoteke, datum posnetka, geolokacija posnetka, velikost datoteke, itd.

Metapodatki v datotekah lahko o nas povedo veliko. Kamere beležijo podatke o tem, kdaj in kje je bila slika posneta ter kateri fotoaparat je bil uporabljen. Pisarniške aplikacije v dokumente in preglednice samodejno dodajo podatke o avtorju in podjetju, itd. Vse to so občutljivi podatki in morda ne želite, da so razkriti. Sploh, ko datoteke objavimo na spletu.

Uporaba aplikacije je preprosta. V glavno okno dodamo datoteke (lahko tudi celotne mape z datotekami), aplikacija pa nato identificira metapodatke v teh datotekah. Metapodatke nato z enim samim klikom odstranimo iz datotek. Očiščene datoteke so nato prepisane čez originalne datoteke.

Privzeto postopek čiščenja lahko nekoliko spremeni tudi same podatke datotek, saj aplikacija v privzetem načinu skuša odstraniti čim več metapodatkov. Tako na primer v PDF dokumentih ne bo več mogoče izbrati besedil, itd… Če tega ne želimo, lahko vključimo tim. lahko čiščenje.

Vseeno je treba vedeti, da da metapodatki niso edini način označevanja datotek. Občutljive (osebne) podatke lahko razkriva že sama vsebina datoteke, datoteka pa je lahko tudi označena z vodnim žigom. V tem primeru vas Metadata Cleaner seveda ne more zaščititi.

Je pa to vseeno zanimiva in koristna aplikacija za vse, ki cenite svojo zasebnost.

Mimogrede, ker je aplikacija res majhna, sem si vzel nekaj časa in jo prevedel v slovenski jezik. Slovenska različica bo na voljo ob naslednjem izidu (enkrat letos).

Warehouse

Pred časom sem opisal program Okular, ki omogoča digitalno podpisovanje PDF datotek. Žal pa je posodobitev Okularja z dne 12. marca 2024 dobila zoprnega hrošča. Če imamo samo eno digitalno potrdilo, ga je med postopkom podpisovanja vseeno potrebno izbrati ročno, sicer postopka digitalnega podpisovanja ne moremo izvesti do konca.

Tega, da je potrebno digitalno potrdilo izbrati ročno (klikniti nanj), žal nisem opazil, sem se pa težavo odločil začasno rešiti tako, da aplikacijo Okular vrnem na prejšnjo različico brez te napake. Mimogrede, napaka je sedaj že odpravljena, kljub temu pa si bomo pogledali, kako v okolju Linux izvajati tim. predposodobitve (angl. downgrade) oz. vračanje aplikacije na prejšnjo različico.

Najprej nekaj osnov. Ko je leta 2008 Apple predstavil svojo tržnico aplikacij (iStore), je splet ponorel od navdušenja. Tržnica aplikacij je namreč omogočala preprosto nameščanje aplikacij iz enega mesta njihovo kasnejše avtomatsko posodabljanje. To je bil vsekakor precejšen napredek v primerjavi z okoljem Windows, kjer je bilo aplikacije treba iskati po različnih spletnih straneh in jih potem tudi posodabljati ročno.

A uporabniki Linuxa smo bili zgolj začudeni nad silnim navdušenjem, saj smo koncept skladišč programske opreme oz. tržnice aplikacij poznali že praktično od 1990-tih let. Debianova (in kasneje Ubuntujeva) skladišča programske opreme so že dolgo časa omogočala preprosto nameščanje in predvsem samodejno posodabljanje Linux programske opreme. In to ne samo preko terminala (Debian/Ubuntu uporabniki gotovo poznate ukaz apt-get), pač pa tudi s pomočjo različnih grafičnih aplikacij. S klikom miške.

Seveda pa se je koncept tovrstnih skladišč kasneje v Linuxu razvijal dalje in danes imamo v Ubuntuju sistemsko ogrodje za distribucijo in posodabljanje programske opreme Snap, ki omogoča poganjanje aplikacij v tim. peskovniku (v zamejenem oz. izoliranem okolju, kar povečuje varnost), aplikacije so samostojne (vsak tim. snap paket vključuje vse knjižnice, ki jih aplikacija potrebuje za delovanje, to pa zagotavlja združljivost in univerzalnost), predvsem pa se aplikacije nameščene preko sistema Snap samodejno posodabljajo. Tipično to pomeni, da bo posodobljena aplikacija na računalnike uporabnikov samodejno prispela v dnevu ali dveh. Ne da bi bilo uporabniku potrebno kaj dosti postoriti za to (potrebuje samo delujočo internetno povezavo).

Težava - če temu lahko tako rečemo - okolja Snap pa je, da ga razvija podjetje Canonical in da je skladišče programske opreme centralizirano. Zato je odprtokodna skupnost zasnovala podoben sistem, Flatpak, ki pa omogoča uporabo različnih skladišč programske opreme in s tem decentralizacijo.

Namestitev Flatpaka

Namestitev ogrodja Flatpak (in dodajanje skladišča oz. “tržnice” programske opreme Flathub) je razmeroma enostavno. Najprej namestimo Flatpak:

sudo apt install flatpak

Dodamo skladišče Flathub:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Na koncu namesimo še grafični vmesnik za nameščanje aplikacij:

sudo apt install gnome-software-plugin-flatpak gnome-software

Nato ponovno začenemo računalnik in to je to.

Zdaj je nameščanje in posodabljanje aplikacij preko sistema Flatpak res enostavo, poleg tega so v okolju Snap in Flatpak vse aplikacije lepo opisane, uporabniki jih lahko ocenijo, z enim klikom pa nato lahko obiščejo spletišče aplikacije ali prijavijo programskega hrošča. Naj pri tem dodam, da je v Ubuntu nameščanje programske opreme preko ogrodj aSnap že privzeto omogočeno in nam za to ni potrebno nič nameščati.

Se še kdo spomni, kako je pred desetletjem nameščal programsko opremo za okolje Windows?

Warehouse

Zdaj pa si končno lahko namestimo aplikacijo Warehouse, ki omogoča napredno upravljanje aplikacij nameščenih preko Flatpaka. To seveda storimo kar preko grafične aplikacije Gnome Software.

Ko aplikacijo zaženemo, nam izpiše vse aplikacije nameščene preko sistema Flatpak. S klikom na izbrano aplikacijo pa si nato lahko ogledamo zgodovino različic in aplikacijo tudi vrnemo na prejšnjo različico.

Seveda isto lahko naredimo tudi v terminalu, z ukazi flatpak list, flatpak remote-info --log flathub org.kde.okular (primer za aplikacijo Okular) in potem sudo flatpak update --commit=dd012b673266485cbd4bfc864a6f1ed536862d7b2b6b6403a8040aab3fd534ae org.kde.okular (predposodobitev na prejšnjo različico). Je pa z aplikacijo Warehouse to malenkost bolj enostavno.

warehouse

Danes seveda koncept programskih tržnic ni nekaj novega, a kot kaže primer sistema Flatpak, so še vedno možne inovacije. Če drugega ne, v Applovem iStoru ali Googlovi trgovini Play, starejših različic programske opreme pač ne boste našli. Linux pa po drugi strani uporabnikom daje čim večjo kontrolo nad njihovimi napravami in podatki. Flatpak pa je samo še eden od kamenčkov v tem mozaiku.

Obfuscate (Zakrivalnik)

Obfuscate oz. Zakrivalnik je preprosta palikacija, ki je namenjena temu, da v njej odpremo sliko in potem z miško na enostaven način počrnimo (ali zabrišemo) tiste dele, ki jih želimo zakriti.

Datoteko na koncu samo še shranimo in stvar je gotova. Hitro, enostavno in učinkovito. Ter seveda brezplačno in odprtokodno.

Gnome Zemljevidi

Aplikacijo Gnome Zemljevidi je (sicer manj zmogljiva) alternativa znanemu Google Maps. Omogoča sicer samo ogled zemljevidov (brez podatkov o prometu, itd.),a svojo nalogo pa opravlja povsem zadovoljivo. V ozadju uporablja OpenStreetMap, kjer se lahko tudi registriramo.

Postopek registracije je sicer malce neintiutiven. Najprej si morate ustvariti OpenStreetMap račun (če ga še nimate), kar vam ponudi že sama aplikacija Zemljevidi. Ko pa ste registrirani, pa morate v aplikaciji Zemljevidi še enkrat klikniti gumb za registracijo aplikacije, in potem vam OpenStreetMap zgenerira avtentikacijsko kodo, ki jo prekopirate v Zemljevide.

Preko aplikacije Zemljevidi in OpenStreetMap lahko nato sami dodajate opise lokacij na zemljevidu, saj OpenStreetMap vzdržuje skupnost.

Sam sem tako preko aplikacije Zemljevidi lahko hitro dodal lokacijo mojega priljubljenega lokala v Makedoniji (kjer imajo po mojem mnenju tudi eno najboljših kav na svetu). :slightly_smiling_face:

File Shredder

File Shredder je preprosta aplikacija za trajno brisanje datotek v okolju Linux.

Običajno brisanje podatkov namreč v resnici podatkov ne izbriše iz diska (ali drugih nosilcev podatkov). Odvisno od datotečnega sistema se namreč izbrisana datoteka (se pravi tista, ki je bila odstranjena tudi iz koša) odstrani samo iz seznama datotek v datotečnem sistemu, njena vsebina pa še vedno ostane zapisana na disku. Datoteke, ki jih nismo trajno izbrisali, je namreč kasneje z različnimi forenzičnimi tehnikami mogoče obnoviti delno ali v celoti.

Če torej želimo datoteko trajno izbrisati, je potrebno njeno vsebino prepisati. A pozor. To ni vedno enostavno in zanesljivo opravilo. V določenih okoliščinah je tudi vsebino prepisanih datotek s forenzično analizo mogoče (vsaj delno) obnoviti.

Tukaj nam pride prav aplikacija File Shredder, ki omogoča trajno brisanje datotek. V okno aplikacije preprosto povlečemo datoteke, ki jih želimo trajno izbrisati, aplikacija pa jih nato najprej prepiše z naključnimi podatki in nato še dokončno izbriše.

Ker mi je bila aplikacija všeč, sem jo prevedel tudi v slovenski jezik.

1 Like

GSConnect

KDE Connect je aplikacija, ki omogoča povezavo vašega računalnika in enega ali več telefonov. KDE Connect je na voljo za namizje KDE, za namizje Gnome, ki ga uporablja tudi klasični Ubuntu Linux, pa je na voljo aplikacija GSConnect, ki ima enako funkcionalnost. V sistem pa jo namestimo kar kot tim. razširitev namizja Gnome (angl. extension). vsem vašim napravam omogoča medsebojno komunikacijo.

GSConnect oz. KDE Connect omogoča:

  • sprejemanje in pošiljanje SMS sporočil iz vašega računalnika,
  • prejemajte obvestil iz različnih telefonskih aplikacij na vaš računalnik,
  • preprosto deljenje datotek med napravami,
  • sinhronizacijo stikov med napravami,
  • iz telefona lahko upravljamo glasbo, ki se predvaja na računalniku,
  • uporabo telefona kot daljinskega upravljalnika za namizni računalnik,
  • zaganjanje vnaprej določenih ukazov na vašem računalniku iz telefona (obvestila, ponovni zagon,…),
  • preverjanje ravni baterije v telefonu na namizju,
  • iz računalnika lahko na telefonu sprožite zvonenje (da telefon lažje najdete),
  • itd.

Aplikacija je sicer na voljo za različne platforme, najbolje pa deluje v kombinaciji Linux - Android. V drugih okoljih (iOS, Windows), določene funcionalnosti zaradi omejitev teh sistemov, niso podprte. En del aplikacije (GSConnect) je treba seveda naložiti na namizni računalnik, drugi del aplikacije (KDE Connect) pa na telefon. Napravi nato med seboj povežemo. Na računalnik sicer lahko povežemo več telefonov.

Namestitev na računalnik

GSConnect namestimo kot tim. razširitev - lahko preko aplikacije Extension Manager, ali pa kar preko spletne strani https://extensions.gnome.org/.

Na računalniku je nato potrebno odpreti določena vrata na požarnem zidu, in sicer tako TCP, kot tudi UDP vrata v rangu od 1714 do 1764. To storimo z ukazi:

ufw allow 1714:1764/tcp
ufw allow 1714:1764/udp
sudo ufw reload

Računanik in telefon morata biti za komunikacijo v istem lokalnem omrežju (npr. istem WiFi omrežju), kar lahko predstavlja omejitev, ki pa jo zaobidemo z uporabo VPN omrežja. Če sta tako računalnik, kot tudi telefon povezana v VPN omrežje, bosta med seboj lahko vedno komunicirala ne glede na to ali sta v istem LAN/WiFi omrežju ali ne.

V tem primeru morda želimo dostope do namiznega računalnika omejiti na IP naslov telefona (predpostavimo, da je IP naslov telefona v VPN omrežju 10.10.8.12):

sudo ufw allow from 10.10.8.12 to any port 1714:1764 proto tcp
sudo ufw allow from 10.10.8.12 to any port 1714:1764 proto udp
sudo ufw reload

V primeru, da uporabljamo VPN, bosta napravi povezani tudi če bo npr. telefon v eni državi, računalnik pa v drugi.

Namestitev na telefon

Namestitev na telefon je bolj preprosta. v trgovini Play ali F-Droid poiščemo aplikacijo KDE Connect in jo namestimo.

Povezovanje telefona in računalnika

Telefon in računalnik je sedaj potrebno povezati. Če sta napravi na istem lokalnem omrežju - in je to na telefonu nastavljeno kot zaupanja vredno - bi se morali že takoj videti med seboj.

V primeru, da uporabljate VPN, priporočam, da na telefonu nobenega omrežja ne nastavite kot zaupanja vrednega, pač pa napravo dodate po IP naslovu.

Na telefonu torej vpišemo VPN IP naslov računalnika in nato telefon povežemo s to napravo (računalnikom) in sicer s klikom na Zahtevaj uparjanje.

V naslednjem koraku se bo tako na telefonu, kot na računalniku prikazal šifrini ključ.

Če se ključa ujemata, na računalniku kliknemo Accept.

pairing_computer

Napravi sta sedaj povezani.

Podrobnejše nastavitve

KDE Connect na telefonu potrebuje ustrezna dovoljenja. Ko kliknete na posamezen vtičnik, vas za ta dovoljenja vpraša. Vsekakor se vam splača sprehoditi po nastavitvah na telefonu in dovoliti samo tiste stvari, ki jih boste zares uporabljali.

Na primer posredovanje SMS sporočil na namizje, posredovanje obvestil mobilnih aplikacij na namizje (tukaj lahko določite točno od katerih aplikacij dovolite obvestila), pod Nastavitve vtičnikov pa tudi nastavite katere funkcije aplikacije sploh želite uporabljati.

Meni recimo se upravljanje glasbe na računalniku iz telefona ter uporaba telefona kot daljinskega upravljalnika za namizje ne zdita preveč uporabni funkciji, zato sem te vtičnike preprosto izključil. Po drugi strani pa se mi zdi uporabna funkcija, da kar v upravljalniku datotek omogočim pošiljanje datoteke na mobilno napravo, in za to je potrebno na računalnik namestiti še programski paket python3-nautilus (sudo apt install python3-nautilus).

Nastavitve GSConnect na računalniku so sicer dostopne iz zgornje menijske vrstice. Tam lahko tudi nastavimo katere funkcionalnosti (npr. pošiljanje datotek, itd.) za telefon dovolimo. Nastavimo pa lahko tudi ukaze, ki jih bo telefon lahko poslal računalniku.

gsconnect_applet

Predpripravljeni ukazi so zaklepanje računalnika, odjava trenutnega uporabnika, ugašanje, ponovni zazgon in spanje. Te ukaze lahko spremenimo, ali pa dodamo kakšnega svojega. Ko ukaz dodamo na računalniku, se pojavi tudi na telefonu.

Naj dodamo, da so vse nastavitve, vključno z ukazi vezane na par računalnik - mobilni telefon. Če imamo več mobilnih telefonov, lahko različne nastavitve določimo za vsakega posebej.

Ukazi so lahko praktično kakršnikoli. Če recimo želimo iz telefona na računalnik poslati (predpripravljeno) obvestilo, napišemo naslednji ukaz:

notify-send -u critical -i /usr/share/icons/Yaru/scalable/devices/phone-symbolic.svg "Obvestilo iz telefona" "Prosim, da me <b>takoj</b> pokličeš."

Obvestilo se bo, potem ko bomo ukaz poslali iz telefona, prikazalo na računalniku.

notify-send

Praktična uporaba

V praksi aplikacija deluje res dobro. Smiselno si je vzeti nekaj časa, da gremo podrobno čez nastavitve, ampak ko je sistem enkrat vzpostavljen in se ga navadimo, je res uporaben.

call_notification

Osebno mi je še najbolj všeč možnost sprejemanja in pošiljanja SMS sporočil, uporabna pa so tudi druga obvestila (npr. od bančne aplikacije).

sms_notification

Največji minus je pravzaprav le nekoliko večja poraba baterije na telefonu (s strani aplikacije KDE Connect). Za povprečnega uporabnika pa bo verjetno nekoliko bolj zahtevno vzpostaviti komunikacijo preko VPN omrežja, saj mora biti v tem primeru tako računalnik, kot tudi telefon stalno vključen v VPN omrežje. Tisti, ki VPN uporabljajo/mo stalno (in to svojega lastnega, ki mu lahko zaupamo), pa lahko uporabljamo vse prednosti kombinacije GSConnect in KDE Connect.