diff options
| author | Yuqian Yang <crupest@crupest.life> | 2025-04-01 23:44:50 +0800 | 
|---|---|---|
| committer | Yuqian Yang <crupest@crupest.life> | 2025-04-02 19:00:58 +0800 | 
| commit | b2d2e2870660ae64358e7effcad1bb7e0c5dc998 (patch) | |
| tree | 8e3eb0fb6c56cb81522701b8256777a098298212 | |
| parent | a985d6bb3ee26db6444702c3c0c8bff53ba46824 (diff) | |
| download | crupest-b2d2e2870660ae64358e7effcad1bb7e0c5dc998.tar.gz crupest-b2d2e2870660ae64358e7effcad1bb7e0c5dc998.tar.bz2 crupest-b2d2e2870660ae64358e7effcad1bb7e0c5dc998.zip | |
feat(www): update.
| -rw-r--r-- | store/home/config/nvim/lua/setup/plugins/telescope.lua | 19 | ||||
| -rw-r--r-- | www/assets/res/css/todos.css | 20 | ||||
| -rw-r--r-- | www/content/notes/_index.md | 5 | ||||
| -rw-r--r-- | www/content/notes/cheat-sheet/_index.md | 11 | ||||
| -rw-r--r-- | www/content/notes/cheat-sheet/index.md | 14 | ||||
| -rw-r--r-- | www/content/notes/hurd/_index.md | 178 | ||||
| -rw-r--r-- | www/content/notes/hurd/index.md | 119 | ||||
| -rw-r--r-- | www/content/notes/hurd/todos.md | 14 | ||||
| -rw-r--r-- | www/content/posts/_index.md (renamed from www/content/posts/_index.html) | 0 | ||||
| -rw-r--r-- | www/content/posts/c-func-ext.md | 64 | ||||
| -rw-r--r-- | www/layouts/_default/list.html | 11 | ||||
| -rw-r--r-- | www/layouts/index.html | 2 | ||||
| -rw-r--r-- | www/layouts/shortcodes/todo.html | 6 | 
13 files changed, 235 insertions, 228 deletions
| diff --git a/store/home/config/nvim/lua/setup/plugins/telescope.lua b/store/home/config/nvim/lua/setup/plugins/telescope.lua index d68b7f2..69a69c0 100644 --- a/store/home/config/nvim/lua/setup/plugins/telescope.lua +++ b/store/home/config/nvim/lua/setup/plugins/telescope.lua @@ -1,9 +1,26 @@  local function setup()      local builtin = require('telescope.builtin') -    vim.keymap.set('n', '<leader>ff', builtin.find_files, {}) +    vim.keymap.set('n', '<leader>/', builtin.live_grep, {})      vim.keymap.set('n', '<leader>fg', builtin.live_grep, {}) +    vim.keymap.set('n', '<leader>ff', builtin.find_files, {})      vim.keymap.set('n', '<leader>fb', builtin.buffers, {})      vim.keymap.set('n', '<leader>fh', builtin.help_tags, {}) +    vim.keymap.set('n', '<leader>fr', builtin.registers, {}) +    vim.keymap.set('n', '<leader>fq', builtin.quickfixhistory, {}) +    vim.keymap.set('n', '<leader>fm', builtin.marks, {}) +    vim.keymap.set('n', '<leader>fd', builtin.diagnostics, {}) +    vim.keymap.set('n', '<leader>fs', builtin.lsp_workspace_symbols, {}) + +    local function all_files(opts) +        opts = vim.tbl_extend('force', { +            hidden = true, +            no_ignore = true, +            no_ignore_parent = true, +        }, opts or {}) +        builtin.find_files(opts) +    end + +    vim.keymap.set('n', '<leader>fa', all_files, {})  end  return { diff --git a/www/assets/res/css/todos.css b/www/assets/res/css/todos.css index e9a595d..7802812 100644 --- a/www/assets/res/css/todos.css +++ b/www/assets/res/css/todos.css @@ -1,14 +1,24 @@  .todo { - -  &::before { +  h3::before {      font-family: monospace;    } -  &.working::before { +  &.working h3::before {      content: "* ";    } -  &.done::before { +  &.done h3::before {      content: "✓ ";    } -}
\ No newline at end of file + +  &.give-up  { +    &, a:link, a:visited { +      color: grey; +    } + +    h3:before { +      content: "orz ✖ "; +    } +  } +} + diff --git a/www/content/notes/_index.md b/www/content/notes/_index.md new file mode 100644 index 0000000..3c736ed --- /dev/null +++ b/www/content/notes/_index.md @@ -0,0 +1,5 @@ +--- +title: "Notes" +params: +  recursive: true +--- diff --git a/www/content/notes/cheat-sheet/_index.md b/www/content/notes/cheat-sheet/_index.md index f379f0b..ff72c3d 100644 --- a/www/content/notes/cheat-sheet/_index.md +++ b/www/content/notes/cheat-sheet/_index.md @@ -1,15 +1,4 @@  ---  title: "Cheat Sheet" -date: 2025-04-01T23:09:53+08:00 -lastmod: 2025-04-01T23:09:53+08:00 -layout: single  --- -Update GRUB after `grub` package is updated. Replace `/boot` with your mount -point of the EFI partition in `--efi-directory=/boot`. Replace `GRUB` with your -bootloader id in `--bootloader-id=GRUB`. - -```bash-session -grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB -grub-mkconfig -o /boot/grub/grub.cfg -``` diff --git a/www/content/notes/cheat-sheet/index.md b/www/content/notes/cheat-sheet/index.md new file mode 100644 index 0000000..efb3b35 --- /dev/null +++ b/www/content/notes/cheat-sheet/index.md @@ -0,0 +1,14 @@ +--- +title: "Cheat Sheet" +date: 2025-04-01T23:09:53+08:00 +lastmod: 2025-04-01T23:09:53+08:00 +--- + +Update GRUB after `grub` package is updated. Replace `/boot` with your mount +point of the EFI partition in `--efi-directory=/boot`. Replace `GRUB` with your +bootloader id in `--bootloader-id=GRUB`. + +```bash-session +grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB +grub-mkconfig -o /boot/grub/grub.cfg +``` diff --git a/www/content/notes/hurd/_index.md b/www/content/notes/hurd/_index.md index 86b062a..3c031e1 100644 --- a/www/content/notes/hurd/_index.md +++ b/www/content/notes/hurd/_index.md @@ -1,182 +1,4 @@  ---  title: "Hurd" -date: 2025-03-03T15:34:41+08:00 -lastmod: 2025-03-03T23:28:46+08:00 -layout: single  --- -{{< mono >}} - -[TODOS](/notes/hurd/todos) - -{{< /mono >}} - -## links - -{{< mono >}} - -| name | link | -| --- | --- | -| kernel-list-archive | <https://lists.gnu.org/archive/html/bug-hurd/> | -| debian-list-archive | <https://lists.debian.org/debian-hurd/> | -| irc-archive | <https://logs.guix.gnu.org/hurd/> | -| kernel-home | <https://www.gnu.org/software/hurd/index.html> | -| debian-home | <https://www.debian.org/ports/hurd/> | - -{{< /mono >}} - -refs: - -{{< mono >}} - -| name | link | -| --- | --- | -| c | <https://en.cppreference.com/w/c> | -| posix latest | <https://pubs.opengroup.org/onlinepubs/9799919799/> | -| posix 2013 | <https://pubs.opengroup.org/onlinepubs/9699919799.2013edition/> | -| posix 2008 | <https://pubs.opengroup.org/onlinepubs/9699919799.2008edition/> | -| glibc | <https://sourceware.org/glibc/manual/2.41/html_mono/libc.html> | - -{{< /mono >}} - -## *_MAX patch - -TODO: Move to separate page. - -```c -#include <errno.h> -#include <stdlib.h> -#include <unistd.h> - -static inline char *xreadlink(const char *restrict path) { -  char *buffer; -  size_t allocated = 128; -  ssize_t len; - -  while (1) { -    buffer = (char *)malloc(allocated); -    if (!buffer) { -      return NULL; -    } -    len = readlink(path, buffer, allocated); -    if (len < (ssize_t)allocated) { -      return buffer; -    } -    free(buffer); -    if (len >= (ssize_t)allocated) { -      allocated *= 2; -      continue; -    } -    return NULL; -  } -} - -static inline char *xgethostname() { -  long max_host_name; -  char *buffer; - -  max_host_name = sysconf(_SC_HOST_NAME_MAX); -  buffer = malloc(max_host_name + 1); - -  if (gethostname(buffer, max_host_name + 1)) { -    free(buffer); -    return NULL; -  } - -  buffer[max_host_name] = '\0'; -  return buffer; -} - -static inline char *xgetcwd() { -  char *buffer; -  size_t allocated = 128; - -  while (1) { -    buffer = (char *)malloc(allocated); -    if (!buffer) { -      return NULL; -    } -    getcwd(buffer, allocated); -    if (buffer) -      return buffer; -    free(buffer); -    if (errno == ERANGE) { -      allocated *= 2; -      continue; -    } -    return NULL; -  } -} -``` - -## git repos - -{{< link-group >}} -hurd -cru: <https://crupest.life/git/cru-hurd/hurd.git> -upstream: <https://git.savannah.gnu.org/git/hurd/hurd.git> -debian: <https://salsa.debian.org/hurd-team/hurd> -{{< /link-group >}} - -{{< link-group >}} -gnumach -cru: <https://crupest.life/git/cru-hurd/gnumach.git> -upstream: <https://git.savannah.gnu.org/git/hurd/gnumach.git> -debian: <https://salsa.debian.org/hurd-team/gnumach> -{{< /link-group >}} - -{{< link-group >}} -mig -cru: <https://crupest.life/git/cru-hurd/mig.git> -upstream: <https://git.savannah.gnu.org/git/hurd/mig.git> -debian: <https://salsa.debian.org/hurd-team/mig> -{{< /link-group >}} - -{{< link-group >}} -glibc -cru: <https://crupest.life/git/cru-hurd/glibc.git> -upstream: <git://sourceware.org/git/glibc.git> -debian: <https://salsa.debian.org/glibc-team/glibc> -mirror: <https://mirrors.tuna.tsinghua.edu.cn/git/glibc.git> -{{< /link-group >}} - -{{< link-group >}} -web -cru: <https://crupest.life/git/cru-hurd/web.git> -upstream: <https://git.savannah.gnu.org/git/hurd/web.git> -{{< /link-group >}} - -## cheatsheet - -Start qemu - -```sh -qemu-system-x86_64 -enable-kvm -m 4G -net nic -net user,hostfwd=tcp::3222-:22 -vga vmware -drive cache=writeback,file=[...] -``` - -Configure/Setup network - -```sh -settrans -fgap /servers/socket/2 /hurd/pfinet -i /dev/eth0 -a 10.0.2.15 -g 10.0.2.2 -m 255.255.255.0 -fsysopts /servers/socket/2 /hurd/pfinet -i /dev/eth0 -a 10.0.2.15 -g 10.0.2.2 -m 255.255.255.0 -fsysopts /server/socket/2 -a 10.0.2.15 -g 10.0.2.2 -m 255.255.255.0 -``` - -Setup apt - -```sh -apt-get --allow-unauthenticated --allow-insecure-repositories update -apt-get --allow-unauthenticated upgrade -``` - -## mailing lists / irc - -{{< mono >}} - -| name | address | -| --- | --- | -| hurd | <bug-hurd@gnu.org> | -| debian | <debian-hurd@lists.debian.org> | -| irc | librechat #hurd | - -{{< /mono >}} diff --git a/www/content/notes/hurd/index.md b/www/content/notes/hurd/index.md new file mode 100644 index 0000000..c48ed86 --- /dev/null +++ b/www/content/notes/hurd/index.md @@ -0,0 +1,119 @@ +--- +title: "Hurd" +date: 2025-03-03T15:34:41+08:00 +lastmod: 2025-03-03T23:28:46+08:00 +--- + +{{< mono >}} + +[TODOS](/notes/hurd/todos) + +{{< /mono >}} + +## links + +{{< mono >}} + +| name | link | +| --- | --- | +| kernel-list-archive | <https://lists.gnu.org/archive/html/bug-hurd/> | +| debian-list-archive | <https://lists.debian.org/debian-hurd/> | +| irc-archive | <https://logs.guix.gnu.org/hurd/> | +| kernel-home | <https://www.gnu.org/software/hurd/index.html> | +| debian-home | <https://www.debian.org/ports/hurd/> | + +{{< /mono >}} + +refs: + +{{< mono >}} + +| name | link | +| --- | --- | +| c | <https://en.cppreference.com/w/c> | +| posix latest | <https://pubs.opengroup.org/onlinepubs/9799919799/> | +| posix 2013 | <https://pubs.opengroup.org/onlinepubs/9699919799.2013edition/> | +| posix 2008 | <https://pubs.opengroup.org/onlinepubs/9699919799.2008edition/> | +| glibc | <https://sourceware.org/glibc/manual/2.41/html_mono/libc.html> | + +{{< /mono >}} + +## *_MAX patch + +See [this](posts/c-func-ext.md) + +## git repos + +{{< link-group >}} +hurd +cru: <https://crupest.life/git/cru-hurd/hurd.git> +upstream: <https://git.savannah.gnu.org/git/hurd/hurd.git> +debian: <https://salsa.debian.org/hurd-team/hurd> +{{< /link-group >}} + +{{< link-group >}} +gnumach +cru: <https://crupest.life/git/cru-hurd/gnumach.git> +upstream: <https://git.savannah.gnu.org/git/hurd/gnumach.git> +debian: <https://salsa.debian.org/hurd-team/gnumach> +{{< /link-group >}} + +{{< link-group >}} +mig +cru: <https://crupest.life/git/cru-hurd/mig.git> +upstream: <https://git.savannah.gnu.org/git/hurd/mig.git> +debian: <https://salsa.debian.org/hurd-team/mig> +{{< /link-group >}} + +{{< link-group >}} +glibc +cru: <https://crupest.life/git/cru-hurd/glibc.git> +upstream: <git://sourceware.org/git/glibc.git> +debian: <https://salsa.debian.org/glibc-team/glibc> +mirror: <https://mirrors.tuna.tsinghua.edu.cn/git/glibc.git> +{{< /link-group >}} + +{{< link-group >}} +web +cru: <https://crupest.life/git/cru-hurd/web.git> +upstream: <https://git.savannah.gnu.org/git/hurd/web.git> +{{< /link-group >}} + +## cheatsheet + +Start qemu + +```sh +qemu-system-x86_64 -enable-kvm -m 4G \ +  -net nic -net user,hostfwd=tcp::3222-:22 \ +  -vga vmware -drive cache=writeback,file=[...] +``` + +Configure/Setup network + +```sh +settrans -fgap /servers/socket/2 /hurd/pfinet \ +  -i /dev/eth0 -a 10.0.2.15 -g 10.0.2.2 -m 255.255.255.0 +fsysopts /servers/socket/2 /hurd/pfinet \ +  -i /dev/eth0 -a 10.0.2.15 -g 10.0.2.2 -m 255.255.255.0 +fsysopts /server/socket/2 -a 10.0.2.15 -g 10.0.2.2 -m 255.255.255.0 +``` + +Setup apt + +```sh +apt-get --allow-unauthenticated --allow-insecure-repositories update +apt-get --allow-unauthenticated upgrade +``` + +## mailing lists / irc + +{{< mono >}} + +| name | address | +| --- | --- | +| hurd | <bug-hurd@gnu.org> | +| debian | <debian-hurd@lists.debian.org> | +| irc | librechat #hurd | + +{{< /mono >}} diff --git a/www/content/notes/hurd/todos.md b/www/content/notes/hurd/todos.md index f8273fb..cd93f01 100644 --- a/www/content/notes/hurd/todos.md +++ b/www/content/notes/hurd/todos.md @@ -9,7 +9,7 @@ params:  ## Porting -### {{< todo name=pam state=working >}} +{{< todo name=pam state=give-up >}}  {{< link-group >}}  git @@ -23,7 +23,9 @@ mail  <https://lists.debian.org/debian-hurd/2025/02/msg00018.html>  {{< /link-group >}} -### {{< todo name=abseil state=working >}} +{{< /todo >}} + +{{< todo name=abseil state=working >}}  {{< link-group >}}  git @@ -38,7 +40,9 @@ mail  <https://lists.debian.org/debian-hurd/2025/02/msg00035.html>  {{< /link-group >}} -### {{< todo name=libgav1 state=done >}} +{{< /todo >}} + +{{< todo name=libgav1 state=done >}}  {{< link-group >}}  git @@ -52,3 +56,7 @@ misc  mail: <https://lists.debian.org/debian-hurd/2025/02/msg00016.html>  gerrit: <https://chromium-review.googlesource.com/c/codecs/libgav1/+/6239812>  {{< /link-group >}} + +{{< /todo >}} + + diff --git a/www/content/posts/_index.html b/www/content/posts/_index.md index 76fa783..76fa783 100644 --- a/www/content/posts/_index.html +++ b/www/content/posts/_index.md diff --git a/www/content/posts/c-func-ext.md b/www/content/posts/c-func-ext.md index f0fce10..7106fad 100644 --- a/www/content/posts/c-func-ext.md +++ b/www/content/posts/c-func-ext.md @@ -19,9 +19,11 @@ reusable code snippets here to help *fix `*_MAX` bugs*.  <!--more-->  ```c -#include <errno.h>  #include <stdlib.h> +#include <stdarg.h>  #include <unistd.h> +#include <stdio.h> +#include <errno.h>  static inline char *xreadlink(const char *restrict path) {    char *buffer; @@ -29,24 +31,18 @@ static inline char *xreadlink(const char *restrict path) {    ssize_t len;    while (1) { -    buffer = (char *)malloc(allocated); -    if (!buffer) { -      return NULL; -    } +    buffer = (char*) malloc(allocated); +    if (!buffer) { return NULL; }      len = readlink(path, buffer, allocated); -    if (len < (ssize_t)allocated) { -      return buffer; -    } +    if (len < (ssize_t) allocated) { return buffer; }      free(buffer); -    if (len >= (ssize_t)allocated) { -      allocated *= 2; -      continue; -    } +    if (len >= (ssize_t) allocated) { allocated *= 2; continue; }      return NULL;    } -} + } + -static inline char *xgethostname() { +static inline char *xgethostname(void) {    long max_host_name;    char *buffer; @@ -62,24 +58,42 @@ static inline char *xgethostname() {    return buffer;  } -static inline char *xgetcwd() { +static inline char *xgetcwd(void) {    char *buffer;    size_t allocated = 128;    while (1) { -    buffer = (char *)malloc(allocated); -    if (!buffer) { -      return NULL; -    } +    buffer = (char*) malloc(allocated); +    if (!buffer) { return NULL; }      getcwd(buffer, allocated); -    if (buffer) -      return buffer; +    if (buffer) return buffer;      free(buffer); -    if (errno == ERANGE) { -      allocated *= 2; -      continue; -    } +    if (errno == ERANGE) { allocated *= 2; continue; }      return NULL;    }  } + +static inline __attribute__((__format__(__printf__, 2, 3))) int +xsprintf(char **buf_ptr, const char *restrict format, ...) { +  char *buffer; +  int ret; + +  va_list args; +  va_start(args, format); + +  ret = snprintf(NULL, 0,  format, args); +  if (ret < 0) { goto out; } + +  buffer = malloc(ret + 1); +  if (!buffer) { ret = -1; goto out; } + +  ret = snprintf(NULL, 0,  format, args); +  if (ret < 0) { free(buffer); goto out; } + +  *buf_ptr = buffer; + +out: +  va_end(args); +  return ret; +}  ``` diff --git a/www/layouts/_default/list.html b/www/layouts/_default/list.html index c7c6cce..5bb0b5e 100644 --- a/www/layouts/_default/list.html +++ b/www/layouts/_default/list.html @@ -4,9 +4,14 @@  {{ define "content" }}    {{ partial "nav.html" . }} -  <h1>Posts</h1> +  <h1>{{ .Title }}</h1> +  {{ $pages := .RegularPages }} +  {{ if .Param "recursive" }} +    {{ $pages = .RegularPagesRecursive }} +  {{ end }}    {{ partial "preview/posts.html" (dict -    "h" "h3" -    "pages" (.RegularPages.ByDate.Reverse.Limit 3)) +      "h" "h3" +      "pages" $pages +    )    }}  {{ end }} diff --git a/www/layouts/index.html b/www/layouts/index.html index f456e71..e05af03 100644 --- a/www/layouts/index.html +++ b/www/layouts/index.html @@ -33,7 +33,7 @@        anything to me.      </p>      <div id="links" class="mono-link"> -      jump-to: +      goto:        <ul>          <li><a href="{{ absURL "/git/" }}">git</a></li>          {{ with .GetPage "/notes/hurd" }} diff --git a/www/layouts/shortcodes/todo.html b/www/layouts/shortcodes/todo.html index 1327b31..b4fc680 100644 --- a/www/layouts/shortcodes/todo.html +++ b/www/layouts/shortcodes/todo.html @@ -1 +1,5 @@ -<span class="todo {{ .Get "state" }}">{{ .Get "name" }}</span>
\ No newline at end of file +<section class="todo {{ .Get "state" }}"> +  <h3>{{ .Get "name" }}</h3> +  {{ .Inner }} +</section> + | 
