about summary refs log tree commit diff
path: root/content
diff options
context:
space:
mode:
authorNgô Ngọc Đức Huy <huyngo@disroot.org>2023-09-02 10:01:52 +0700
committerNgô Ngọc Đức Huy <huyngo@disroot.org>2023-09-02 10:01:52 +0700
commit35e9f6324dba0757e7c967fab6d000e44b4d5074 (patch)
tree6750e147708092e0397ee2f581f2c9ccd1c00455 /content
parent46b1e6c785c9e15e721faa54d6e979c5c226c1a3 (diff)
downloadblog-35e9f6324dba0757e7c967fab6d000e44b4d5074.tar.gz
Update theme
Diffstat (limited to 'content')
-rw-r--r--content/about.md53
-rw-r--r--content/about/_index.md22
-rw-r--r--content/about/contact.md42
-rw-r--r--content/about/rss.md (renamed from content/rss.md)0
-rw-r--r--content/about/uses.md (renamed from content/uses.md)9
-rw-r--r--content/about/works.md (renamed from content/works.md)21
-rw-r--r--content/book-reviews/_index.fr.md2
-rw-r--r--content/book-reviews/_index.md2
-rw-r--r--content/book-reviews/relevant-search.md2
-rw-r--r--content/doodles/1.md (renamed from content/comics/1.md)0
-rw-r--r--content/doodles/2.md (renamed from content/comics/2.md)0
-rw-r--r--content/doodles/3.md (renamed from content/comics/3.md)0
-rw-r--r--content/doodles/4.md (renamed from content/comics/4.md)0
-rw-r--r--content/doodles/_index.md (renamed from content/comics/_index.md)4
-rw-r--r--content/misc/_index.md (renamed from content/misc.md)6
-rw-r--r--content/posts/2023-09-02-setup-external-backup.md120
-rw-r--r--content/posts/_index.md9
-rw-r--r--content/til/_index.fr.md2
-rw-r--r--content/til/_index.md3
-rw-r--r--content/til/vim-jp.fr.md2
-rw-r--r--content/til/vim-jp.md2
21 files changed, 225 insertions, 76 deletions
diff --git a/content/about.md b/content/about.md
deleted file mode 100644
index 74dcf78..0000000
--- a/content/about.md
+++ /dev/null
@@ -1,53 +0,0 @@
----
-title: About
-language: en
-ref: about
-disable_feed: true
----
-
-## Me
-
-![I literally used this duck image for debugging](rubber-duck.png)
-
-Hi, this is <i>xarvos</i>, also known in meatspace as <i>Huy</i>.  I write
-about all kinds of stuff; expect tech discussion, shitposts, language stuff,
-fictions, blah blah.
-
-- languages: Vietnamese, English, French, German, with proficiency and
-  fluency decrementally sorted
-- Contacts: See [footer](#footer)
-  - If you're a friend/want a friendly discussion, contact me at loang.net
-  - If you're a company/want a professional discussion, contact me at
-      disroot.org
-  - etiquette:
-    - use [plain text for email][plain]
-    - [no Word document][no-word] or other proprietary format like RAR.
-    - Avoid any unnecessary attachments, if possible.
-    - If the platform support it, media description (e.g. [alt text][alt]) is much appreciated
-
-[alt]: https://www.w3.org/WAI/PF/HTML/wiki/Media_Alt_Technologies
-
-### Works
-
-I write [free software][free-sw], but unfortunately not as a professional job.
-
-If you're an employer, you can find my [CV](/cv/) in web format, printable as
-PDF, browse some miscellaenous [work](/works/).
-
-I accept payment and donation on [liberapay][liberapay].
-You can also send me money on [patreon][patreon] ~~and
-[PayPal](https://paypal.me/huynnd)~~. My PayPal account is currently locked.
-If you want to pay in another way, such as bank transfer or cash, please
-contact me via Matrix or email.
-
-[free-sw]: https://www.gnu.org/philosophy/free-sw.html
-
-<!-- donations -->
-[cv]: https://raw.githubusercontent.com/Huy-Ngo/my-cv/master/huy-cv.pdf
-[liberapay]: https://liberapay.com/huy.ngo/
-[patreon]: https://www.patreon.com/__huy_ngo__
-
-<!-- contact -->
-
-[plain]: https://useplaintext.email
-[no-word]: https://www.gnu.org/philosophy/no-word-attachments.html
diff --git a/content/about/_index.md b/content/about/_index.md
new file mode 100644
index 0000000..a880e48
--- /dev/null
+++ b/content/about/_index.md
@@ -0,0 +1,22 @@
+---
+title: About
+language: en
+ref: about
+disable_feed: true
+---
+
+## Me
+
+![I literally used this duck image for debugging](rubber-duck.png)
+
+Hi, this is <i>xarvos</i>, also known in meatspace as <i lang="vi">Huy</i>.
+I write about all kinds of stuff; expect tech discussion, shitposts, language
+stuff, fictions, blah blah.  I [work][work] as a software developer, and that
+means I [hate software][relevant-xkcd] more than others.
+
+I speak Vietnamese, English, French, German, with proficiency and fluency
+decrementally sorted.  Please [contact][contact] if you want language exchange.
+
+[contact]: /en/about/contact/
+[work]: /en/about/works/
+[relevant-xkcd]: https://xkcd.com/2030/
diff --git a/content/about/contact.md b/content/about/contact.md
new file mode 100644
index 0000000..fe990a9
--- /dev/null
+++ b/content/about/contact.md
@@ -0,0 +1,42 @@
+---
+title: Contact
+language: en
+ref: contact
+disable_feed: true
+---
+
+## Email
+
+I have two emails.  If you want to contact about work, even if it's volunteer
+work, contact my [professional email][work-mail].  If you are or want to be a
+friend, contact my [personal email][perso-mail].  If in doubt, use the first
+one.
+
+[work-mail]: huyngo@disroot.org
+[perso-mail]: xarvos@loang.net
+
+Etiquette:
+
+- use [plain text for email][plain]
+- [no Word document][no-word] or other proprietary format like RAR.
+
+## Fediverse
+
+I have multiple matrix accounts.  My main one is
+[@xarvos@outerheaven.club][fedi]
+
+[fedi]: https://outerheaven.club/users/xarvos
+
+## Matrix
+
+Send private messages to me at [@huyngo:envs.net][matrix]
+
+[matrix]: matrix:u/huyngo:envs.net
+
+[alt]: https://www.w3.org/WAI/PF/HTML/wiki/Media_Alt_Technologies
+
+<!-- contact -->
+
+[plain]: https://useplaintext.email
+[no-word]: https://www.gnu.org/philosophy/no-word-attachments.html
+
diff --git a/content/rss.md b/content/about/rss.md
index 6ab1d13..6ab1d13 100644
--- a/content/rss.md
+++ b/content/about/rss.md
diff --git a/content/uses.md b/content/about/uses.md
index 25e810f..e32b69d 100644
--- a/content/uses.md
+++ b/content/about/uses.md
@@ -70,7 +70,9 @@ I use vim and neovim, mostly.  The reason is:
 
 Emacs would probably be the same, but I'm not as used to its keybinding.
 "Vim mode", or the bastardisation of vim keybinding in other editors, never
-appeals me.  Besides these two, I'm OK with any graphical editors, it is 
+appeals me.  Besides these two, I'm OK with any graphical editors, though big,
+bloated <abbr title="Integrated Development Environment">IDE</abbr>s,
+especially proprietary ones, are quite repulsive to me.
 
 ## Hardware
 
@@ -103,5 +105,6 @@ Anyways, here is the setup:
   <dt>Mouse</dt><dd>Logitech G102 LightSync Gaming Mouse</dd>
 </dl>
 
-I fail to understand why most custom-built PC are marketed only towards gamers
-who like shiny flashy RGB LEDs? I don't appreciate that aesthestics.
+On a related note, I fail to understand why most custom-built PC are marketed
+only towards gamers who like shiny flashy RGB LEDs? I don't appreciate that
+aesthestics.
diff --git a/content/works.md b/content/about/works.md
index a0b21f1..4df9409 100644
--- a/content/works.md
+++ b/content/about/works.md
@@ -10,9 +10,24 @@ Consider this my informal portfolio.  My projects can be found on
 
 For a more formal one, see my [CV in web format][cv] (printable as PDF).
 
-[cv]: /cv/
+## Expectations
+
+Unless you're able to provide me a full-time employment with required benefits,
+any contractual works must be [free software][free-sw].
+
+I accept payment and donation on [liberapay][liberapay].
+You can also send me money on [patreon][patreon] ~~and
+[PayPal](https://paypal.me/huynnd)~~. My PayPal account is currently locked.
+If you want to pay in another way, such as bank transfer or cash, please
+contact me via Matrix or email.
 
-## Expectation
+[free-sw]: https://www.gnu.org/philosophy/free-sw.html
+
+<!-- donations -->
+[liberapay]: https://liberapay.com/huy.ngo/
+[patreon]: https://www.patreon.com/__huy_ngo__
+
+[cv]: /cv/
 
 ### Things I can offer
 
@@ -36,7 +51,7 @@ overtime. Other than that, these are nice things to have:
 - fully [remote work][remote] with occasional hanging out onsite
 - letting me work for slightly less than full-time (e.g. 4 days per week)
 
-[remote]: /posts/2022-10-15-remote-work/
+[remote]: /en/posts/2022-10-15-remote-work/
 
 ### Things I'm not interested in
 
diff --git a/content/book-reviews/_index.fr.md b/content/book-reviews/_index.fr.md
index 9610cd9..a83c7c0 100644
--- a/content/book-reviews/_index.fr.md
+++ b/content/book-reviews/_index.fr.md
@@ -1,6 +1,6 @@
 ---
 categories: ["book review"]
-title: book-reviews
+title: Commentaires des livres
 ---
 
 Ce sont des livres que j'ai lu et mes pensées d'eux.
diff --git a/content/book-reviews/_index.md b/content/book-reviews/_index.md
index c463b64..3ebe3bd 100644
--- a/content/book-reviews/_index.md
+++ b/content/book-reviews/_index.md
@@ -1,6 +1,6 @@
 ---
 categories: ["book review"]
-title: book-reviews
+title: Book Reviews
 ---
 
 I review books as I read.  Each review will contain:
diff --git a/content/book-reviews/relevant-search.md b/content/book-reviews/relevant-search.md
index 801efec..c91b9f6 100644
--- a/content/book-reviews/relevant-search.md
+++ b/content/book-reviews/relevant-search.md
@@ -1,6 +1,6 @@
 ---
 categories: ["book review"]
-title: "[Book review] Relevant Search"
+title: "Relevant Search: With applications for Solr and Elasticsearch"
 date: 2021-05-06
 tags: [book, review, search, programming, algorithm]
 book: "Relevant Search: With applications for Solr and Elasticsearch"
diff --git a/content/comics/1.md b/content/doodles/1.md
index eea799c..eea799c 100644
--- a/content/comics/1.md
+++ b/content/doodles/1.md
diff --git a/content/comics/2.md b/content/doodles/2.md
index 5aa3c42..5aa3c42 100644
--- a/content/comics/2.md
+++ b/content/doodles/2.md
diff --git a/content/comics/3.md b/content/doodles/3.md
index 8900e1e..8900e1e 100644
--- a/content/comics/3.md
+++ b/content/doodles/3.md
diff --git a/content/comics/4.md b/content/doodles/4.md
index dacbf91..dacbf91 100644
--- a/content/comics/4.md
+++ b/content/doodles/4.md
diff --git a/content/comics/_index.md b/content/doodles/_index.md
index 42c3408..794fa1a 100644
--- a/content/comics/_index.md
+++ b/content/doodles/_index.md
@@ -1,7 +1,7 @@
 ---
-title: comics
+title: Doodles
 lang: en
-translationKey: comics
+translationKey: doodles
 ---
 
 Here are some attempts of mine to draw webcomics, or I should say random
diff --git a/content/misc.md b/content/misc/_index.md
index 7aeba6c..940b1d3 100644
--- a/content/misc.md
+++ b/content/misc/_index.md
@@ -1,11 +1,13 @@
 ---
-title: Miscellanea
+title: Misc
 language: en
 ref: misc
 translationKey: misc
 disable_feed: true
 ---
 
+# Miscellanea
+
 Here are some miscellanous things I do.
 
 ## Conlangs
@@ -96,4 +98,4 @@ may have heard of:
 
 I also enjoy drawing every now and then, not that I want to be an artist or I
 draw well.  I just find scribbling something fun.  I recently decided to post
-[my scribbles](/comics/) on this website.
+[my doodles](/en/doodles/) on this website.
diff --git a/content/posts/2023-09-02-setup-external-backup.md b/content/posts/2023-09-02-setup-external-backup.md
new file mode 100644
index 0000000..6a94158
--- /dev/null
+++ b/content/posts/2023-09-02-setup-external-backup.md
@@ -0,0 +1,120 @@
+---
+title: "Setup backup on external disk"
+date: 2023-09-02
+draft: true
+lang: en
+categories: [ blog ]
+tags: []
+translationKey: "2023-09-02-setup-external-backup"
+---
+
+## Backstory
+
+A few weeks ago (not today), I fucked up:
+During irregular disk cleanup, I accidentally removed the config folder!
+
+Fortunately, I "backed up" the config with git, didn't I? 😌
+
+Well yes, but actually no! 🥲 I did commit, but I didn't push.
+The latest pushed config had been 9 months before this incident.
+
+On top of that, many programs generate unreadable configs, which I prefer not
+to put into version control, or put sensitive information or large data into
+`.config`, which shouldn't be pushed into a remote repository on a server I
+don't own.  For example, nheko puts authentication info there, and after this
+incident I lost the session with several messages---well, matrix's irregularly
+regular decryption failure could be expanded into a post on its own, so let's
+not digress.
+
+And then there are more things to back up than just configs, say, my photos and
+music.  I mirror them between my devices with [syncthing], providing
+redundancy, but [syncthing is not backup][syncthing-failure],
+and neither is [RAID][raid-not-backup]
+
+[syncthing]: https://syncthing.net/
+[syncthing-failure]: https://forum.syncthing.net/t/syncthing-deleted-all-files-on-every-device/20518
+[raid-not-backup]: https://www.raidisnotabackup.com/
+
+I should back them up, or I might one day be doomed to repeat the mistake.
+
+## Preparation
+
+Despite the bitterness from the partial data loss, I kinda didn't have the
+spoon to do what I must, so I've been delaying it hitherto.
+
+### Hardware
+
+One of the reason I was cleaning up the disk in the first place was that it's
+start to be filled up, so I bought a large hard drive to store more data and
+backup.  Doesn't seem too safe, I know: if the hard drive gets lost or broken,
+I'll lose both the main data and the backup, but with a limited budget and
+space, that's good enough for now.
+
+I got a Seagate One Touch 2 TB[^0] HDD.  It seems to come with builtin backup
+software, which doesn't support Linux of course, and I likely wouldn't use it
+even if it did.  A USB hub is also needed, as my laptop has a limited number of
+USB ports.
+
+### Formatting
+
+Coming with the hard drive are several files, such as an `.exe` program to
+initialize the backup, I suppose.  I don't need these, and the disk can be
+formatted ~~right away~~ after I do full-disk encryption on that.
+
+No partitioning is needed: while I do seek [vegan alternative][margarine], I
+intended to use [btrfs][btrfs-kernel] as the file system, which can create
+subvolumes, which can act as separate mounted partitions.  I will just reformat
+the existing partition to btrfs.
+
+```sh
+mkfs.btrfs -L margarine /dev/sdb1
+```
+
+[margarine]: https://outerheaven.club/notice/AZ8wYpKOyp2p329V5M
+[btrfs-kernel]: https://www.kernel.org/doc/html/latest/filesystems/btrfs.html
+
+I intend to have three subvolumes, one for big data (not Big Data™) such as
+movies or music, one for more personal data and another for backup:
+
+```sh
+mount /dev/sdb1 /mnt
+btrfs subvolume /mnt/data/hoard
+btrfs subvolume /mnt/data/perso
+btrfs subvolume /mnt/backup
+```
+
+Finally, I need to declare those in the nix hardware configuration file.
+
+
+```nix
+{
+  (...)
+  fileSystems = {
+    "/" = {
+      (...)
+    };
+    "/data/hoard" = {
+      device = "/dev/disk/by-uuid/[subvolume uuid]";
+      fsType = "btrfs";
+      options = [ "subvol=data/hoard" "compress-force=zstd" "noatime" ];
+    };
+    "/data/perso" = {
+      device = "/dev/disk/by-uuid/[subvolume uuid]";
+      fsType = "btrfs";
+      options = [ "subvol=data/perso" "compress-force=zstd" "noatime" ];
+    };
+    "/backup" = {
+      device = "/dev/disk/by-uuid/[subvolume uuid]";
+      fsType = "btrfs";
+      options = [ "subvol=backup" "compress-force=zstd" ];
+    };
+  };
+  (...)
+}
+```
+
+## Setting up
+
+[^0]: That means 1.81 [TiB] and I feel cheated sometimes.
+
+[TiB]: https://en.wikipedia.org/wiki/Byte#Multiple-byte_units.
diff --git a/content/posts/_index.md b/content/posts/_index.md
index 54dd49c..7a11ae0 100644
--- a/content/posts/_index.md
+++ b/content/posts/_index.md
@@ -1,11 +1,8 @@
 ---
-title: Posts
+title: Blog
 lang: en
 translationKey: posts
+categories: [blog]
 ---
 
-Here are some attempts of mine to draw webcomics, or I should say random
-scribbles :)
-
-Transcript of each comic can be found by appending 'transcript.txt' to the
-comic URL.
+Here are my blog posts!
diff --git a/content/til/_index.fr.md b/content/til/_index.fr.md
index 52ef329..c331bf2 100644
--- a/content/til/_index.fr.md
+++ b/content/til/_index.fr.md
@@ -1,5 +1,5 @@
 ---
-title: til
+title: AJA
 translationKey: til
 ---
 
diff --git a/content/til/_index.md b/content/til/_index.md
index 09c6754..f4b57b0 100644
--- a/content/til/_index.md
+++ b/content/til/_index.md
@@ -1,7 +1,8 @@
 ---
-title: til
+title: TIL
 lang: en
 translationKey: til
+categories: [blog]
 ---
 
 These are lists of small tricks or fun trivia I learned.
diff --git a/content/til/vim-jp.fr.md b/content/til/vim-jp.fr.md
index ecbadec..ed86d0f 100644
--- a/content/til/vim-jp.fr.md
+++ b/content/til/vim-jp.fr.md
@@ -1,7 +1,7 @@
 ---
 title: "AJA que on peut écrire le japonais avec vim"
 date: 2021-04-19T17:58:51+07:00
-translationKey: json-output-format
+translationKey: vim-jp
 tags: [vim, japanese, useless, hiragana, katakana]
 ---
 
diff --git a/content/til/vim-jp.md b/content/til/vim-jp.md
index 033611c..5592824 100644
--- a/content/til/vim-jp.md
+++ b/content/til/vim-jp.md
@@ -1,7 +1,7 @@
 ---
 title: "TIL: You can type Hiragana and Katakana on vim"
 date: 2021-04-19T17:58:51+07:00
-translationKey: json-output-format
+translationKey: vim-jp
 tags: [vim, japanese, useless, hiragana, katakana]
 ---