Skip to content
View claunia's full-sized avatar
๐Ÿ’ญ
Fighting for mental health.
๐Ÿ’ญ
Fighting for mental health.

Organizations

@VARCem

Block or report claunia

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
claunia/README.md

> whoami

public sealed record NatPortillo : Human, IArchivist, ITechnomancer, IWriter
{
    public string   Pronouns  => "they / them ยท elle";
    public string   Origin    => "๐Ÿ‡ฎ๐Ÿ‡จ Canary Islands, Spain";
    public string   HomeBase  => "Las Palmas de Gran Canaria";
    public string[] Roots     => ["Celtic", "Galician"];
    public string   Status    => "Retired engineer ยท full-time preservationist";
    public string   Identity  => "Non-binary ๐Ÿณ๏ธโ€โšง๏ธ trans fem ยท queer ๐Ÿณ๏ธโ€๐ŸŒˆ";
    public string   System    => "Plural โ€” Sol ๐ŸŒž & Luna ๐ŸŒ™";
    public string[] Brain     => ["Autistic", "ADHD", "BPD", "DID", "Intellectually gifted"];
    public string[] Code      => ["C#", "C", "C++", ".NET", "Blazor", "Avalonia", "Uno"];
    public string[] Speaks    => ["Espaรฑol", "English"];
    public string[] Offline   => ["๐Ÿ“ธ IR & UV photography", "โœ๏ธ writing", "๐Ÿ”ฎ tarot & runes",
                                  "๐Ÿ•ฏ๏ธ practicing witch", "๐Ÿ”ง soldering", "๐ŸŽง dark music"];
    public string   Diet      => "Vegan ๐ŸŒฑ";
    public string   Mission   => "Computing history deserves the same care as natural history.";
}

๐ŸŒด Origins: a gifted kid with a hoarding problem

I was born in the Canary Islands ๐Ÿ‡ฎ๐Ÿ‡จ, and I've been tinkering with machines for as long as I can remember. I was recognised as an intellectually gifted child and was put into programming courses before most kids had even touched a keyboard. From then on I kept everything: every component, every manual, every floppy, every cable. My mother was not exactly thrilled about how much space my "hobby" took up. ๐Ÿ“ฆ๐Ÿ’พ๐Ÿ“ฆ๐Ÿ’พ

That hoarding never stopped. It turned into a lifelong mission: making sure computing history doesn't rot away on dying media. I've been at it since the turn of the century, and it eventually became my biggest and most meaningful project: Aaru.

Along the way I crossed the sea to spend a couple of years in the United Kingdom ๐Ÿ‡ฌ๐Ÿ‡ง, then came back to Spain and to the islands where it all started. I spent time with the communities of Tenerife, and these days I'm based in Las Palmas de Gran Canaria ๐ŸŒ‹๐ŸŒŠ.

I spent a few years at Microsoft as an engineer in DevDiv, working on Visual Studio for Mac. That chapter is closed now. I'm retired, and I spend my time on what I love most: preservation, writing, photography, activism, and breaking open old hardware on stream.

๐Ÿ›ฐ๏ธ The journey

%%{init: {'theme':'base', 'themeVariables': {
  'fontFamily':'monospace',
  'cScale0':'#ff2a6d','cScaleLabel0':'#ffffff',
  'cScale1':'#c77dff','cScaleLabel1':'#1a0b2e',
  'cScale2':'#9d4edd','cScaleLabel2':'#ffffff',
  'cScale3':'#ff6ec7','cScaleLabel3':'#1a0b2e',
  'cScale4':'#7b2cbf','cScaleLabel4':'#ffffff',
  'cScale5':'#05d9e8','cScaleLabel5':'#1a0b2e'
}}}%%
timeline
    title โ–“โ–’โ–‘ NAT.EXE โ€” a life in sectors โ–‘โ–’โ–“
    section Childhood
        ๐Ÿ‡ฎ๐Ÿ‡จ Canary Islands : Born in the islands
                          : Gifted kid, coding classes, hoarding every floppy
    section The 2000s
        BeOS ยท QNX ยท MorphOS era : Ported SZIP and the HA archiver (BeHA) to BeOS and friends
                                 : Linux ports for the PlayStation 2
        2002 : Spanish translation of Joliet Volume Access for Mac OS 9
    section The DiscImageChef years
        2011 : First commit (to SVN!) of what would become Aaru
        2014 : DiscImageChef 1.0 is released
        2015 : plist-cil ยท Claunia.IO ยท CICM Metadata
        2017 : OS & App repository managers ยท first 86Box commits
        2018 : Marechai is born
    section The Aaru years
        2020 : DiscImageChef is reborn as Aaru 5.0 ยท RomRepoMgr
        2022 : Joined Microsoft, Visual Studio for Mac ยท trans activism in Tenerife & Gran Canaria
        2023 : Founded Inclufem ยท CHM releases the Apple Lisa source, recovered with DiscImageChef
        2024 : Hit Save! emeritus ยท press interviews on trans healthcare
        2025 : AaruFormat V2 ยท libaaruformat 1.0 alpha ยท full Aaru GUI
        2026 : OBMAFS3 open-sourced ยท Aaru 6.0 beta ยท retired, still tinkering
             : Media Muxing Wizard, the muxer that understands the video it carries
Loading

๐Ÿ’ฟ Aaru Data Preservation Suite โ€” my life's work

Named after the Egyptian paradise where the righteous dwell eternally, which is exactly where old data deserves to go.

Aaru (formerly DiscImageChef) is a fully featured preservation suite. It dumps, identifies, verifies, converts and extracts almost any storage media you can find in a museum, an attic or a dumpster: floppies, hard disks, CDs, DVDs, Blu-rays, HD DVDs, magneto-opticals, flash, memory cards and tapes. It talks ATA, ATAPI, SCSI, USB, FireWire and SDHCI, and it needs no special hardware.

9,000+

commits by hand
over 15 years

69

filesystems fully
identified & extracted

35 / 36

image formats
read / write

25

partitioning
schemes

22

archive
formats
  • ๐Ÿงฌ AaruFormat: its own archival image format that keeps data, metadata and audit trail together, with a portable C implementation in libaaruformat.
  • ๐ŸŽฎ Aaru 6.0 (beta, July 2026): OmniDrive support, GameCube / Wii / Xbox / PlayStation dumping, Blu-ray & HD DVD decryption, C2 secure audio reading, and flux images (A2R, HxC, SCP).
  • ๐ŸŽ The Computer History Museum used DiscImageChef to recover the original Apple Lisa OS source code, which it released to the public in 2023.
  • ๐Ÿ•น๏ธ Aaru helped the Video Game History Foundation back up 7,000+ CDs, DVDs and data tapes from the Game Informer archives.
  • ๐Ÿ›๏ธ It's used by many institutions dedicated to video game and computer history preservation.
  • ๐Ÿ–ฅ๏ธ It has a CLI, a full GUI and a TUI, and runs on Windows, macOS and Linux.

๐Ÿ“š aaru.app ยท ๐Ÿ“ฐ blog.aaru.app ยท ๐Ÿข github.com/aaru-dps

๐Ÿ›๏ธ Marechai โ€” a tiny museum on the internet

A catalog, a platform, and a tiny museum for the machines, software, magazines, people and stories that shaped computing history.

Marechai is the master repository of computing history artifacts: a searchable catalogue of computers, consoles, peripherals, software, magazines, companies and people. It has media pipelines, a public API, curation tools, and data ingestion from IGDB, MobyGames, WinWorld and OldDos. It's built on .NET 10: Blazor on the web, an Uno Platform client for Android, iOS, WASM and desktop, and EF Core on MariaDB. It has been growing since 2018, one commit (1,600+ of them) and one machine at a time.

๐ŸŽฌ NEW ยท Media Muxing Wizard โ€” the muxer that understands the video it carries

Media Muxing Wizard

Most muxers copy bytes from one box to another and hope for the best. Media Muxing Wizard reads your streams.

Subler only writes MP4 and only runs on macOS. MKVToolNix only writes Matroska. Media Muxing Wizard reads and writes both, on every desktop OS, and it never re-encodes your media.

Repairing a Matroska file that lost its Dolby Vision configuration
A Matroska episode that lost its Dolby Vision configuration. One click on Repair rebuilds it from the bitstream.
  • ๐Ÿฉน Repairs Dolby Vision. It finds the RPU in the bitstream and rebuilds the lost configuration. No other muxer we know of does this.
  • ๐Ÿš€ Codecs from the future: AV2, VVC/H.266, MPEG-5 EVC, AVS1/2/3 with HDR Vivid, Dolby AC-4 and MPEG-H 3D Audio.
  • ๐ŸŒˆ HDR that survives the trip: HDR10 recovered from the bitstream, with HDR10+, ST 2094-10 and SL-HDR detected.
  • ๐Ÿ”Š Atmos found in the frames, in TrueHD and E-AC-3 JOC, plus DTS-HD MA and DTS:X. Tracks get named by what they really are.
  • ๐Ÿ’ฟ Takes anything: MP4, MKV, MPEG-TS, Blu-ray M2TS, Ogg, raw streams, and AVI, VOB, WMV or RealMedia through FFmpeg.
  • ๐Ÿ’ฌ Subtitles your way: SRT, ASS, WebVTT and styled tx3g with karaoke, plus OCR for PGS and VobSub.
  • ๐Ÿท๏ธ Metadata worth looking at: TheMovieDB, TheTVDB, iTunes and Apple TV, with artwork, chapter thumbnails and Kodi NFO.
  • โšก Batch queue, full undo, 7 languages, and an mmw CLI for scripting.
TrueHD Atmos 7.1 kept in MP4 Importing a Blu-ray M2TS and an MKV into one MP4
mmw probe movie.ts                               # tracks and the actions each one offers
mmw remux movie.mkv movie.m4v --action 3=aac+ac3 # remux with per-track conversions
mmw search episode.m4v --apply                   # online metadata in one line
mmw queue add *.mkv && mmw queue start           # batch a whole season

๐Ÿงฐ The workshop

๐Ÿ—„๏ธ Preservation & archival tools
Project What it does
๐Ÿ’ฟ Aaru The Data Preservation Suite. Dump, verify, convert and extract everything.
๐Ÿงฌ libaaruformat Portable C implementation of the AaruFormat archival image.
๐ŸŽฌ Media Muxing Wizard MP4 + Matroska muxer and metadata editor that repairs Dolby Vision, keeps HDR and Atmos, and never re-encodes.
๐Ÿ—ƒ๏ธ OBMAFS3 Object Based Media Archival File System: a purpose-built deduplicating filesystem for disk images.
๐ŸŽฎ RomRepoMgr ROM Repository Manager: organises, compresses and dedupes ROM sets from DATs, and can mount them as virtual drives.
๐Ÿ–ฅ๏ธ osrepodbmgr ยท apprepodbmgr Repository managers for operating system and application dumps, made for digital museums.
๐Ÿ”Ž WhereDidItEnd Catalogue your offline drives, NAS and optical discs, and finally find that file.
๐Ÿ’ฌ OldImLogsManager Imports decades of IRC and IM logs (irssi, mIRC, XChatโ€ฆ) into a searchable archive.
๐Ÿ“€ CdScanStraightener Deskews and straightens scanned discs and inlays.
โœ… edccchk EDC/ECC checker for raw CD images.
๐Ÿ“‹ CICMMetadata Metadata sidecar schema for digital assets (now superseded by Aaru metadata).
๐Ÿ“œ preservation_scripts The little scripts behind my dumping bench: disc, DVD, ring-code and SafeDisc dumps, metadata sidecars, PAR2 and more.
๐Ÿ—œ๏ธ cxa Claunia's Xperimental Archiver: dedup, compression, encryption and full attribute preservation.
๐Ÿ“š Libraries for the weird old stuff
Project What it does
๐Ÿ plist-cil Read, write and convert Apple / GNUstep property lists (XML, binary, ASCII) in .NET.
๐Ÿ”ค Claunia.Encoding Codepage conversion between archaic computer systems and Unicode.
๐Ÿด Claunia.RsrcFork Classic Mac resource fork handling.
๐Ÿ—‚๏ธ Claunia.IO Extended attributes, ADS and forks across operating systems.
๐Ÿงฎ Claunia.ReedSolomon .NET port of Backblaze's Reed-Solomon.
โš™๏ธ libexeinfo Identifies and decodes executables and their resources.
๐Ÿ”Œ Contributions & friends
  • ๐Ÿ–ฅ๏ธ VARCem: organisation member ยท 86Box: cross-platform build fixes and CD-R emulation tinkering
  • ๐ŸŽ DingusPPC: SuperDrive fixes
  • ๐ŸŽฎ Hit Save!: co-founder, former CTO and emeritus member of the video game preservation non-profit
  • ๐Ÿงช qemudb: the QEMU official OS support list, built on WINE's AppDB
๐Ÿฆ– Fossils from the before-times
  • ๐Ÿž Ports of SZIP to BeOS, QNX, MorphOS, Mac OS X PPC and Linux mipsel
  • ๐Ÿ“ฆ BeHA: the HA archiver ported to BeOS
  • ๐ŸŒ Spanish translation (2002) of Thomas Tempelmann's Joliet Volume Access for Mac OS 9
  • ๐ŸŽฎ Software ported to Linux for PlayStation 2
  • ๐Ÿค– NatiBot: a Second Life client and bot
  • ๐Ÿ’ฝ dvdtoimg, libcdio-osx, SFOParser, dosuname, freecell (an Xbox disc dumper)โ€ฆ and a tarball cemetery of many more

๐Ÿ“Š Stats, streaks & shenanigans

GitHub stats Top languages GitHub streak Trophies
Snake eating my contributions

๐Ÿง  Mind, matter & mental health

> cat /proc/brain

โ™พ๏ธ Autistic pattern-hunter, detail-obsessed, sometimes overwhelmed
โšก ADHD a hundred tabs open, executive-function roulette
๐ŸŒ— BPD I feel everything at full volume
๐ŸŒž๐ŸŒ™ DID a plural system: Sol & Luna, so sometimes it's we
๐ŸŒˆ Synesthesia Wednesdays are green. Obviously.
๐Ÿ’ก Intellectually gifted which did not make any of the above easier

> echo $TRUTH

"I was diagnosed with borderline personality disorder in my early adulthood, and more recently with autism, ADHD, and dissociative identity disorder. These diagnoses didn't break me. They clarified who I've always been."

I talk openly about mental health, queerness and survival, because I know what it's like to need a story like your own and not find it.

If you're a neurodivergent dev reading this:

  • ๐Ÿงฉ You are not a puzzle with a missing piece, and you don't need "fixing". Accommodations, not cures.
  • ๐Ÿ”‹ Rest is not a bug. Burnout is not a personality trait. Ship slower if that keeps you alive.
  • ๐Ÿซ‚ Asking for help is a feature. If you're struggling right now, you can find free, confidential support near you at findahelpline.com.
  • ๐Ÿ’œ You are allowed to take up space exactly as you are.

๐Ÿณ๏ธโ€โšง๏ธ Activism & the people

  • โœŠ Founder of Inclufem (2023), an association that fights for the rights of non-binary people, with a focus on healthcare equity and access.
  • ๐Ÿณ๏ธโ€๐ŸŒˆ I've worked with LGBTIQ+ associations in Tenerife (La Laguna Orgullosa) and with Transwomen Canarias in Gran Canaria.
  • ๐Ÿ“ฐ I've spoken to the press (La Provincia) and on TV (RTVE Canarias) about the delays trans people face in Canary healthcare.
  • ๐Ÿ”“ Fervent defender of open source and free access to knowledge.
  • ๐Ÿ›ก๏ธ Protect trans kids. Always.

๐Ÿ”ฎ When I'm not dumping discs

๐Ÿ“บ
Tinkering Daemon
200+ videos of teardowns, recaps, retrobrights, Gotek mods, MorphOS and Monkey Island on a real Pentium II
๐Ÿ“ธ
Photography
since childhood, including infrared and ultraviolet
โœ๏ธ
Writing
fiction, poetry, essays, and a memoir in progress (in Spanish)
๐Ÿ•ฏ๏ธ
Witchcraft
pagan path, Celtic & Galician roots, Wheel of the Year, tarot & runes
๐ŸŒฑ
Vegan
and blogging about it in La Degustaciรณn Vegana

Engineering and spirituality coexist seamlessly. Ask me how a pendulum once helped me find a missing PlayStation part. ๐Ÿ”ฎ๐ŸŽฎ

๐Ÿ› ๏ธ Tech I bend to my will

C# .NET C C++ Blazor Avalonia Uno Platform MariaDB CMake
Linux macOS Windows BeOS MorphOS Soldering iron

๐Ÿ’œ Keep the past alive

If Aaru ever saved your data, or you just believe old software deserves a future,
support me on Patreon, star Aaru, or send me a weird disc. ๐Ÿ’พ

 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
 โ”‚  C:\> ECHO Data is history. History is people.               โ”‚
 โ”‚  C:\> ECHO Preserve both.  _                                 โ”‚
 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Pinned Loading

  1. aaru-dps/Aaru aaru-dps/Aaru Public

    Aaru Data Preservation Suite

    C# 633 50

  2. aaru-dps/libaaruformat aaru-dps/libaaruformat Public

    C implementation of Aaru file format.

    C 27 6

  3. romrepomgr romrepomgr Public

    ROM Repository Manager

    C# 5

  4. aaru-dps/aaruremote aaru-dps/aaruremote Public

    Aaru Remote

    C 5 4