feat: rewrite jspassmenu and audiomenu in Python #489

Merged
jalil merged 2 commits from push-klyoqssmruyz into main 2025-05-17 18:04:18 +02:00
Owner

Closes #487

No build step and smaller size (since the python interpreter is almost certainly already in the system)

Closes #487 No build step and smaller size (since the python interpreter is almost certainly already in the system)
jalil added the
enhancement
label 2025-05-17 13:47:49 +02:00
jalil self-assigned this 2025-05-17 13:47:49 +02:00
jalil added 1 commit 2025-05-17 13:47:50 +02:00
feat: replace jpassmenu with a python version
Some checks failed
/ check (push) Successful in 9s
/ build-packages (push) Failing after 15s
/ build-vm (push) Has been skipped
/ report-size (push) Has been skipped
0e170dd365
There is no reason for it to be a Rust program
jalil force-pushed push-klyoqssmruyz from 0e170dd365 to 1fdbf8af97 2025-05-17 13:52:40 +02:00 Compare

Flake output sizes

Definitions
  • Name: the name of the package/configuration.
  • Size: the closure size (size on disk/NAR size + all transitive dependencies).
  • NAR Size: the size of the build output (package without the dependencies).
  • [NAR] Size Change: the amount changed compared to the main branch.
Tips on reading this data
  • For NixOS configurations you generally care only about the Size (closure size/size on disk).
    • Reduce the Size by disabling unneeded services/default packages.
  • For Packages you care about both the Size and the NAR Size.
    • Reduce the NAR Size by reducing the size of the build outputs, e.g. don't copy unnecessary data to the $out dir, optimize binaries for size, etc.
    • Reduce the Size by reducing the dependencies (e.g. buildInputs).
    • Don't worry too much about size, some dependencies are deduplicated, e.g. glibc adds ~40MiB to the Size, but is generally shared by ~every binary on the system, so, chances are, you are already including it from somewhere else and statically linking with e.g. musl is not gonna improve things.

NixOS Configurations

Name Size Size Change NAR Size NAR Size Change
vm 9.8GiB -2.2MiB 19KiB 0B

Packages

Name Size Size Change NAR Size NAR Size Change
audiomenu 169MiB 128MiB 184B -1.4MiB
docs 3.1MiB 0B 3.1MiB 0B
docs-home-markdown 11KiB 0B 11KiB 0B
docs-nixos-markdown 6.5KiB 0B 6.5KiB 0B
docs-nvim-markdown 2.4KiB 0B 2.4KiB 0B
jpassmenu 169MiB 127MiB 184B -2.3MiB
nvim 1.6GiB 0B 626KiB 0B
nvim-headless 439MiB 0B 626KiB 0B
nvim-no-lsps 766MiB 0B 626KiB 0B
nvim-no-ts 1.3GiB 0B 626KiB 0B
nvim-small 1007MiB 0B 626KiB 0B
search 727KiB 0B 9.0KiB 0B
<!-- AUTOGENERATED by nix-flake-outputs-size action --> ## Flake output sizes <details><summary><b>Definitions</b></summary> - `Name`: the name of the package/configuration. - `Size`: the closure size (size on disk/NAR size + all transitive dependencies). - `NAR Size`: the size of the build output (package without the dependencies). - `[NAR] Size Change`: the amount changed compared to the main branch. </details> <details><summary><b>Tips on reading this data</b></summary> - For NixOS configurations you generally care only about the `Size` (closure size/size on disk). - Reduce the `Size` by disabling unneeded services/default packages. - For Packages you care about both the `Size` and the `NAR Size`. - Reduce the `NAR Size` by reducing the size of the build outputs, e.g. don't copy unnecessary data to the $out dir, optimize binaries for size, etc. - Reduce the `Size` by reducing the dependencies (e.g. `buildInputs`). - Don't worry too much about size, some dependencies are deduplicated, e.g. `glibc` adds ~40MiB to the `Size`, but is generally shared by ~every binary on the system, so, chances are, you are already including it from somewhere else and statically linking with e.g. `musl` is not gonna improve things. </details> ## NixOS Configurations | Name | Size | Size Change | NAR Size | NAR Size Change | |------|-----:|------------:|---------:|----------------:| | `vm` | 9.8GiB | -2.2MiB | 19KiB | 0B | ## Packages | Name | Size | Size Change | NAR Size | NAR Size Change | |------|-----:|------------:|---------:|----------------:| | `audiomenu` | 169MiB | 128MiB | 184B | -1.4MiB | | `docs` | 3.1MiB | 0B | 3.1MiB | 0B | | `docs-home-markdown` | 11KiB | 0B | 11KiB | 0B | | `docs-nixos-markdown` | 6.5KiB | 0B | 6.5KiB | 0B | | `docs-nvim-markdown` | 2.4KiB | 0B | 2.4KiB | 0B | | `jpassmenu` | 169MiB | 127MiB | 184B | -2.3MiB | | `nvim` | 1.6GiB | 0B | 626KiB | 0B | | `nvim-headless` | 439MiB | 0B | 626KiB | 0B | | `nvim-no-lsps` | 766MiB | 0B | 626KiB | 0B | | `nvim-no-ts` | 1.3GiB | 0B | 626KiB | 0B | | `nvim-small` | 1007MiB | 0B | 626KiB | 0B | | `search` | 727KiB | 0B | 9.0KiB | 0B |
jalil force-pushed push-klyoqssmruyz from 1fdbf8af97 to 66cd7b90b6 2025-05-17 17:54:25 +02:00 Compare
jalil force-pushed push-klyoqssmruyz from 66cd7b90b6 to 1d5160b669 2025-05-17 17:55:46 +02:00 Compare
jalil force-pushed push-klyoqssmruyz from 1d5160b669 to e6d07010af 2025-05-17 17:57:23 +02:00 Compare
jalil force-pushed push-klyoqssmruyz from e6d07010af to 0a9d16fb9a 2025-05-17 17:59:13 +02:00 Compare
jalil changed title from feat: replace jpassmenu with a python version to feat: rewrite jspassmenu and audiomenu in Python 2025-05-17 18:02:20 +02:00
jalil merged commit 0a9d16fb9a into main 2025-05-17 18:04:18 +02:00
jalil deleted branch push-klyoqssmruyz 2025-05-17 18:04:18 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: jalil/configuration.nix#489
No description provided.