Skip to content

faktaoklimatu/web-cz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8ec8a1f · Aug 14, 2023
Dec 5, 2020
Jun 20, 2023
Aug 4, 2023
Aug 14, 2023
Jul 14, 2023
Jun 27, 2021
Jul 26, 2023
Jul 26, 2023
Jan 6, 2021
Oct 6, 2021
Jun 21, 2022
Jan 30, 2021
Oct 4, 2022
Dec 5, 2020
Aug 22, 2022
Feb 3, 2023
Feb 6, 2023

Repository files navigation

O projektu Fakta o klimatu

Build Status

Projekt Fakta o klimatu usiluje o zkvalitnění společenské diskuse o klimatické změně. Snažíme se dodávat srozumitelné údaje široké veřejnosti a vizuálně zpracovávat vědecké informace, aby bylo rozhodování ve věcech týkajících se klimatu založené na aktuálních, kredibilních a ověřených datech.

Debata o klimatické změně je komplikovaná a na všech stranách plná zbytečných emocí, polopravd a mýtů. Chceme poutat pozornost na důležitá témata a stavět most mezi vědci a lidmi, kterých se změny klimatu týkají. A to jsou všichni lidé.

Jsme tým profesionálů zabývajících se různými obory – přírodovědou, IT, společenskými vědami, pedagogikou nebo komunikací. Finance na provoz získáváme od dárců, nepracujeme na ničí objednávku. Při naší činnosti komunikujeme s odborníky, politiky, energetickými firmami i aktivistickými hnutími. Fakta o klimatu jsou však nezávislý projekt, který může podpořit každý.

Konvence v repozitáři

  • Při vývoji postupujte dle návodů v systému Notion.
  • Při psaní textů dodržujte české typografické konvence, viz dokument v systému Notion.
  • Nadpisy issues a pull requestů jsou psány v češtině s diakritikou a začínají velkým písmenem. Udržte je krátké a věcné.
  • Text a diskuze v issue může být méně formální, klidně bez diakritiky a klidně ve slovenštině.
  • Snažte se každému issue přiradit vhodné štítky a projekt. Jestli nevíte zvolit, přidejte štítek na roztřízení.
  • Nadpisy ke commitům pište v češtině s diakritikou, velkým prvním písmenem a bez tečky na konci. Snažte se udržet je krátké (ideálně do 50 znaků).
  • Detailní popis commitů může mít dle potřeby klidně i několik řádků. Používejte odrážky nebo celé věty (s tečkou na konci).
  • Chcete-li po přijetí commitu do produkce automaticky zavřít odpovídající issue na GitHubu, přidejte větu Resolves #257. (257 nahraďte za dané číslo issue). Viz také dokumentace.

Lokální vývoj pro obsahové editory

Chcete-li vyvíjet lokálně (tj. mít možnost sestavit si stránky u sebe), budete potřebovat linuxové prostředí (WSL ve Windows 10 je dostatečné). Aktuálně máme otestovanou funkčnost pro systémy Ubuntu, Fedora a Windows 10 (WSL1). Podporujeme dva způsoby lokálního sestavování stránek:

  • pomocí lokální instalace (aktuálně stabilnější), nebo
  • pomocí kontejnerů (do budoucna možná jednodušší, ale aktuálně méně stabilní).

WSL si dobře rozumí s VSCode, nejlépe postupovat podle tohoto postupu.

Lokální instalace

Lokální instalace má tyto prerekvizity (nainstalujte do systému):

  • Vývojářská verze knihoven ruby (typicky balík ruby-dev)
  • GNU Make (balík make nebo součást základních vývojářských balíků jako je build-essential).
  • Jekyll a Bundler (balíky jekyll a bundler)
  • Inkscape ve verzi alespoň 1.0 (balík inkscape, zkontrolujte si však verzi!)
  • ImageMagick (balík imagemagick)

Na Ubuntu 20.10 nebo novějším bude tedy instalace prerekvizit vypadat následovně: sudo apt install jekyll ruby bundler inkscape build-essential imagemagick. Správnost instalace všech součástí ověříte sestavením stránek pomocí make local -j4.

Máte-li problém spustit Inkscape s chybou Wrong __data_start/_end pair, nastavte proměnnou export _INKSCAPE_GC="disable" (detaily viz GitLab issue).

Na Mac OS funguje kombinace postupu dle Jekyllu, zbytek lze nainstalovat pomocí Homebrew (https://brew.sh/), tedy:

  • brew install imagemagick
  • brew install inkscape (k instalaci standardních aplikací přes Homebrew je potřeba napoprvé ještě brew tap homebrew/cask)

Inkscape standardně není v $PATH, tak je potřeba přidat pomocí

  • sudo mkdir /usr/local/bin,
  • sudo ln -s /Applications/Inkscape.app/Contents/MacOS/inkscape /usr/local/bin/inkscape.

Instalace v kontejneru

Kontejnery umožňují oddělit programy nutné pro sestavení a spuštění webu od zbytku vašeho operačního systému. Zároveň vytvoří konzistentní prostředí, které je téměř totožné s tím, ve kterém se sestavuje živý, publikovaný web.

  • Pro správu kontejnerů používáme balíček Podman, ale použití s Dockerem je téměř totožné.
  • Kromě správce kontejnerů je jedinou další prerekvizitou Make.
  • (Pokud vaše distribuce nepoužívá SELinux, tento krok přeskočte.) Aby měl kontejner ke zdroji přístup, je potřeba upravit bezpečnostní kontext celého adresáře pomocí sudo chcon -Rt svirt_sandbox_file_t .
  • Pro sestavení webu, vytvoření kontejneru a smazání kontejneru použijte Make cíle container, build-container a delete-container.
  • Po úspěšném sestavení webu se objeví se hláška Server running... press ctrl-c to stop.. Vygenerovaný web je po dobu běhu kontejneru přístupný na adrese http://localhost:4000/.
  • Poznámka: Pokud přidáváte novou stránku, měníte infografiky/obrázky nebo datové soubory, je potřeba kontejner zastavit a znovu spustit, aby se vygenerovaly všechny potřebné soubory. Pokud pouze upravujete texty, není třeba kontejner restartovat.

Tipy a triky v případě technických problémů

  • Jekyll padá s nedostatečnými právy zápisu: Pravděpodobně mícháte-li build přes kontejner a lokální instalaci. Smažte všechny artefakty vzniklé při sestavování pomocí make clean-build.
  • Sestavení padá s tím, že Inkscape nezná použité argumenty: Pravděpodobně máte verzi Inkscape nižší než 1.0.
  • Změny v souborech se nepromítají do lokálně zobrazeného webu na localhost:4000: Pravděpodobně jste změnili obsah, který je předzpracováván před spuštěním Jekyllu (například PDF infografik). Zastavte lokálně sestavený web a dejte ho sestavit znova.
  • V git status vidím změny v souboru web-core, i když jsem v něm nic nedělal: Nejste-li vývojář web-core, netrapte se tím. Dost možná to znova zmizí, až příště sestavíte web.

Dokumentace pro webové vývojáře

Plnou vývojářskou dokumentaci najdete v repozitáři s webovým systém.