Nunaj projektoj

Aldonaj dosierecoj [xattr]

© ???; “GNU-tan” []

Miaopinie, aldonaj dosierecoj (alinome: xattr-oj) mojosegas, kaj plurmaniere utilas! Mi lamentas la nunan staton de la liberaj operaciumoj (BSD, LiGNUkso, ktp) rilate al xattr-oj: Ili apenaŭ utiliĝas, kaj estas ofte traktataj kiel flanka afero nesubtenenda.

Mi uzis Hajkon (Haiku) kiel mi ĉefa operaciumo dum du jaroj, kaj ĝi malkaŝis al mi la potencon kaj belecon de aldonaj ecoj. Hajko utiligas ilin tre ofte kaj diverse; en la dosierfoliumilo, kiel datumbazo, je dosierformoj ĝenerale: Kontaktdosiero? Estas malplena dosiero, kun ecoj pridatumaj. Retpostmesaĝo? Malplena dosiero, kun ecoj pridatumaj. RSS/Atom-abono? Malplena dosiero, kun… vi jam komprenas.

Celo mia estas uzi aldonajn dosierecojn ĉe miaj programoj plejofte laŭutile, por proksimigi la liberajn operaciumojn al Hajko — kaj tiel, al la oso! Aldonaj ecoj utiliĝu kaj vastiĝu! :D Tiucele, mi skribis xattr-an bibliotekon por la lingvo Koka Skimo (Chicken Scheme), kaj faris RSS/Atom programon kiu utiligas aldonajn ecojn, feedsnake. Sed ekde mi skribis feedsnake, mi trovis programon RSS-an kiun mi nun preferas, sfeed.

Babilado unuprograme

© ???; “Gli @ Hagia Sophia” []

Mi tre volus, ke oni povu parolu kun homoj per nur unu programo — ĉu XMPP, ĉu Matriko, ĉu IRC — kun ĉiu per ununura programo. Jen la revo! Ĉi tia programo, ideale, plenumus la jenajn: Facila skriptado por la uzanto; simpla kaj bone apartigita kodo; neŭtraleco je programlingvoj; neŭtraleco je komunikformoj (kaj XMPP kaj IRC funkciu, ekz).

Piĝinon (Pidgin) estas tre bona kandidato, kiu subtenas multajn komunikformojn kaj jam iom popularas. Tamen, ĝi malfacile skripteblas kaj tute ne neŭtralas je programolingvoj (komunikformaj aldonaĵoj nepre estu skribitaj C’e).

Telepatio (Telepathy) estus hipoteze plibona kandidato, se ĝi plu viglus. Ĝi uzas D-Bus por komunikado inter klient-demonoj (»konektiloj«) kaj klient-programoj (fasado/GUI). Ĉiu komunikformo estu aparta »klient-demono«, kiu provizas babilejajn datumojn per D-Bus; tiel Telepathy kaj ligvoneŭtralas kaj skripteblas. Perfekte, ĉu ne? Tamen, kiel mi jam menciis, la projekto estas dormanta kaj malaktiva.

Mi ekprovis krei mian propran konkuranton, »chatdir«, kun simila strukturo kiel Telepatio, sed kun grava distingo: Klient-demonoj provizus datumojn ne per D-Bus, sed per la dosiersistemo mem, rekte kiel dosierarbo kun FIFO (»specialaj pordoj«) dosieroj. La celo estis fari ion simila al ii (irc it), sed pli vasta kaj malsimpla. Mi ekskribis bibliotekon por Koka Skimo kaj klientdemonon IRC’an, sed neniam efektive finis.

Provizore, mi elektas la kolombon, Piĝinon! Do mi planas, laŭ mia povo kaj laŭ mia volo, helpi la estimataj programistoj de la purpura komunumo.

Datumportado

© Seseren, 2022 []

Gravas al mi la kapablo elporti datumojn de programo kompreneblforme. Se oni, ekzemple, uzas babilprogramon, nepre facilu konserve elporti mesaĝojn al plata teksto (aŭ almenaŭ al dokumento HTML-a). Plifacilas traserĉi dosierojn rekte, kaj ofte oni ne povas fidi ke la servilo/protokolo konservos diskutojn. Je XMPP/Matrikso, okazas sufiĉe ofte ke ŝlosiloj perdiĝas, kaj tiel entute perdiĝas longaj, gravaj diskutoj. Pro ĉi tio, mi faras kelkajn skriptojn por eligi analizeble protokolojn kaj datumojn de iuj programoj kaj servoj: dino-chat-export, divercities_dl, bandcamp_dl, wyrics, ktp.

Pleroma-Migranto (Pleroma Migrator) estas iom… strange elstara programo tia. Ĝi estas iomete danĝera, eble; eble estas ioma kanajlo. Mi skribis ĝin transloĝiĝante de cawfee.club al mia propra federuja servilo, Mansardo Jamada. Sentiĝis al mi, ĵusaliĝinte, ke mia konthistorio iom malplenis tre solece. »Ĉu ne belus,« mi pensis al mi, »se miaj malnovaj afiŝoj videblus ĉi tie?« Kaj do, mi kopiis miajn afiŝojn de cawfee al Mansardo, per simpla skripto. Sed, ĉar avareco nesatigeblas, tio ne sufiĉis. »Kaj ĉu ne beletus se mi rekte redaktus la SQL-datumbazon de Pleroma, por ŝajnigi ke tiuj kopioj afiŝiĝis je la dato de la originala afiŝiĝo?« Ĝuste tion faras Pleroma-Migranto, kaj ĝuste tion ĝi faris.

Retpoŝto

s
© ながユー @naga_U_, 2022 []

Ĉe la operaciumo Hajko, retpoŝtmesaĝo simple estas dosiero speciala, kun aldonaj dosierecoj enhavantaj la pridatumojn de la mesaĝo. Ĝia dosierfoliumilo, Spurilo (Tracker), estis farita prizorgi elstare bone tiujn aldonajn ecojn, kaj tiel montras retpoŝton tre bone. Kaj la Hajka retpoŝtmontra programo? Ĝi estas simpla sed bela.

Mi volas iom Hajkecigi la LiGNUksan retpoŝtan sperton, kaj tiucele mi prilaboris nautilus-maildir, aldonaĵon por la dosierfoliumiloj Nautilus/Caja/Nemo, kiu montras informojn pri retpoŝtmesaĝo per aldonaj eckolumnoj.


☠ Eksaj projektoj ☠

Hajkumado

© Haiku Project, Madia; 2007-2010; MIT

Laŭ antaŭa mencio, mi iam okupiĝadis je Hajko (Haiku), ĝia komunumo, kaj ĝia programaro. Ĝi estas sistemo tiel bela, tiel simpla, tiel evolua sed ankaŭ tiel unika (kaj etose kaj teĥnike). Sume, fek' al LiGNUkso, fi' al BSD, ve al la Naŭa Plano! Vivu Hajko!

Mi skribis kelkajn programetojn kaj skriptojn: Chat-O-Matic, Pogger, MediaMonitor, kaj tiel plu. Miaj ĉefaj aliaj kontribuoj estis al Kalendaro kaj TrackGit. La plej peza laboro kredeble estis Chat-O-Matic, kiun mi prilaboris pro la 2021 Google Somero de Kodo.

… sed, domaĝe, mi ekvolis reveni al la »reala virtualo«, kie LiGNUkso estas la vera konkuranto kontraŭ Vindozo kaj la Pomo, kohereco, fokuso je dosieroj, kaj manko de bona dosierfoliumilo. Plej preme ĝenas la lasta, kredeble.

coinsh.red

© jadedctrl, 2017; AGPLv3

Antaŭ Raddle (Reddit-eca diskutretejo) eksubtenis rekte bildoalŝutadon, troviĝis ke mankis al la komunumo taŭga bildoservo. La elektoj kiujn ni konis aŭ postulis tro da Ĝavoskripto, aŭ ne respektis privatecon, aŭ estis gastigataj de »faŝistoj«. Do, mi elektis fari mian propran servon simplan. Dum semajnfino, mi programis PHP-e insert-coin, la unuan version de coinsh.red. Ĝi estis mia unua projekto (laŭmemore?) PHP-a, kaj ĝi ne belis; sed ĝi funkciis.

Mi faris iujn plibonigojn kaj ŝanĝojn dum kelka tempo, ĝis mi renkontis IPFS-on, la disan reton kiu provas anstataŭigi HTTP-on. Tiam, mi faris novan version de la retejo per Komuna Lispo, kiu alŝutis ĉiun bildon al la reto IPFS-a: distribute-coin. Por fari tion, mi ankaŭ devis fari bibliotekon Komunlispan, cl-ipfs-api².

Je iu punkto, ekĝenis min administrado de la IPFS-servilo, kaj eksubtenis Raddle bildoalŝutadon, do mi malŝaltis alŝutkapablon. Sume, coinsh.red servas 93GB da dosieroj, kaj 18835 da URL mallongigoj.

LibertyBSD

© Spencer Jung, Estanislao Perez Rosso; 2015; CC BY-SA 4.0

LibertyBSD estis projekto, kiu strebis purigi OpenBSD-on al FSDG-aprobita kaj tutlibera operaciumo. Ĝi estis fondita de Riley Bᴀɪʀᴅ, kiu eldonis la unuan version je. Iam, mi ekgastigis la retejon de la projekto, kaj post Bᴀɪʀᴅ foriris, ankaŭ ekprizorgis novajn versiojn kunlaborante Einhard Lᴇɪᴄʜᴛꜰᴜß, Jimmybot, kaj alimiracle.

Post iuj eldonoj, troviĝis ke estis iuj gravaj kododosieroj nemenciantaj kopirajtan permisilon; laŭ la OpenBSD projekto, ĉi tio estas problemo ne, sed laŭ la GNU projekto (kaj FSDG-reguloj), estas implicite tiaj dosieroj malliberaj. Mankis al mi la necesa C-sperto kaj tempo ilin anstataŭigi sole, do mi arĥivigis la projekton. Ĝenerale, mi taksus mian tenadon de la projekto malbone; ĝi estis nek fidela sistemo nek regule ĝisdatigita.

Mi alte rekomendas la Hyperbolan projekton. Ili klopodas fari simile liberan BSD-sistemon, baze de la OpenBSD kerno. Ili prizorgas anstataŭigon de la senpermesilaj kododosieroj, kaj de kelkaj aliaj aferoj laŭ ilia teĥnika stilo. ^^