From: Ruben Beltran del Rio Date: Tue, 2 Jan 2024 22:00:30 +0000 (+0100) Subject: blog-sync-up-1704232830559 X-Git-Url: https://git.r.bdr.sh/rbdr/blog.unlimited.pizza/commitdiff_plain/1344375687c03180e7e99239d5aa08be31c52404?ds=sidebyside;hp=3038ea8a38a42813e7ebd4a15b93d3e92e490d3e blog-sync-up-1704232830559 --- diff --git a/archive/1704232830490/metadata.json b/archive/1704232830490/metadata.json new file mode 100644 index 0000000..492517f --- /dev/null +++ b/archive/1704232830490/metadata.json @@ -0,0 +1,4 @@ +{ + "id": "1704232830490", + "createdOn": 1704232830490 +} \ No newline at end of file diff --git a/archive/1704232830490/notes-on-setting-up-a-mastodon-server.gmi b/archive/1704232830490/notes-on-setting-up-a-mastodon-server.gmi new file mode 100644 index 0000000..7e69014 --- /dev/null +++ b/archive/1704232830490/notes-on-setting-up-a-mastodon-server.gmi @@ -0,0 +1,62 @@ +# Notes on Setting Up a Mastodon Server + +Last week I decided to migrate my account to my own mastodon server [1], and I was surprised at how easy it was, but it wasn't without hiccups so I'm writing down some notes on my experience on here. It's not meant to be an in-depth tutorial, but a rough overview on what I had to do to get the server to work. + +=> https://friendship.quest/@ruben [1] my profile @ friendship.quest + +First, some information on my setup: I have a VPS on digitalocean running arch linux, so I went directly to the Arch Wiki [2] which provides great documentation. I had my mind set on using the glitch fork of mastodon [3], so I went with the mastodon-git [4] package. I only had 1G of RAM, which absolutely won't work: some dependencies won't even compile without running out of memory. I decided to upgrade to an instance with 4GB, and this was enough though I did have to tweak some values. + +=> https://wiki.archlinux.org/title/Mastodon [2] Arch Wiki entry on Mastodon. +=> https://glitch-soc.github.io/docs/ [3] Mastodon Glitch Edition +=> https://aur.archlinux.org/packages/mastodon-git [4] mastodon-git AUR package. + +Then onto the setup itself. Starting with the clone: + +``` +% git clone https://aur.archlinux.org/packages/mastodon-git +``` + +Then changed PKGBUILD to use the glitch-soc version. + +``` +# -source=("git+https://github.com/tootsuite/${pkgname%-git}.git#branch=$_branch" +# +source=("git+https://github.com/glitch-soc/${pkgname%-git}.git#branch=$_branch" +``` + +Installed some dependencies. + +``` +% pacman -Sy imagemagick libpqxx postgresql redis protobuf nodejs icu cmake base-devel +``` + +At this point I ran into issues with yarn when running makepkg as I use asdf [5] to control my environment. The dependencies above install nodejs, but I wanted to use the one from asdf, so I had to make sure the paths were correct, otherwise I ran into issues with the right version of yarn. Eventually corepack enable did work. I'm skipping this here because I don't really remember and I don't think most people will haver these issues. + +=> https://asdf-vm.com/ [5] asdf-vm + +But then we were able to makepkg + +``` +% makepkg -si +``` + +The post-install instructions didn't run for me, so I read them from the file [6]. + +=> https://aur.archlinux.org/cgit/aur.git/tree/mastodon.install?h=mastodon [6] mastodon.git post-install file + +Before running the mastodon rake file, I made sure to have the s3 bucket and smtp configuration ready (Will post the pulumi recipe for this in another post), and then the mastodon:setup rake task ran *almost* entirely, but failed during the assets:precompile phase so I had to continue from where it stopped by reading the source [7]. Since only setting up the admin user was left, I removed the rest of the code temporarily to run just that part of the task. + +=> https://github.com/glitch-soc/mastodon/blob/main/lib/tasks/mastodon.rake [7] mastodon:setup rake task source + +With that, all that was left was to set up nginx, so I used the file included in the repo [8] to set it up. + +=> https://github.com/mastodon/mastodon/blob/main/dist/nginx.conf [8] nginx.conf from mastodon repo. + +And that was pretty much it. I did have to make some changes to reduce memory usage and have sidekiq run correctly. On /lib/systemd/system/mastodon-sidekiq.service, I replaced -c 5 with -c 3 and made sure to include -q ingress and -q scheduler as they weren't included. + +I won't go into detail here on the full text search setup, but I did have to reduce the max heap size on opensearch + reduce the sidekiq workers to 3 to avoid running out of memory. In /etc/opensearch/jvm.options you can set -Xms1g and -Xmx1g or whatever value works for you. + +Finally, before migrating I imported a couple of ready-made blocklists and went over information on moderation. + +=> https://fedi.tips/importing-ready-made-server-blocklists-on-mastodon/ [9] fedi.tips info on blocklists + +The server worked well, though it did take about a day for federation to work reliably with some instances. I believe it had to do mostly with DNS propagation. Eventually I was able to migrate and so far it seems to be going well! I am now the proud owner of my personal mastodon instance. diff --git a/posts/0/metadata.json b/posts/0/metadata.json index 3c9c46f..492517f 100644 --- a/posts/0/metadata.json +++ b/posts/0/metadata.json @@ -1,4 +1,4 @@ { - "id": "1704107178044", - "createdOn": 1704107178044 + "id": "1704232830490", + "createdOn": 1704232830490 } \ No newline at end of file diff --git a/posts/0/notes-on-setting-up-a-mastodon-server.gmi b/posts/0/notes-on-setting-up-a-mastodon-server.gmi new file mode 100644 index 0000000..7e69014 --- /dev/null +++ b/posts/0/notes-on-setting-up-a-mastodon-server.gmi @@ -0,0 +1,62 @@ +# Notes on Setting Up a Mastodon Server + +Last week I decided to migrate my account to my own mastodon server [1], and I was surprised at how easy it was, but it wasn't without hiccups so I'm writing down some notes on my experience on here. It's not meant to be an in-depth tutorial, but a rough overview on what I had to do to get the server to work. + +=> https://friendship.quest/@ruben [1] my profile @ friendship.quest + +First, some information on my setup: I have a VPS on digitalocean running arch linux, so I went directly to the Arch Wiki [2] which provides great documentation. I had my mind set on using the glitch fork of mastodon [3], so I went with the mastodon-git [4] package. I only had 1G of RAM, which absolutely won't work: some dependencies won't even compile without running out of memory. I decided to upgrade to an instance with 4GB, and this was enough though I did have to tweak some values. + +=> https://wiki.archlinux.org/title/Mastodon [2] Arch Wiki entry on Mastodon. +=> https://glitch-soc.github.io/docs/ [3] Mastodon Glitch Edition +=> https://aur.archlinux.org/packages/mastodon-git [4] mastodon-git AUR package. + +Then onto the setup itself. Starting with the clone: + +``` +% git clone https://aur.archlinux.org/packages/mastodon-git +``` + +Then changed PKGBUILD to use the glitch-soc version. + +``` +# -source=("git+https://github.com/tootsuite/${pkgname%-git}.git#branch=$_branch" +# +source=("git+https://github.com/glitch-soc/${pkgname%-git}.git#branch=$_branch" +``` + +Installed some dependencies. + +``` +% pacman -Sy imagemagick libpqxx postgresql redis protobuf nodejs icu cmake base-devel +``` + +At this point I ran into issues with yarn when running makepkg as I use asdf [5] to control my environment. The dependencies above install nodejs, but I wanted to use the one from asdf, so I had to make sure the paths were correct, otherwise I ran into issues with the right version of yarn. Eventually corepack enable did work. I'm skipping this here because I don't really remember and I don't think most people will haver these issues. + +=> https://asdf-vm.com/ [5] asdf-vm + +But then we were able to makepkg + +``` +% makepkg -si +``` + +The post-install instructions didn't run for me, so I read them from the file [6]. + +=> https://aur.archlinux.org/cgit/aur.git/tree/mastodon.install?h=mastodon [6] mastodon.git post-install file + +Before running the mastodon rake file, I made sure to have the s3 bucket and smtp configuration ready (Will post the pulumi recipe for this in another post), and then the mastodon:setup rake task ran *almost* entirely, but failed during the assets:precompile phase so I had to continue from where it stopped by reading the source [7]. Since only setting up the admin user was left, I removed the rest of the code temporarily to run just that part of the task. + +=> https://github.com/glitch-soc/mastodon/blob/main/lib/tasks/mastodon.rake [7] mastodon:setup rake task source + +With that, all that was left was to set up nginx, so I used the file included in the repo [8] to set it up. + +=> https://github.com/mastodon/mastodon/blob/main/dist/nginx.conf [8] nginx.conf from mastodon repo. + +And that was pretty much it. I did have to make some changes to reduce memory usage and have sidekiq run correctly. On /lib/systemd/system/mastodon-sidekiq.service, I replaced -c 5 with -c 3 and made sure to include -q ingress and -q scheduler as they weren't included. + +I won't go into detail here on the full text search setup, but I did have to reduce the max heap size on opensearch + reduce the sidekiq workers to 3 to avoid running out of memory. In /etc/opensearch/jvm.options you can set -Xms1g and -Xmx1g or whatever value works for you. + +Finally, before migrating I imported a couple of ready-made blocklists and went over information on moderation. + +=> https://fedi.tips/importing-ready-made-server-blocklists-on-mastodon/ [9] fedi.tips info on blocklists + +The server worked well, though it did take about a day for federation to work reliably with some instances. I believe it had to do mostly with DNS propagation. Eventually I was able to migrate and so far it seems to be going well! I am now the proud owner of my personal mastodon instance. diff --git a/posts/0/link-a-claxonomy-of-mexico-citys-traffic.gmi b/posts/1/link-a-claxonomy-of-mexico-citys-traffic.gmi similarity index 100% rename from posts/0/link-a-claxonomy-of-mexico-citys-traffic.gmi rename to posts/1/link-a-claxonomy-of-mexico-citys-traffic.gmi diff --git a/posts/1/metadata.json b/posts/1/metadata.json index 8929a90..3c9c46f 100644 --- a/posts/1/metadata.json +++ b/posts/1/metadata.json @@ -1,4 +1,4 @@ { - "id": "1696437389086", - "createdOn": 1696437389086 + "id": "1704107178044", + "createdOn": 1704107178044 } \ No newline at end of file diff --git a/posts/1/api_notation_updates.gmi b/posts/2/api_notation_updates.gmi similarity index 100% rename from posts/1/api_notation_updates.gmi rename to posts/2/api_notation_updates.gmi diff --git a/posts/2/link-the-first-conformant-m1-gpu-driver.gmi b/posts/2/link-the-first-conformant-m1-gpu-driver.gmi deleted file mode 100644 index 7f0bf6e..0000000 --- a/posts/2/link-the-first-conformant-m1-gpu-driver.gmi +++ /dev/null @@ -1,12 +0,0 @@ -# Link: The first conformant M1 GPU driver - -=> https://rosenzweig.io/blog/first-conformant-m1-gpu-driver.html The first conformant M1 GPU driver -> Conformant OpenGL® ES 3.1 drivers are now available for M1- and M2-family GPUs. - -> To become conformant, an “implementation” must pass the official conformance test suite, designed to verify every feature in the specification. The test results are submitted to Khronos, the standards body. After a 30-day review period, if no issues are found, the implementation becomes conformant. The Khronos website lists all conformant implementations, including our drivers for the M1, M1 Pro/Max/Ultra, M2, and M2 Pro/Max. - -The work the Asahi team is doing is simply incredible! I’ve been using the arch based flavor for a while now, and it’s been a great experience. I replaced i3 with sway now that hardware acceleration is working properly and it’s very smooth. Linux is blazing fast in Apple Silicon machines. - -I know there’s still a lot of work to do, and I’m very thankful to the Asahi team for all of the effort. Can’t wait to see how it continues! - -If you haven’t tried it, I recommend you give it a go! \ No newline at end of file diff --git a/posts/2/metadata.json b/posts/2/metadata.json index 15a2775..8929a90 100644 --- a/posts/2/metadata.json +++ b/posts/2/metadata.json @@ -1,4 +1,4 @@ { - "id": "1692886191081", - "createdOn": 1692886191081 + "id": "1696437389086", + "createdOn": 1696437389086 } \ No newline at end of file