summaryrefslogtreecommitdiff
path: root/plan.yml
blob: bc4fd62392534210229c1753afdc84d4281c7289 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
tags:
  docs: |
    I'm working to improve documentation for GNU/Linux, but more than
    that I'm working to improve the forms of documentation that more
    skilled technical writers might be afraid or incapable of working
    on: `--help` text, generated documentation, and auditing
    documentation against the source code to make sure that it is
    accurate and complete.
  GI: |
    "GObject Introspection" (which is a terrible name for what it is,
    btw) is a cross-(language-runtime) object system.  GObject was an
    object system for C that game out of GTK+, and then GObject
    Introspection was created as a way to specify the ABI for working
    with an object, so that GObjects could be used from other
    languages.  I think that GObject Introspection is a really cool
    technology that can be the basis of reducing friction between
    languages, but it needs better/more-ubiquitous tooling.
  ARM: |
    Not that folks can't use GNU/Linux on ARM (obviously, the
    Raspberry Pi has been a huge success), but there's still a lot
    more friction to using GNU/Linux on ARM compared to x86.  I'm
    working on that.

contributions:
  - urls: [https://github.com/flori/json/pull/567]
    tags: [Ruby, JSON, SoftwareFreedom]
    desc: |
      Ruby's standard JSON Gem (which comes bundled with the core Ruby
      distribution!) contains code that is not Free under the FSF's
      definition, not Open Source under the OSI's definition, and not
      GPL-compatible.  This has coused much consternation among folks
      who care about any of those 3 things.

      This PR replaces that non-Free code with Free code, removing
      friction for Ruby users on GNU/Linux distros that care about
      those 3 things.
  - urls: [https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio/-/merge_requests/328]
    tags: [mkinitcpip, ARM]
    sponsored-by: Umorpha Systems
    desc: |
      The `mkinitcpio` tool generates init-ramdisk images to boot
      GNU/Linux systems.  To do that it needs to know the version
      number of the Linux kernel that it is generating an image for;
      the normal way that it knows this is to sniff the version number
      from the kernel file.  However, it fails to sniff the version
      number from ARM zImage kernels, which means that Arch Linux ARM
      and Parabola for ARM need to resort to hacks to get mkinitcpio
      to work right.

      This PR removes that friction by teaching mkinitcpio to
      understand ARM zImage files.
  - urls: [https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio/-/merge_requests/277]
    tags: [mkinitcpio, SecureBoot]
    sponsored-by: Umorpha Systems
    desc: |
      One of the things going on in the secure-boot world is moving
      toward "Unified Kernel Images" (UKI), which are when the kernel
      and the init-ramdisk are bundled together into a single file to
      reduce the risk of a compromised init-ramdisk being able to
      compromise a secured kernel.  The `mkinitcpio` tool generates
      init-ramdisk images, and this PR reduces friction when using
      `mkinitcpio` to generate them as UKI.
  - urls:
      - https://mailman.astron.com/pipermail/file/2024-April/001335.html
      - https://github.com/file/file/commit/cf139abf35d07ebfd0c3edcab2fc400a211c0fbb
    tags: [file, ARM]
    desc: |
      The `file` tool sniffs a file to tell you about the file's
      format.  This PR improves its ability to detect information
      about Linux kernel ARM zImage files.
  - urls:
      - https://mailman.astron.com/pipermail/file/2024-March/001327.html
      - https://github.com/file/file/commit/3b92878ee277a6b6c0a37429e9edf5e5b55fcdd4
    tags: [file, docs]
    desc: |
      The `file` tool sniffs a file to tell you about the file's
      format.  To do this, it reads a "magic" file that describes the
      magic numbers that it might see in a file.  This PR fixes a
      mistake in the `magic(5)` manual for writing such files.
  - urls: [https://github.com/diamondburned/gotk4/pull/140]
    tags: [Go, GI, docs]
    desc: |
      gotk4 is a project that burries the lede: yes, it is a set of Go
      bindings to GTK 4.0.  But (IMO) more interestingly,
      `./gir/cmd/gir-generate` is a tool for generating Go bindings to
      GObject Introspection (GI) libraries from the `.gir` files
      describing the library.  I'm working to improve that tool.

      In particular, the not-quite-markdown format that `.gir` files
      use for documentation is under-specified and hard to parse.
      Right now I'm focusing on how to handle that, so that we can
      have top-notch language-specific documentation for GI libraries.

      This PR is laying the groundwork for the new parser.
  - urls:
    - https://lists.ozlabs.org/pipermail/linux-erofs/2023-November/009765.html
    - https://github.com/erofs/erofs-utils/commit/f528b82ffbcb15484a7195c1a1d08ece0ff67350
    - https://github.com/erofs/erofs-utils/commit/197e3294bcdf93f37d12989cd830a33c055b1a53
    - https://github.com/erofs/erofs-utils/commit/f97311883337eb7e0ded55e60995e6599eba73e5
    tags: [EroFS, docs]
    sponsored-by: Umorpha Systems
    desc: |
      EroFS is the Enhanced Read-Only File System, a successor to
      SquashFS.  This patchset improves the `--help` documentation and
      man-pages the EroFS userspace tools, and reduces friction by
      having `fsck.erofs` accept common command line flags that fsck
      implementions for other filesystems take.