Skip to content
View Qaaxaap's full-sized avatar
😋
Happy Mid-Autumn Festival
😋
Happy Mid-Autumn Festival

Block or report Qaaxaap

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Qaaxaap/README.md
A terminal running qaaxaap's powerlevel11k prompt in ~/Projects/Qaaxaap — commands: whoami, cat ~/.philosophy, ls ~/projects

email blog reddit discord: Qaaxaap Xi'an, China



total stars followers

I build my own Linux from scratch, and I write tools what I needed.

Most of that work lives one layer below the desktop: the shell prompt, the compositor, the desktop shell, and the configuration that makes a machine reproducible. Rust first; C++ when the layer underneath calls for it; Nix when the machine has to come back identical. Whenever technically feasible, I prefer to contribute upstream rather than reinvent the wheel. Some of that work is built with friends: tuack-ng is our OI/ICPC problem-setting toolchain, whose GUI I wrote and maintain.

Own work

powerlevel11k — a prompt engine that continues powerlevel10k, in Rust. Deliberately not a shell theme: the engine owns a pty, proxies bytes untouched, and fills the header in itself, so one theme runs on zsh, bash, fish and pwsh. 80+ built-in segments mirroring p10k's, a KDL v2 theme language, three icon tiers (nerdfont / compatible / ascii), and git status resolved off the prompt thread.

flowchart LR
  t["terminal"] --> e["p11k engine<br/>pty host · transparent proxy"]
  e -->|spawns inside the pty| s["theme-less shell<br/>zsh · bash · fish · pwsh"]
  s -->|"renders a prompt skeleton<br/>(placeholders)"| e
  e -->|"fills in the real header"| t
Loading

The engine never parses ANSI out of the pty stream and never touches user input. The input line stays the shell's own line editor, so completion, history and vi mode keep their geometry.

The other project I keep up with is Tuack-GUI: the GUI front-end for tuack-ng's problem-setting workflow, written and maintained by me in that org.

Repository What it is Stack
powerlevel11k stars p10k's successor: pty host + transparent proxy, multi-line header, transient prompt Rust
Tuack-GUI stars GUI front-end for OI/ICPC problem setting on top of tuack-ng: project tree, conf.json forms, command buttons — written and maintained by me TypeScript
nix-workspace Home Manager flake workspace, reproducible end to end, and readable as a Nix entry point Nix
NixOS-dots My NixOS configuration Nix
klipper-dots Klipper configuration for a Voron Trident Klipper
qaaxaap-blog The Hexo site behind blog.qaaxaap.living Hexo

Upstream

Patches I've sent upstream:

Upstream What I contributed
noctalia
noctalia-dev
Wayland desktop shell — bar font scale, PipeWire in-follow passive mode, control-center clock and tab handling, settings writes made idempotent · 5 merged
umbriel
noctalia-dev
scrolling/dwindle Wayland compositor — resize from a named edge, modifier-only binds surviving an active input method, overview progress clamping · 3 merged, 4 open

Toolbox

Rust, C, C++, Python, Linux, Bash, Nix, Lua, Neovim, Git, Arch, Vim

Linux From Scratch #32117 · Voron v0.4408 · Nix on the side

Pinned Loading

  1. powerlevel11k powerlevel11k Public

    Powerlevel10k for all shells, in Rust.

    Rust 40

  2. tuack-ng/Tuack-GUI tuack-ng/Tuack-GUI Public

    美观的 GUI 出题工具,基于 tuack-ng

    TypeScript 7 2