Odkazy12

Stavba archivu

Steven D. Brewer bloguje od roku 2002: PHPWiki, pak Drupal, pak WordPress. Když Drupal 7 došel na konec životnosti, hledal pro čtyřiadvacet let příspěvků místo, které nebude vyžadovat údržbu, a dal je na blog.sh: archive.bierfaristo.com, kde už jsou příspěvky z Drupalu i feed z Twitteru a kousky starého blogu Esperanto-USA vytažené z Wayback Machine.

Stojí za přečtení, pokud hledáš archiv, který má přežít software, ve kterém vznikl.

#blogsh #archive #drupal

./blog.sh: blogovací engine, kterému stačí terminál

./blog.sh na Root.cz, mými slovy a česky: proč text i obrázky patří na vlastní disk, co je sestavení a kde může výsledek bydlet, jak komentáře jedou po Fediverse a proč dvaadvacet importérů čte export, ne API. A rovnou i to, pro koho engine není: pro víc autorů, pro webovou administraci, pro pluginy.

Číst dál

Jak jsem si na sdíleném hostingu nastavil blog.sh

Pavel přestěhoval WordPressový blog ze sdíleného hostingu na blog.sh, a to přes obyčejné FTP. Postup popisuje krok za krokem: export WXR, import, rclone, zkušební běh, nasazení.

Stojí za přečtení, pokud tvůj web běží na hostingu, který nabízí FTP a nic víc.

#blogsh #wordpress #staticsite

./blog.sh 1.7

./blog.sh 1.7 je venku. Stránka, která píše příspěvek na telefonu, ho teď i publikuje, a zjistí, co se stalo, místo aby jí to někdo řekl: před odesláním si vystaví stvrzenku a každé tři vteřiny se na ni ptá webu, dokud nepřijde odpověď.

Vedle toho druhá polovina téže myšlenky – měnit, čím příspěvek je, bez otevírání toho, co v něm stojí: jeho série, štítky, typ a tři příznaky, z jedné obrazovky. Pak karta odkazu zapsaná v hlavičce, asi padesát kreseb, které může nosit štítek, video přebalené na cestě dovnitř, aby čtenář nečekal na celý soubor, a sedmnáct oprav.

#blogsh #ruby #staticsite

./blog.sh 1.6

./blog.sh 1.6 je venku.

Sestavení přestalo znovu sestavovat to, co nikdo nezměnil: nové sestavení, které nemění nic, stojí sedminu toho, co dřív, obyčejná publikace asi dvě pětiny. Příspěvek jde předat jako soubor – skriptem, cronem, nebo novou stránkou na /write/ na blogu samotném, která odesílá z telefonu přes SSH, které server už má. Na síti nic nového nenaslouchá.

Kolem toho: řada ovládacích prvků sdílení pod příspěvkem, ikona, kterou může nést štítek, cesta ven z koše a z verzí a fotografie uložená jednou místo dvakrát.

#blogsh #ruby #staticsite

./blog.sh 1.3

./blog.sh 1.3 je venku.

Obléci web už neznamená upravovat engine: vlastní stylesheet, menu, postranní panel a úvodní obrázky jsou teď nastavení. Příspěvky se seskupují do sérií, stránky vystupují z proudu a každá úprava si nechává verzi před sebou.

A tři příkazy, které čtou celý archiv: check hlásí, co je rozbité, stats počítá, co tam je, a export to všechno zabalí do rozvržení Jekyllu. Cesta ven se dodává s ním.

#blogsh #ruby #staticsite

./blog.sh 1.2.1

./blog.sh 1.2.1 je venku.

Telefon do každé fotky, kterou pořídí, zaznamená, kde jsi stál. Sociální sítě to při nahrání odstraňují; statický web nemá nikoho, kdo by to udělal. Teď to dělá engine, na cestě do archivu – a doctor vyčistí ty, které jsi uložil dřív.

Bio, patička a claim banneru jsou teď Markdown. Byly to jediné texty na markdownovém blogu, které musely být HTML.

./blog.sh 1.2

./blog.sh 1.2 je venku – importní vydání.

Z osmi zdrojů importu je dvaadvacet: každá sociální síť, na kterou jsi pravděpodobně kdy něco psal, blogovací platformy a Wayback Machine pro blogy, jejichž platforma už neexistuje.

Nastavení webu je teď rozhovor. Stejně tak jeho vzhled, s kandidátskou paletou vykreslenou na tvém vlastním webu, než si ji necháš.

A obrazovka pro procházení archivu, který se stal příliš velkým na rolování.

./blog.sh 1.1

./blog.sh 1.1 je venku.

Připni příspěvek nahoru. Plánuj do publikačních slotů, které se řadí do fronty, místo aby se srážely. Přikládej soubory jako karty ke stažení. Přejmenuj slug, aniž rozbiješ odkaz – stará adresa přesměrovává navždy. Jeden dialog pro všechno, co můžeš s příspěvkem udělat.

A pojistky nasazení, které měří sestavení proti sestavení, takže je neúspěšné nahrání nemůže potichu vypnout.

./blog.sh 1.0.1

./blog.sh 1.0.1 je venku – osmnáct oprav, žádnou z nich nenahlásil uživatel.

Vzešly z nezávislého ověřovacího průchodu nad vydáním: neúspěšný zápis mohl nechat příspěvek bez souboru, jeden špatný příspěvek mohl zastavit celé sestavení, chybějící soubor médií mohl smazat kopii, která už byla naživo.

Teď existuje CHANGELOG, který si klon může přečíst, a ./blog.sh version ti řekne, co provozuješ.

./blog.sh 1.0

./blog.sh 1.0 je venku.

Blogovací engine, který je složka a shellový skript. Standardní knihovna Ruby a bash – žádná databáze, žádné gemy, žádná administrace. Komentáře žijí na Fediverse. Osm importérů, aby měly tvoje archivy z Tumblru a Twitteru kam jít. Licence MIT.

Web, který čteš, je ten engine, jak běží sám sebou.

Přidej svůj jazyk. Je to jeden soubor.

Jediný způsob, jak přispět do ./blog.sh bez napsání jediného řádku Ruby, je přeložit ho – a je to jeden soubor YAML.

Všechno, co čtenář vidí – navigace, data, nadpisy archivu, pole hledání, výzva ke komentářům – pochází ze souboru lokalizace. Celý návod bydlí tady:

docs/localization.md – přidání jazyka do ./blog.sh

Tři věci to dělají opravdu snadným:

  • Jazyk jsou data, ne kód. Zkopíruješ en.yml, přejmenuješ ho, přeložíš hodnoty. Žádné šablony se nedotkneš, žádné Ruby nečteš.
  • Záložní hodnota funguje po klíčích. Napůl hotový překlad funguje od prvního dne – cokoli jsi ještě nepřeložil, se prostě ukáže anglicky, dokud se k tomu nedostaneš.
  • Úplný musí být jen en.yml. Ten tvůj může růst tempem, jaké ti dovolí víkendy.

Angličtina, čeština a němčina už jsou v. Ten tvůj by byl čtvrtý.

Číst dál