write.literatur.social

Reader

Read the latest posts from write.literatur.social.

from Becoming More

Purpose

Who am I? Why am I here?

The reason for which something is done, created or for which something exists. The Big Why. That inarguable reason.

Where am I going? Why am I headed in this direction?

Purpose is defined as the reason for BE-ing, for EXIST-ence. A driving force that propels.

To discover purpose is to dicover why we are here.

Anyone or anything whose purpose is not known is in danger of abuse.

Dr. Myles Munroe How can the best version of a life be lived when the reason for its existence is unknown?

In 2024, some think the idea of finding purpose is cliche. It’s not.

Purpose is powerful! The impact of clarity of purpose in a life changes everything.

By the time I found the answers to the question of my purpose I was years out of college. Seminars, books, student counselling sessions didn’t do it for me. On the other hand, there are those who already knew as soon as they could speak what their purpose was and that doesn’t make it any less valid.

I think there is something beautiful about the fact that we all have our own unique journeys to finding our purpose. The discovery of purpose creates a novel experience for each person.

Even when I found the answer to the question of my purpose I wasn’t sure if I had the right answers because the answer did not tick off the checklists from the many self-help books I’d read. All that about passion, gifts & talent, excitement, great sacrifice and work not feeling like work.

I just knew that I’d moved from doing and functioning to being and with that came a deep sense of meaning and fulfillment.

The impact was earth shaking, life changing!

“Work on being, not on having, for with what you are you shall have.” ~ Daisy Osborn

The sad thing though, is that many never find purpose. When I discovered my purpose I realized everyone on earth is here for a specific reason. I also realized that there are those who never find their purpose. The thought that a person can come into this world and just exist without finding true purpose is scary.

Most people just want to be doing something, especially when that something is lucrative and they are successful at it.

I recently came accross this quote by Diana Mereu “When you are purpose-oriented, you will move from “doing” to “being”, you will ask yourself more “why” questions than “what” questions, and you move from being just functional to fantastical.”

I couldn’t help but wish I had come accross this sooner as it resonated so much with my experience of finding my true purpose. My journey from the life of doing, getting and having to being and becoming.

It’s the inspiration for this blog.

What’s your purpose and how did you discover it? Find out mine in my next post.

“We did not just happen to be, we were chosen by God to exist” – Mother Angelica

“More men fail through lack of purpose than lack of talent.” – Billy Sunday”

The real tragedy is not death but a life lived without purpose” – Rick Warren

 
Read more...

from Khotim

Pendahuluan

Pengenalan tentang Minuman Bersoda

Minuman bersoda, dengan berbagai rasa dan variasi, telah menjadi bagian integral dari gaya hidup modern. Dikenal dengan kelezatannya yang unik, minuman bersoda memiliki sejarah panjang dan terus berkembang seiring waktu.

Sejarah Minuman Bersoda

Minuman bersoda pertama kali ditemukan pada abad ke-18 oleh ahli kimia Joseph Priestley. Namun, popularitasnya melejit setelah ditemukan cara untuk memberikan karbonasi pada minuman pada awal abad ke-19.

Jenis Minuman Bersoda

Minuman Bersoda Berkarbonasi

Penjelasan tentang Minuman Bersoda Berkarbonasi

Minuman bersoda berkarbonasi dikenal dengan gelegar dan sensasi berbusa yang dihasilkan oleh penambahan karbon dioksida. Proses karbonasi ini memberikan ciri khas yang unik pada minuman ini.

Contoh Minuman Bersoda Berkarbonasi

  1. Coca-Cola Coca-Cola, ikon minuman bersoda, dikenal dengan rasa manis dan segarnya yang mendunia.

  2. Pepsi Pepsi, pesaing utama Coca-Cola, memiliki karakteristik rasa yang berbeda dan telah menjadi favorit banyak orang.

  3. Fanta Fanta menonjol dengan berbagai rasa buah yang menyegarkan, menciptakan variasi yang menarik.

Minuman Bersoda Tanpa Kafein

Penjelasan tentang Minuman Bersoda Tanpa Kafein

Minuman bersoda tanpa kafein menawarkan pilihan untuk mereka yang ingin menikmati minuman bersoda tanpa efek stimulan kafein.

Contoh Minuman Bersoda Tanpa Kafein

  1. Sprite Sprite, dengan rasa lemon-lime, merupakan contoh populer dari minuman bersoda tanpa kafein.

  2. 7 Up 7 Up, dengan keunikan rasa citrusnya, menjadi alternatif menarik untuk minuman bersoda berkafein.

  3. Mirinda Mirinda hadir dengan variasi buah yang berbeda, tetapi tetap tanpa kafein.

Minuman Bersoda Diet

Penjelasan tentang Minuman Bersoda Diet

Minuman bersoda diet mengandung pemanis buatan sebagai pengganti gula, cocok untuk mereka yang mengontrol asupan kalori.

Contoh Minuman Bersoda Diet

  1. Diet Coke Diet Coke menyediakan versi tanpa kalori dari minuman bersoda klasik.

  2. Diet Pepsi Diet Pepsi adalah alternatif diet yang populer dengan rasa yang tetap memikat.

  3. Coke Zero Coke Zero memberikan rasa klasik tanpa kalori, menggoda penggemar minuman bersoda.

Minuman Bersoda Energi

Penjelasan tentang Minuman Bersoda Energi

Minuman bersoda energi mengandung bahan tambahan stimulan, seperti kafein, untuk memberikan dorongan energi.

Contoh Minuman Bersoda Energi

  1. Red Bull Red Bull, dengan kandungan kafein dan taurin, menjadi minuman energi yang sangat terkenal.

  2. Monster Monster Energy menawarkan variasi rasa dan kekuatan yang tinggi.

  3. Rockstar Rockstar Energy, dengan kombinasi rasa unik, menjadi pilihan favorit para pecinta minuman bersoda energi.

Kandungan dan Khasiat Minuman Bersoda

Gula dan Kalori

Dampak Gula dan Kalori pada Minuman Bersoda

Minuman bersoda sering mengandung tingkat gula dan kalori yang tinggi, yang dapat berdampak negatif pada kesehatan.

Alternatif Minuman Bersoda Rendah Gula

Untuk mengurangi dampak gula, pilihan minuman bersoda rendah gula atau tanpa gula dapat dijadikan alternatif.

Kafein

Kandungan Kafein dalam Minuman Bersoda

Kafein dalam minuman bersoda dapat memberikan efek stimulan, tetapi konsumsi berlebihan dapat memiliki dampak negatif.

Dampak Kafein pada Tubuh

Peningkatan konsumsi kafein dapat menyebabkan masalah tidur, ketegangan, dan dampak lainnya pada kesehatan.

Bahan Tambahan

Pengaruh Bahan Tambahan pada Minuman Bersoda

Bahan tambahan, seperti pewarna dan pengawet, dapat memberikan pengaruh pada citarasa dan warna minuman bersoda.

Contoh Bahan Tambahan yang Umum Ditemukan

Bahan tambahan umum meliputi pewarna buatan, pengatur keasaman, dan pemanis buatan.

Dampak Kesehatan Minuman Bersoda

Kesehatan Gigi

Dampak Minuman Bersoda pada Kesehatan Gigi

Asam dan gula dalam minuman bersoda dapat merusak enamel gigi, menyebabkan kerusakan gigi.

Cara Mengurangi Dampak pada Gigi

Sikat gigi secara teratur dan batasi konsumsi minuman bersoda untuk menjaga kesehatan gigi.

Kesehatan Jantung

Hubungan antara Minuman Bersoda dan Kesehatan Jantung

Konsumsi berlebihan gula dalam minuman bersoda dapat meningkatkan risiko penyakit jantung.

Langkah-langkah untuk Menjaga Kesehatan Jantung

Menerapkan pola makan sehat dan gaya hidup aktif dapat membantu menjaga kesehatan jantung.

Kesehatan Tulang

Pengaruh Minuman Bersoda terhadap Kesehatan Tulang

Beberapa penelitian menunjukkan bahwa konsumsi berlebihan minuman bersoda dapat berhubungan dengan penurunan kepadatan tulang.

Cara Mencegah Kerusakan Tulang akibat Minuman Bersoda

Asupan kalsium yang mencukupi dan gaya hidup sehat dapat membantu mencegah kerusakan tulang.

Alternatif Sehat untuk Minuman Bersoda

Air Mineral

Manfaat Air Mineral bagi Kesehatan

Air mineral adalah pilihan utama untuk menjaga hidrasi tubuh tanpa tambahan gula dan kalori.

Pilihan Air Mineral yang Baik

Memilih air mineral berkualitas tinggi dengan kandungan mineral yang seimb

ang adalah kunci untuk mendapatkan manfaat optimal.

Teh Herbal

Khasiat Teh Herbal sebagai Pengganti Minuman Bersoda

Teh herbal memberikan pilihan yang lezat dan sehat tanpa kafein dan pemanis buatan.

Jenis-jenis Teh Herbal yang Populer

Teh herbal seperti chamomile, peppermint, dan green tea menjadi alternatif yang populer.

Infused Water

Kelezatan Infused Water sebagai Alternatif Minuman Bersoda

Infused water, dengan tambahan buah dan herbal, memberikan rasa segar tanpa gula tambahan.

Resep Infused Water yang Menyegarkan

Berbagai kombinasi buah, sayuran, dan rempah dapat menciptakan infused water yang lezat.

Kesimpulan

Ringkasan tentang Berbagai Contoh Minuman Bersoda

Minuman bersoda menawarkan berbagai pilihan dengan karakteristik unik masing-masing, dari rasa klasik hingga variasi diet dan energi.

Rekomendasi untuk Konsumsi yang Sehat

Pemilihan minuman bersoda yang bijak, pengontrolan asupan gula, dan eksplorasi alternatif sehat dapat mendukung gaya hidup yang seimbang.

Pertanyaan Umum

  1. Apakah Minuman Bersoda Berkarbonasi Berbahaya bagi Kesehatan? Meskipun minuman bersoda dapat dinikmati secara moderat, konsumsi berlebihan dapat berdampak negatif pada kesehatan, terutama terkait dengan gula, kalori, dan kafein.

  2. Apa Saja Alternatif Sehat untuk Minuman Bersoda? Alternatif sehat melibatkan konsumsi air mineral, teh herbal, infused water, dan minuman rendah gula untuk mendukung kesehatan tubuh.

  3. Berapa Jumlah Maksimal Konsumsi Minuman Bersoda yang Aman bagi Tubuh? Jumlah maksimal konsumsi minuman bersoda yang dianggap aman bervariasi untuk setiap individu. Namun, disarankan untuk mengonsumsi dengan bijak dan memperhatikan aspek gula, kalori, dan kafein untuk menjaga kesehatan secara keseluruhan.

 
Read more...

from Khotim

Menjelajahi Dunia Ikan Dewa: Harga, Jenis, dan Tempat Membeli

Ikan dewa, dikenal juga sebagai ikan mas purba atau grass carp, merupakan salah satu spesies ikan air tawar yang populer di Indonesia. Ikan ini digemari karena berbagai alasan, mulai dari nilai estetikanya sebagai ikan hias, kelezatan dagingnya sebagai hidangan konsumsi, hingga potensinya dalam budidaya.

Bagi Anda yang tertarik dengan ikan dewa, artikel ini akan mengupas tuntas informasi mengenai harga, jenis, dan tempat membelinya.

Harga Ikan Dewa yang Beragam

Harga ikan dewa bervariasi tergantung pada beberapa faktor, seperti:

  • Ukuran: Ikan dewa yang lebih besar umumnya lebih mahal daripada yang lebih kecil.
  • Jenis: Ada beberapa jenis ikan dewa, seperti ikan dewa Sumatera, ikan dewa Kalimantan, dan ikan dewa Jawa. Masing-masing jenis memiliki harga yang berbeda-beda.
  • Warna: Ikan dewa dengan warna yang langka atau unik umumnya lebih mahal daripada yang berwarna umum.
  • Lokasi: Harga ikan dewa di daerah yang berbeda-beda dapat bervariasi.

Berikut adalah perkiraan harga ikan dewa di Indonesia per Februari 2024:

  • Benih ikan dewa: Rp 4.000-Rp 5.000 per ekor (ukuran 3-4 cm)
  • Ikan dewa konsumsi: Rp 800.000-Rp 1.000.000 per kg (ukuran konsumsi)
  • Ikan dewa hias: Rp 150.000-Rp 500.000 per ekor (tergantung jenis, ukuran, dan warna)

Menjelajahi Ragam Jenis Ikan Dewa

Terdapat beberapa jenis ikan dewa yang populer di Indonesia, antara lain:

  • Ikan dewa Sumatera (Tor tambroides): Jenis ini memiliki ciri khas berupa warna kuning keemasan dengan bintik-bintik hitam di tubuhnya.
  • Ikan dewa Kalimantan (Tor douronensis): Memiliki warna kecoklatan dengan bintik-bintik hitam yang lebih besar dibandingkan ikan dewa Sumatera.
  • Ikan dewa Jawa (Tor soro): Jenis ini memiliki warna hijau kehitaman dengan bintik-bintik kuning di tubuhnya.

Menemukan Tempat Membeli Ikan Dewa yang Tepat

Anda dapat menemukan ikan dewa di berbagai tempat, seperti:

  • Toko ikan hias: Menjual berbagai jenis ikan dewa, termasuk benih, ikan konsumsi, dan ikan hias.
  • Pasar ikan: Biasanya menjual ikan dewa konsumsi.
  • Peternak ikan dewa: Membeli langsung dari peternak memungkinkan Anda mendapatkan ikan yang lebih murah dan berkualitas.
  • Toko online: Berbagai toko online seperti Tokopedia, Shopee, dan Lazada menyediakan pilihan ikan dewa yang beragam.

Tips Memilih Ikan Dewa yang Berkualitas

Sebelum membeli ikan dewa, perhatikan beberapa hal berikut:

  • Kesehatan: Pastikan ikan dewa yang Anda pilih tampak sehat, aktif, dan memiliki warna yang cerah.
  • Kualitas air: Pastikan air di tempat ikan dewa disimpan bersih dan jernih.
  • Ukuran: Pilihlah ukuran ikan dewa yang sesuai dengan kebutuhan Anda.
  • Jenis dan warna: Pilihlah jenis dan warna ikan dewa yang sesuai dengan selera Anda.

Dengan memahami informasi mengenai harga, jenis, dan tempat membeli ikan dewa, Anda dapat memilih ikan yang tepat untuk kebutuhan Anda.

 
Read more...

from Khotim

Fungsi Katalis dalam Proses Produksi: Mendorong Kemajuan dan Efisiensi

Proses produksi modern tidak dapat dipisahkan dari peran katalis. Kata “katalis” berasal dari bahasa Yunani, yang berarti “sesuatu yang mempercepat atau mendorong.” Dalam dunia industri, katalis berperan sebagai agen yang meningkatkan laju reaksi kimia tanpa mengalami perubahan permanen. Artikel ini akan mengupas secara mendalam tentang fungsi katalis dalam proses produksi, menggali manfaatnya, dan bagaimana inovasi terus mengembangkan peran katalis dalam mencapai efisiensi yang lebih tinggi.

1. Dasar Kerja Katalis

Sebelum memahami bagaimana katalis berperan dalam proses produksi, penting untuk memahami dasar kerjanya. Katalis bekerja dengan cara menyediakan jalur reaksi alternatif yang membutuhkan energi aktivasi yang lebih rendah. Ini memungkinkan molekul-molekul reaktan untuk berinteraksi lebih efisien, membentuk produk-produk yang diinginkan tanpa mengubah katalis itu sendiri.

2. Efisiensi Energi dan Pengurangan Limbah

Salah satu manfaat utama katalis dalam proses produksi adalah peningkatan efisiensi energi. Dengan meminimalkan energi aktivasi yang diperlukan untuk reaksi kimia, katalis membantu mengurangi konsumsi energi keseluruhan. Hal ini tidak hanya menghemat biaya, tetapi juga mengurangi jejak karbon dan dampak lingkungan.

Selain itu, katalis berperan sebagai agen pengurangan limbah. Dengan mempercepat reaksi kimia, proses produksi menghasilkan jumlah limbah yang lebih sedikit. Ini sangat relevan dalam konteks keberlanjutan, di mana upaya untuk mengurangi limbah dan meningkatkan efisiensi menjadi fokus utama.

3. Keberlanjutan dan Ramah Lingkungan

Peran katalis tidak hanya mencakup efisiensi produksi, tetapi juga berdampak positif pada keberlanjutan. Dengan memanfaatkan katalis yang dapat didaur ulang, industri dapat mengurangi ketergantungan pada bahan kimia berbahaya dan mengurangi dampak negatif terhadap lingkungan.

Inovasi terbaru dalam katalisis hijau menunjukkan upaya untuk mengembangkan katalis yang lebih ramah lingkungan, menggunakan bahan-bahan yang lebih berkelanjutan dan meminimalkan risiko toksisitas. Ini adalah langkah signifikan menuju produksi yang lebih bersih dan berkelanjutan.

4. Peran Katalis dalam Industri Kimia dan Petrokimia

Industri kimia dan petrokimia adalah dua bidang di mana peran katalis sangat krusial. Proses konversi minyak bumi menjadi bahan bakar, plastik, dan bahan kimia lainnya memanfaatkan katalis untuk meningkatkan efisiensi dan menghasilkan produk dengan kualitas yang lebih baik.

Katalis juga berperan penting dalam menghasilkan amonia, senyawa yang digunakan dalam pupuk. Proses Haber-Bosch, yang mendapatkan Nobel Kimia pada tahun 1918, menggunakan katalis untuk mensintesis amonia dari nitrogen dan hidrogen, memainkan peran utama dalam mendukung ketahanan pangan global.

5. Inovasi Terkini dalam Dunia Katalisis

Dunia katalisis terus mengalami inovasi yang mengubah paradigma industri. Penggunaan katalis nanopartikel, pengembangan katalis berbasis biologi, dan penelitian tentang katalis yang dapat berfungsi pada suhu rendah menjadi fokus penelitian saat ini.

Inovasi-inovasi ini tidak hanya bertujuan untuk meningkatkan efisiensi, tetapi juga untuk mengatasi masalah kompleks seperti perubahan iklim dan keberlanjutan. Mempertimbangkan aspek-aspek ini, katalis muncul sebagai pendorong utama perubahan positif dalam industri produksi.

Kesimpulan

Dalam perjalanan evolusinya, katalis telah menjadi tulang punggung proses produksi modern. Dengan memahami dan mengoptimalkan peran katalis, industri dapat mencapai tingkat efisiensi yang lebih tinggi, mengurangi dampak lingkungan, dan membuka pintu menuju produksi yang lebih berkelanjutan. Dengan terus menggali inovasi dan penelitian, masa depan katalisis menjanjikan solusi yang lebih baik untuk tantangan produksi masa kini dan masa depan.

 
Read more...

from Khotim

Peran Bahan Kimia dalam Pupuk Pertanian: Meningkatkan Produktivitas dan Kesejahteraan Tanaman

Pertanian adalah tulang punggung bagi kehidupan manusia, menyediakan pangan esensial untuk memenuhi kebutuhan nutrisi dan energi. Dalam upaya untuk meningkatkan hasil pertanian, para petani dan ilmuwan pertanian terus mencari inovasi, dan salah satu aspek kunci adalah penggunaan pupuk pertanian. Pupuk memberikan nutrisi penting yang dibutuhkan tanaman untuk tumbuh dan berkembang dengan optimal. Dalam hal ini, bahan kimia memainkan peran sentral dalam pembuatan pupuk pertanian.

  1. Mengoptimalkan Nutrisi Tanaman Bahan kimia seperti nitrogen (N), fosfor (P), dan kalium (K) merupakan komponen utama dalam pupuk pertanian. Nitrogen mendukung pertumbuhan daun dan batang tanaman, fosfor mempromosikan perkembangan akar dan pembentukan bunga, sedangkan kalium berperan dalam resistensi terhadap penyakit dan stres lingkungan. Penggunaan bahan kimia ini secara tepat dapat membantu menciptakan formula pupuk yang sesuai dengan kebutuhan spesifik tanaman, memastikan penyerapan nutrisi yang efisien.

  2. Mengatasi Defisiensi Nutrisi Pupuk mikro dengan kandungan unsur hara seperti besi, mangan, tembaga, dan zinc memainkan peran penting dalam mengatasi defisiensi nutrisi pada tanaman. Bahan kimia ini secara khusus digunakan untuk memperbaiki kondisi tanah yang kurang subur atau mengatasi kondisi tanah tertentu yang dapat menghambat penyerapan nutrisi oleh tanaman.

  3. Mempercepat Proses Pemecahan Pupuk Organik Bahan kimia juga digunakan dalam pupuk organik untuk mempercepat proses dekomposisi dan pemecahan bahan organik. Enzim dan mikroorganisme tertentu yang diperoleh dari bahan kimia membantu mengurai bahan organik menjadi nutrisi yang lebih mudah diserap oleh tanaman. Ini meningkatkan ketersediaan nutrisi tanaman secara keseluruhan.

  4. Mengurangi Risiko Keracunan Tanaman Penggunaan bahan kimia pada pupuk dapat membantu mengurangi risiko keracunan tanaman. Dengan formulasi yang tepat, dosis yang benar, dan penerapan yang hati-hati, bahan kimia dalam pupuk dapat memberikan nutrisi tanaman tanpa menimbulkan dampak negatif pada kesehatan tanaman atau lingkungan.

  5. Inovasi Terus Berkembang Peran bahan kimia dalam pupuk pertanian terus berkembang seiring dengan kemajuan teknologi dan penelitian. Inovasi baru mencakup pengembangan pupuk berbasis nanoteknologi dan formulasi khusus yang dirancang untuk mengoptimalkan pertumbuhan tanaman dengan lebih efisien.

Dalam mengejar ketahanan pangan global, pemahaman yang mendalam tentang peran bahan kimia dalam pupuk pertanian menjadi sangat penting. Dengan penerapan yang bijak dan bertanggung jawab, penggunaan bahan kimia dalam pupuk dapat menjadi kunci untuk meningkatkan produktivitas pertanian, memastikan ketahanan pangan, dan mendukung kesejahteraan manusia secara keseluruhan.

ins: https://icsa.co.id/

 
Read more...

from Clemens

introduction

Since 2019 Klaudia and I are running the Mastodon instance literatur.social. Back then, we knew that we do not have the time to maintain a Mastodon fork or even a customized installation. We already saw several other smaller instances being haunted by their custom Mastodon installations and every security release would involve a lot of stress getting the code base updated in time.

While the resource footprint of our instance has changed in the last years, the setup itself is still pretty much the same, simple (ansible-managed) docker-compose setup running the official docker image, with easy maintainability as the main design goal.

In summer 2023, we had the need to back-port several upstream changes for admin-webhooks for our automatic account approval system. Additionally we wanted do a few smaller changes, like extending the number of possible poll options was something that we really wanted to try out and also a few (hard-coded) rate limits needed changes. A customized docker image was born.

managing and maintaining small changes with minimal effort

We don't want to maintain a full fork of the Mastodon repository. We basically just want to create and maintain simple, minimalistic patch files. One can do this with the basic diff and patch tools, but especially updating patches that break due to changes is not possible in a meaningful way.

This is where quilt comes in:

Quilt is a tool to manage large sets of patches by keeping track of the changes each patch makes. Patches can be applied, un-applied, refreshed, etc.

It is extensively used, among others, by OpenWrt to manage several hundred Linux kernel patches, by Debian to maintain patches for building packages and others. Both OpenWrt and Debian have quilt pages, but they are quite specific and you will probably find better how-tos.

a quick quilt introduction

For quilt you will have a patches folder with: – the patches/*.patch files you work on – a patches/series file that lists the currently enabled patches with their order

If you have worked with version control systems like git, working with quilt will feel quite familiar, although there are a few differences: – patches are created before making the actual changes – files are added/assigned to patches before making the changes – everything outside of the added files will not be tracked

A typical workflow looks like this: 1. quilt new 001-my-patch-change-foobar-patch – create a new patch 2. adding the file and making the changes: – quilt edit foo/bar/fileToChange.bar – directly edit with quilt and your favourite EDITOR, orquilt add foo/bar/fileToChange.bar – add file to edit it in an external editor afterwards 3. quilt refresh – update the patch once you made your changes

The commands quilt push and quilt pop will allow you to apply and remove patches in your current working tree, changes are typically added to the last applied patch.

Disclaimer: This is not intended as a quilt tutorial, there is a lot more to it, (dealing with multiple patches, refreshing of failing patches, etc.) If more people are interested in this I might write another blog post, just write me a note at @datacop@literatur.social 😉

building a customized image

Building a custom Mastodon Docker image from scratch with the original Dockerfile would be the obvious way, but part from the build time and required build resources, the official image is well-tested and verified by the community within minutes of a new release.

This is why we decided to go the minimalistic way and apply our patches on top of the official release image by installing quilt, pushing the patches and re-compiling the assets.

This is the Dockerfile that we use to create our customized image:

FROM ghcr.io/mastodon/mastodon:latest
ARG DEVELOPMENT

# add a nice '+custom' version suffix
ENV MASTODON_VERSION_METADATA="custom"

USER root
RUN apt-get -y --no-install-recommends install quilt vim

# add patches and .quiltrc
COPY --chown=mastodon:mastodon patches /opt/mastodon/patches
COPY --chown=mastodon:mastodon .quiltrc /opt/mastodon/

# back to the mastodon user
USER mastodon
WORKDIR /opt/mastodon

# push all patches in the `series` file, do not fail if DEVELOPMENT
RUN quilt push -a -f || [ -n "${DEVELOPMENT}" ]

# Precompile assets again
RUN OTP_SECRET=precompile_placeholder SECRET_KEY_BASE=precompile_placeholder rails assets:precompile && \
    yarn cache clean

.quiltrc is just for nice looking patches and vim as default editor:

QUILT_DIFF_ARGS="--no-timestamps --no-index -p ab --color=auto"
QUILT_REFRESH_ARGS="--no-timestamps --no-index -p ab"
QUILT_PATCH_OPTS="--unified"
QUILT_DIFF_OPTS="-p"
EDITOR="vim"

docker build

To pull the lastest Mastodon release and build the image, run:

docker pull ghcr.io/mastodon/mastodon:latest
docker build . -f Dockerfile mastodon-custom

The image mastodon-custom will be your new, customized Mastodon image.

creating and updating patches

For creating and updating the patches I use this small shell script that builds a Mastodon container, starts it up with the local patches folder mounted as volume, and drops you in a shell where you can use quilt to do your changes and update your patches:

#!/bin/sh
set -xe
docker build . --build-arg DEVELOPMENT=1 -t mastodon-patch
docker run --rm -it -v $(pwd)/patches:/opt/mastodon/patches mastodon-custom /bin/bash
docker image rm mastodon-custom -f

conclusion

That's basically all the magic. This is an easy way to work with a few patches, and not lose the advantages of using the official Mastodon image. Especially backports of unreleased features from Mastodon's development branch were really easy to integrate.

We're currently running this in a GitLab instance to take advantage of GitLab's internal docker registry. On most Mastodon releases it is just needed to hit the rebuild button, once the Mastodon upstream image was updated.

Disclaimer: YMMV, further research is needed.

a word on dealing with major version updates

You might ask, But what if my patches break on updates?. Yes, you will have to fix and refresh your patches.

In our experience, smaller upstream changes are usually easily fixed by force-applying the patch, fixing every part of the patch that did not apply and refreshing the patch afterwards. We typically upgrade our instance within 1-2h of a new release.

For larger version updates, the upstream code might have changed so much, that you will have to re-write the patch. As soon as there are release-candidates, you can (and probably should) try to apply your patches on the release-candidate image tag to see if something breaks.

On bigger patch fails, find the pull request on GitHub that changed the parts you want to patch and understand what the upstream change intends to do. Mastodon's release notes are quite good, so the chances are quite high that you will find it there.

 
Read more...

from Klaudia Zotzmann-Koch

Ein neuer Blog ...

... oder zumindest ein erster Eintrag im writefreely, das wir für litera.tools aufgesetzt haben. Ich bin selbst schon ganz gespannt, wie sich die Dinge hier entwickeln werden und was es hier bald zu lesen gibt. Vielleicht sind ja ein paar Autorenkolleg:innen bald hier und schreiben ihre Texte und Gedanken nieder. Oder ich komme irgendwann auf die Idee, meinen eigenen Blog hierher zu übertragen. Oder einen ganz neuen anzufangen.

Writefreely ist, wenn ich das richtig sehe, aktuell vor allem auf Fließtext aus. Bilder kann man nur per URL einbinden, zB einige von denen, die ich bei Pixelfed oder Mastodon gepostet habe. Wäre ja auch was, das zu verbinden.

 
Weiterlesen...