Sesja Linuksowa, połowa

Wahałem się czy wybrać się na Sesję Linuksową. Bo to jednak wyprawa do innego miasta. Skoro jednak jest w weekend, a pociągi IC jeżdżą teraz szybciej, to dwa razy godzina z groszem na dojazd wydała się akceptowalna w stosunku do kilku godzin na miejscu. Stwierdziłem, że wariant przyjazd w sobotę rano, wyjazd wieczorem jest wykonalny, a tytuły wykładów[1] brzmią do posłuchania.

Wyjazd z Poznania o 7:30, przyjazd przed 9:00. Teoretycznie kwadrans tramwajem i jestem na miejscu, planowy start wykładów jest o 9:05, czasem jest poślizg, więc prawie powinienem zdążyć… Co może pójść źle? Wiele rzeczy… Ale udało się i zdążyłem na wykład o SSH niemal w całości. Myślałem, że temat nie będzie mnie w stanie specjalnie zaskoczyć, tymczasem sporo ciekawych zastosowań i możliwości. I to już na pierwszym wykładzie. A teraz kilka słów o wybranych[2] wykładach.

Dziwnostki rozwoju kernela – ciekawe, trochę znałem, trochę nie. Fajnie pokazuje, jak jednak[3] duże rzeczy działają, choć działają… dziwnie. Bo przysyłanie patchy mailem, zamiast pull requstów w systemie kontroli wersji, wygląda na spore utrudnienie.

Ciekawy wykład o Velvet OS, czyli instalacji Linuksa (Debiana) na chromebookach i nie tylko. Fajnie, że takie rzeczy się dzieją. Choć sam na chromebooku korzystam z ChromeOS. Zaskoczyło mnie, ile jest różnic, ograniczeń i problemów.

Wykład Ile tritów ma trajt – dość luźny, ale ciekawy, sporo historii komputerów – przypomniał mi niedawną dyskusję o tym, jak reprezentacja binarna wpływa na pojmowanie świata. I okazuje się – o czym nie wiedziałem – że może logika trójwartościowa być może wróci, bo jest przyjazna sieciom neuronowym i LLMom.

Ukryte koszty wolności – bardzo ciekawy, nietechniczny wykład o modelach rozwoju open source, problemach z finansowaniem i tym, że kiedyś były czasy… A teraz to fundacje, federacje, rządzą nimi korporacje. Celnie, choć pesymistycznie.

Tyle połowy. I połowy SL, i połowy opisu, bo na drugi dzień Sesji Linuksowej się nie wybieram w tym roku[4]. Ale Wy możecie, wg mnie warto, więc szybko ten wpis, może ktoś się zdecyduje, a druga część… wkrótce.

A gdyby ktoś nie chciał jechać lub miał daleko, to jest streaming live. O którym nie wiedziałem, ale nie żałuję wycieczki. Tym bardziej, że osobiście nie przepadam za słuchaniem streamingów.

C.D.N.

[1] Były też warsztaty, ale zupełnie nie miałem na nie weny. To jednak w założeniu miał być relaks i miłe spędzenie czasu, bez większego wysiłku intelektualnego.
[2] Nie najlepszych, nie najciekawszych, wybranych. Wszystkie inne też prowadzone przynajmniej dobrze i ciekawe.
[3] A może właśnie dlatego?
[4] Niestety; wyłącznie logistyka i plany, nie jakość konferencji.

gocryptfs

Dawno, dawno temu przestałem używać EncFS. Przestałem z kilku powodów. Po pierwsze, pojawiło się ostrzeżenie o tym, że nie jest to rozwiązanie do końca bezpieczne. Niby nic i w moich zastosowaniach nie przeszkadzało[1], ale jakaś tam zadra w pamięci i niechęć zostały. Po drugie, zwykłe dyski zacząłem szyfrować „normalnie” przy pomocy LUKS. A backupy itp. przy pomocy GPG. Dziś odkryłem godnego następcę: gocryptfs.

Mimo zmian w używanym szyfrowaniu, po EncFS została jedna dziura: dyski zdalne typu Dropbox czy Google drive. Miło by było móc z nich korzystać „normalnie”, ale tak, żeby dane na tych dyskach były zaszyfrowane. LUKS tu nie pomoże, bo działa dla dysków lokalnych. Szyfrowanie przez GPG dla pojedynczych plików jest niewygodne, a pakowanie w jakieś archiwa jest dobre do backupów, nie do normalnego korzystania. EncFS jako overlay dostępny poprzez FUSE ze swoim szyfrowaniem per katalog był idealny. Nie trzeba z góry określać rozmiaru szyfrowanych danych, dostęp online do pojedynczych plików, z zachowaniem ich struktury.

Okazuje się, że jest godny następca dla EncFS i nazywa się gocryptfs. Nie wiem czemu nie znalazłem go wcześniej. Może odrzuciłem, bo był świeży i w golang? Może przeważył brak realnej potrzeby?

W każdym razie: jest i wygląda bardzo dobrze. Przeczytałem opis projektu i zasadę działania. Posiada sensowne założenia, był audytowany, brak przypadłości EncFS. Do tego jest bardzo szybki. Instalacja w Debianie z pakietu – żadnych kompilacji. Do tego świetna dokumentacja, proste użycie i… dopracowanie. Oczywiście open source. Działa na Linuksie, macOS, istnieją nieoficjalne porty dla Windows i Androida.

Żeby przybliżyć o czym mowa. Weźmy takie utworzenie szyfrowanego katalogu. Jedno proste polecenie, podajemy hasło, powtarzamy je i… dostajemy master key, wraz z przeznaczeniem i jak się z nim obchodzić. Aż pokażę[2], bo na stronie tego nie ma:

$ gocryptfs -init cipher/
Choose a password for protecting your files.
Password:
Repeat:

Your master key is:

d28966ae-f39ff48a-695993f9-a5e354eb-
3d31e7a1-29c834c5-31b2cb3b-b38b6cec

If the gocryptfs.conf file becomes corrupted or you ever forget your password, there is only one hope for recovery: The master key. Print it to a piece of paper and store it in a drawer. This message is only printed once.
The gocryptfs filesystem has been created successfully.
You can now mount it using: gocryptfs cipher MOUNTPOINT

Prawda, że piękne? Bardzo możliwe, że przyda się i wkrótce wrócę do tematu zdalnych dysków.

[1] Moje zastosowania: nie będą mi dyski sieciowe w stylu Dropbox grzebać po plikach, nawet jeśli nic tajnego tam nie ma.
[2] Jakby ktoś zaczynał panikować, że „ojej, master key podał” to spieszę donieść, że to z testowego katalogu utworzonego na potrzeby tego wpisu, żadnych danych tam nie ma i nie będzie.

I Love Free Software Day 2026

W piątek, w ramach I Love Free Software Day 2026 odbyło się spotkanie w Poznaniu. Mimo niezbyt fortunnego terminu[1], na spotkanie przyszło kilkadziesiąt osób. Spotkanie było organizowane m.in. przez hackerspace Knyfyrtel, który organizuje też P.I.W.O., co czyni z organizacji ważny punkt na mapie wolnego oprogramowania w Poznaniu.

Chociaż teoretycznie była określona okazja i cel, to poszedłem raczej pod pretekstem. Zresztą agenda też była luźno związana, choć jeden z wykładów był typowo poświęcony tworzeniu pakietów i roli maintainerów.

Tematyka dla bardzo różnych odbiorców. Był wykład o grze OpenTTD, jaka jest historia, jak powstała, jak zacząć grać i jakie są możliwości. Nie zagram[2], ale doceniam. Na drugim biegunie były obliczenia rozproszone na klastrach (ciekawe, ale mocno pod studentów) czy bootc.

Ten ostatni wykład, oraz wykład o Fediwersum przypomniały mi, że dwie rzeczy są w IT trudne. I chyba przekłada się to na opisy czym jest dane rozwiązanie. NFM: wyjście od jak coś działa niekoniecznie ułatwia zrozumienie odbiorcy, o co chodzi. Pewnie lepiej skoncentrować uwagę odbiorcy na czymś, co już zna, pokazać różnice, zalety, wady i ew. na koniec ew. wejść w szczegóły techniczne realizacji.

Potrzebę odniesienia do znanej koncepcji było widać po pytaniach. W przypadku Fediwersum jedno z pytań, które padło z sali (z pamięci) jakiego typu serwisem jest Szmer, czy to taki Wykop? Drugie dostałem po wykładzie od kumpla[3] co to jest ten Mastodon? No nie bójmy się powiedzieć, że to taki Twitter. To oczywiście odpowiedź zła, albo raczej nieprecyzyjna, ale znowu, nazywanie rzeczy jest trudne. Szczególnie, gdy nazwa sieci i jednego z serwerów, który pozwala na korzystanie z jej są takie same[4]… A odbiorca dokładnie tego przybliżenia koncepcji potrzebował.

Organizacja spotkania bdb. Bez problemów technicznych, punktualnie. Były napoje, pizza, możliwość wysłania fizycznych kartek i okazja do spotkania znajomych. Nie żałuję, że poszedłem.

[1] Piątek 18:00 to raczej czas, kiedy jest sporo alternatyw.
[2] Robiłem kiedyś, dawno temu, przymiarkę, nie wciągnęło mnie. Ogólnie nie mój typ gier.
[3] Wie co to social media, świadomie nie używa, raz na parę m-cy zagląda na LinkedIn.
[4] No niestety, tak właśnie jest.