.editorconfig +9
.example.env +6
.github/FUNDING.yml +2
.github/config/exclude.txt +1
.github/dependabot.yml +22
.github/pull_request_template.md +21
.github/workflows/ci.yml +42
.github/workflows/stale.yml +32
.gitignore +26
.nvmrc +1
.prettierignore +8
.prettierrc.js +23
.vscode/extensions.json +4
.vscode/post.code-snippets +46
.vscode/settings.json +22
.zed/settings.json +50
LICENSE +21
README.md +190
astro.config.ts +122
biome.json +83
functions/api/spotify.ts +93
gen_css3.cjs +69
package-lock.json +11779
package.json +84
public/.well-known/atproto-did +1
public/.well-known/discord +1
public/.well-known/hof.txt +22
public/.well-known/security.txt +35
public/DC-Colos.json +2919
public/_redirects +24
public/android-chrome-192x192.png
public/android-chrome-512x512.png
public/apple-touch-icon.png
public/contact.txt +41
public/favicon-16x16.png
public/favicon-32x32.png
public/favicon.svg +8
public/hiirukipub.asc +51
public/humans.txt +45
public/images/hiiruki.svg +257
public/images/hiiruki.webp
public/images/hiirukiv2.svg +146
public/images/profile.webp
public/moon.svg +12
public/pgp.txt +51
public/session.txt +1
public/site.webmanifest +1
public/social-card.png
public/ssh.txt +1
public/sun.svg +10
src/assets/roboto-mono-700.ttf
src/assets/roboto-mono-regular.ttf
src/components/BaseHead.astro +86
src/components/FormattedDate.astro +16
src/components/LastFm.astro +266
src/components/Paginator.astro +29
src/components/Search.astro +162
src/components/SkipLink.astro +3
src/components/SocialList.astro +57
src/components/StatusCards.astro +263
src/components/ThemeProvider.astro +44
src/components/ThemeToggle.astro +90
src/components/blog/Masthead.astro +84
src/components/blog/PostPreview.astro +32
src/components/blog/TOC.astro +51
src/components/blog/TOCHeading.astro +27
src/components/blog/webmentions/Comments.astro +87
src/components/blog/webmentions/Likes.astro +52
src/components/blog/webmentions/index.astro +23
src/components/layout/Footer.astro +727
src/components/layout/Header.astro +103
src/components/note/Note.astro +53
src/components/til/TilPreview.astro +39
src/content.config.ts +72
src/content/note/welcome.md +7
src/content/post/astro-dev-expose-port/index.md +36
src/content/post/bad-font-render-arch-linux/images/cover.gif
src/content/post/bad-font-render-arch-linux/images/discord-before-after.webp
src/content/post/bad-font-render-arch-linux/images/fc-cache.webp
src/content/post/bad-font-render-arch-linux/images/firefox-before-after.webp
src/content/post/bad-font-render-arch-linux/images/firefox-fonts.webp
src/content/post/bad-font-render-arch-linux/images/firefox-settings.webp
src/content/post/bad-font-render-arch-linux/images/install-fonts.webp
src/content/post/bad-font-render-arch-linux/index.md +95
src/content/post/bas-using-infection-monkey/images/attack_diagram.webp
src/content/post/bas-using-infection-monkey/images/cover.webp
src/content/post/bas-using-infection-monkey/images/monkey_components.webp
src/content/post/bas-using-infection-monkey/images/step1-2.webp
src/content/post/bas-using-infection-monkey/images/step1.webp
src/content/post/bas-using-infection-monkey/images/step10.webp
src/content/post/bas-using-infection-monkey/images/step11-2.webp
src/content/post/bas-using-infection-monkey/images/step11.webp
src/content/post/bas-using-infection-monkey/images/step2.webp
src/content/post/bas-using-infection-monkey/images/step3-2.webp
src/content/post/bas-using-infection-monkey/images/step3-3.webp
src/content/post/bas-using-infection-monkey/images/step3.webp
src/content/post/bas-using-infection-monkey/images/step4.webp
src/content/post/bas-using-infection-monkey/images/step5-2.webp
src/content/post/bas-using-infection-monkey/images/step5.webp
src/content/post/bas-using-infection-monkey/images/step6-2.webp
src/content/post/bas-using-infection-monkey/images/step6-3.webp
src/content/post/bas-using-infection-monkey/images/step6-4.webp
src/content/post/bas-using-infection-monkey/images/step6-5.webp
src/content/post/bas-using-infection-monkey/images/step6.webp
src/content/post/bas-using-infection-monkey/images/step7-2.webp
src/content/post/bas-using-infection-monkey/images/step7-3.webp
src/content/post/bas-using-infection-monkey/images/step7.webp
src/content/post/bas-using-infection-monkey/images/step8-2.webp
src/content/post/bas-using-infection-monkey/images/step8.webp
src/content/post/bas-using-infection-monkey/images/step9.webp
src/content/post/bas-using-infection-monkey/index.md +256
src/content/post/centos-qradar-integration/images/step1-2.webp
src/content/post/centos-qradar-integration/images/step1.webp
src/content/post/centos-qradar-integration/images/step10-2.webp
src/content/post/centos-qradar-integration/images/step10.webp
src/content/post/centos-qradar-integration/images/step11-2.webp
src/content/post/centos-qradar-integration/images/step11-3.webp
src/content/post/centos-qradar-integration/images/step11-4.webp
src/content/post/centos-qradar-integration/images/step11-5.webp
src/content/post/centos-qradar-integration/images/step11.webp
src/content/post/centos-qradar-integration/images/step12-2.webp
src/content/post/centos-qradar-integration/images/step12-3.webp
src/content/post/centos-qradar-integration/images/step12.webp
src/content/post/centos-qradar-integration/images/step13-2.webp
src/content/post/centos-qradar-integration/images/step13-3.webp
src/content/post/centos-qradar-integration/images/step13.webp
src/content/post/centos-qradar-integration/images/step14-2.webp
src/content/post/centos-qradar-integration/images/step14.webp
src/content/post/centos-qradar-integration/images/step15-2.webp
src/content/post/centos-qradar-integration/images/step15-3.webp
src/content/post/centos-qradar-integration/images/step15.webp
src/content/post/centos-qradar-integration/images/step16-2.webp
src/content/post/centos-qradar-integration/images/step16-3.webp
src/content/post/centos-qradar-integration/images/step16-4.webp
src/content/post/centos-qradar-integration/images/step16-5.webp
src/content/post/centos-qradar-integration/images/step16.webp
src/content/post/centos-qradar-integration/images/step2.webp
src/content/post/centos-qradar-integration/images/step3.webp
src/content/post/centos-qradar-integration/images/step4.webp
src/content/post/centos-qradar-integration/images/step5-2.webp
src/content/post/centos-qradar-integration/images/step5-3.webp
src/content/post/centos-qradar-integration/images/step5-4.webp
src/content/post/centos-qradar-integration/images/step5.webp
src/content/post/centos-qradar-integration/images/step6.webp
src/content/post/centos-qradar-integration/images/step7.webp
src/content/post/centos-qradar-integration/images/step8-2.webp
src/content/post/centos-qradar-integration/images/step8-3.webp
src/content/post/centos-qradar-integration/images/step8-4.webp
src/content/post/centos-qradar-integration/images/step8-5.webp
src/content/post/centos-qradar-integration/images/step8-6.webp
src/content/post/centos-qradar-integration/images/step8-7.webp
src/content/post/centos-qradar-integration/images/step8-8.webp
src/content/post/centos-qradar-integration/images/step8.webp
src/content/post/centos-qradar-integration/images/step9-2.webp
src/content/post/centos-qradar-integration/images/step9-3.webp
src/content/post/centos-qradar-integration/images/step9.webp
src/content/post/centos-qradar-integration/index.md +309
src/content/post/change-username-linux/images/1.webp
src/content/post/change-username-linux/images/10.webp
src/content/post/change-username-linux/images/11.webp
src/content/post/change-username-linux/images/2.webp
src/content/post/change-username-linux/images/3.webp
src/content/post/change-username-linux/images/4.webp
src/content/post/change-username-linux/images/5.webp
src/content/post/change-username-linux/images/6.webp
src/content/post/change-username-linux/images/7.webp
src/content/post/change-username-linux/images/8.webp
src/content/post/change-username-linux/images/9.webp
src/content/post/change-username-linux/images/cover.webp
src/content/post/change-username-linux/images/file_manager.webp
src/content/post/change-username-linux/index.md +151
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/before_after.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/cover.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/etc-default-grub.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/fastfetch.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/gdm-custom-conf.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/grub-mkconfig.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/mkinitcpio-conf.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/mkinitcpio.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/nvidia_hook.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/pacman_hook.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/images/symlink.webp
src/content/post/enable-wayland-gnome-nvidia-arch-linux/index.md +232
src/content/post/file-icon-test/index.md +76
src/content/post/fix-missing-windows-linux-dualboot/images/after.webp
src/content/post/fix-missing-windows-linux-dualboot/images/before.webp
src/content/post/fix-missing-windows-linux-dualboot/images/cover.webp
src/content/post/fix-missing-windows-linux-dualboot/images/default_grub.webp
src/content/post/fix-missing-windows-linux-dualboot/images/grub-mkconfig.webp
src/content/post/fix-missing-windows-linux-dualboot/index.md +90
src/content/post/hello-world/images/flow.svg +1
src/content/post/hello-world/images/hello-world.gif
src/content/post/hello-world/images/sailor-saturn.webp
src/content/post/hello-world/index.md +63
src/content/post/hugo-link-render-hook/index.md +57
src/content/post/ida-v83-fix-python/images/cover.webp
src/content/post/ida-v83-fix-python/images/ida_version.webp
src/content/post/ida-v83-fix-python/images/idapyswitch.webp
src/content/post/ida-v83-fix-python/images/idapython3_64_dll.webp
src/content/post/ida-v83-fix-python/images/install1.webp
src/content/post/ida-v83-fix-python/images/install2.webp
src/content/post/ida-v83-fix-python/images/install3.webp
src/content/post/ida-v83-fix-python/images/install4.webp
src/content/post/ida-v83-fix-python/images/nah_ida_win.webp
src/content/post/ida-v83-fix-python/images/output_solved.webp
src/content/post/ida-v83-fix-python/images/python3targetdll.webp
src/content/post/ida-v83-fix-python/images/pyversion.webp
src/content/post/ida-v83-fix-python/index.md +87
src/content/post/install-docker-ubuntu/images/apt_cache_policy_docker.webp
src/content/post/install-docker-ubuntu/images/containerize.webp
src/content/post/install-docker-ubuntu/images/cover.webp
src/content/post/install-docker-ubuntu/images/docker_build.webp
src/content/post/install-docker-ubuntu/images/docker_compose_version.webp
src/content/post/install-docker-ubuntu/images/docker_daemon.webp
src/content/post/install-docker-ubuntu/images/docker_non_root.webp
src/content/post/install-docker-ubuntu/images/docker_ps.webp
src/content/post/install-docker-ubuntu/images/docker_run_hello_world.webp
src/content/post/install-docker-ubuntu/images/docker_version.webp
src/content/post/install-docker-ubuntu/images/groups.webp
src/content/post/install-docker-ubuntu/images/web.webp
src/content/post/install-docker-ubuntu/index.md +421
src/content/post/install-oh-my-zsh/images/cover.webp
src/content/post/install-oh-my-zsh/index.md +168
src/content/post/install-rog-control-center-fedora-linux/images/app-settings.webp
src/content/post/install-rog-control-center-fedora-linux/images/asusd-2.webp
src/content/post/install-rog-control-center-fedora-linux/images/asusd.webp
src/content/post/install-rog-control-center-fedora-linux/images/cover.webp
src/content/post/install-rog-control-center-fedora-linux/images/error.webp
src/content/post/install-rog-control-center-fedora-linux/images/fan-curves.webp
src/content/post/install-rog-control-center-fedora-linux/images/keyboard.webp
src/content/post/install-rog-control-center-fedora-linux/images/system.webp
src/content/post/install-rog-control-center-fedora-linux/index.md +129
src/content/post/port-forwarding-ngrok/images/cover.webp
src/content/post/port-forwarding-ngrok/images/step1-2.webp
src/content/post/port-forwarding-ngrok/images/step1.webp
src/content/post/port-forwarding-ngrok/images/step2-2.webp
src/content/post/port-forwarding-ngrok/images/step2.webp
src/content/post/port-forwarding-ngrok/images/step3.webp
src/content/post/port-forwarding-ngrok/images/step4.webp
src/content/post/port-forwarding-ngrok/images/step5.webp
src/content/post/port-forwarding-ngrok/images/step6.webp
src/content/post/port-forwarding-ngrok/index.md +111
src/content/post/qradar-setup-vmware/images/step1.webp
src/content/post/qradar-setup-vmware/images/step10.webp
src/content/post/qradar-setup-vmware/images/step11-2.webp
src/content/post/qradar-setup-vmware/images/step11-3.webp
src/content/post/qradar-setup-vmware/images/step11-4.webp
src/content/post/qradar-setup-vmware/images/step11-5.webp
src/content/post/qradar-setup-vmware/images/step11.webp
src/content/post/qradar-setup-vmware/images/step12-2.webp
src/content/post/qradar-setup-vmware/images/step12.webp
src/content/post/qradar-setup-vmware/images/step13-2.webp
src/content/post/qradar-setup-vmware/images/step13-3.webp
src/content/post/qradar-setup-vmware/images/step13.webp
src/content/post/qradar-setup-vmware/images/step14.webp
src/content/post/qradar-setup-vmware/images/step15.webp
src/content/post/qradar-setup-vmware/images/step16-2.webp
src/content/post/qradar-setup-vmware/images/step16-3.webp
src/content/post/qradar-setup-vmware/images/step16-4.webp
src/content/post/qradar-setup-vmware/images/step16.webp
src/content/post/qradar-setup-vmware/images/step17-2.webp
src/content/post/qradar-setup-vmware/images/step17-3.webp
src/content/post/qradar-setup-vmware/images/step17.webp
src/content/post/qradar-setup-vmware/images/step18.webp
src/content/post/qradar-setup-vmware/images/step19.webp
src/content/post/qradar-setup-vmware/images/step2.webp
src/content/post/qradar-setup-vmware/images/step20-2.webp
src/content/post/qradar-setup-vmware/images/step20-3.webp
src/content/post/qradar-setup-vmware/images/step20-4.webp
src/content/post/qradar-setup-vmware/images/step20-5.webp
src/content/post/qradar-setup-vmware/images/step20.webp
src/content/post/qradar-setup-vmware/images/step21.webp
src/content/post/qradar-setup-vmware/images/step22-2.webp
src/content/post/qradar-setup-vmware/images/step22.webp
src/content/post/qradar-setup-vmware/images/step23-2.webp
src/content/post/qradar-setup-vmware/images/step23-3.webp
src/content/post/qradar-setup-vmware/images/step23.webp
src/content/post/qradar-setup-vmware/images/step24-2.webp
src/content/post/qradar-setup-vmware/images/step24-3.webp
src/content/post/qradar-setup-vmware/images/step24-4.webp
src/content/post/qradar-setup-vmware/images/step24-5.webp
src/content/post/qradar-setup-vmware/images/step24-6.webp
src/content/post/qradar-setup-vmware/images/step24.webp
src/content/post/qradar-setup-vmware/images/step25-2.webp
src/content/post/qradar-setup-vmware/images/step25.webp
src/content/post/qradar-setup-vmware/images/step26-2.webp
src/content/post/qradar-setup-vmware/images/step26.webp
src/content/post/qradar-setup-vmware/images/step3.webp
src/content/post/qradar-setup-vmware/images/step4.webp
src/content/post/qradar-setup-vmware/images/step5.webp
src/content/post/qradar-setup-vmware/images/step6.webp
src/content/post/qradar-setup-vmware/images/step7.webp
src/content/post/qradar-setup-vmware/images/step8.webp
src/content/post/qradar-setup-vmware/images/step9.webp
src/content/post/qradar-setup-vmware/index.md +367
src/content/post/qradar-system-time/images/step1-2.webp
src/content/post/qradar-system-time/images/step1-3.webp
src/content/post/qradar-system-time/images/step1.webp
src/content/post/qradar-system-time/images/step2.webp
src/content/post/qradar-system-time/images/step3.webp
src/content/post/qradar-system-time/images/step4.webp
src/content/post/qradar-system-time/images/step5.webp
src/content/post/qradar-system-time/images/step6.webp
src/content/post/qradar-system-time/images/step7-2.webp
src/content/post/qradar-system-time/images/step7-3.webp
src/content/post/qradar-system-time/images/step7-4.webp
src/content/post/qradar-system-time/images/step7.webp
src/content/post/qradar-system-time/index.md +97
src/content/post/sdrsharp-no-device/images/configure-rtl-sdr-device.webp
src/content/post/sdrsharp-no-device/images/copy-rtlsdr-dll.webp
src/content/post/sdrsharp-no-device/images/cover.webp
src/content/post/sdrsharp-no-device/images/device.webp
src/content/post/sdrsharp-no-device/images/start-sdrsharp.webp
src/content/post/sdrsharp-no-device/index.md +54
src/content/post/setup-zoom-linux-wayland/images/VirtualBkgnd_Custom.webp
src/content/post/setup-zoom-linux-wayland/images/VirtualBkgnd_Custom_2.webp
src/content/post/setup-zoom-linux-wayland/images/VirtualBkgnd_Custom_3.webp
src/content/post/setup-zoom-linux-wayland/images/cover.webp
src/content/post/setup-zoom-linux-wayland/images/screenshare_wayland.webp
src/content/post/setup-zoom-linux-wayland/images/zoomus_conf.webp
src/content/post/setup-zoom-linux-wayland/index.md +77
src/content/post/social-image.md +22
src/content/post/webmentions.md +66
src/content/post/zsh-antidote-starship/images/1.webp
src/content/post/zsh-antidote-starship/images/2.webp
src/content/post/zsh-antidote-starship/images/3.webp
src/content/post/zsh-antidote-starship/images/4.webp
src/content/post/zsh-antidote-starship/images/5.webp
src/content/post/zsh-antidote-starship/images/6.webp
src/content/post/zsh-antidote-starship/images/7.webp
src/content/post/zsh-antidote-starship/images/cover.webp
src/content/post/zsh-antidote-starship/index.md +233
src/content/tag/image.md +7
src/content/tag/markdown.md +8
src/content/tag/test.md +15
src/content/til/first-til.md +12
src/data/post.ts +56
src/data/til.ts +22
src/env.d.ts +5
src/layouts/Base.astro +54
src/layouts/BlogPost.astro +80
src/pages/404.astro +13
src/pages/about.astro +283
src/pages/disclaimer.astro +23
src/pages/index.astro +113
src/pages/notes/[...page].astro +63
src/pages/notes/[...slug].astro +30
src/pages/notes/rss.xml.ts +18
src/pages/og-image/[...slug].png.ts +90
src/pages/posts/[...page].astro +143
src/pages/posts/[...slug].astro +24
src/pages/privacy.astro +113
src/pages/rss.xml.ts +19
src/pages/tags/[tag]/[...page].astro +79
src/pages/tags/index.astro +34
src/pages/til/[...page].astro +116
src/pages/til/[...slug].astro +58
src/pages/til/tags/[tag]/[...page].astro +80
src/pages/til/tags/index.astro +34
src/pages/uses.astro +98
src/pages/work/collega/25th.png
src/pages/work/collega/collega-logo.png
src/pages/work/collega/collega-telkom-logo.png
src/pages/work/hit-digital/hit-logo.png
src/pages/work/index.astro +217
src/plugins/remark-admonitions.ts +82
src/plugins/remark-github-card.ts +146
src/plugins/remark-reading-time.ts +11
src/site.config.ts +114
src/styles/blocks/search.css +75
src/styles/components/admonition.css +65
src/styles/components/github-card.css +79
src/styles/global.css +243
src/types.ts +83
src/utils/date.ts +23
src/utils/domElement.ts +11
src/utils/generateToc.ts +37
src/utils/remark.ts +23
src/utils/webmentions.ts +115
tailwind.config.ts +143
tsconfig.json +11
wrangler.toml +9