Skip to content
Mbox Viewer Pro
aankondigingproductmboxshell

mboxShell 1.3: installeren met Homebrew, Scoop of Cargo, en een slankere index

mboxShell 1.3.0 installeer je nu met één opdracht op macOS, Linux en Windows, via Homebrew, Scoop of crates.io. En de index raakt zijn laatste niet meer onderhouden afhankelijkheid kwijt: 36% kleiner en even snel geladen.

David Carrero ·

mboxShell, onze opensource-terminaltool voor MBOX-bestanden, is vandaag op 1.3.0 gekomen. Deze versie brengt twee veranderingen die je tijdens het gebruik niet ziet, maar wel merkt: installeren betekent niet langer met de hand een binair bestand downloaden, en de index die de tool voor elke mailbox aanmaakt, raakt de laatste niet meer onderhouden afhankelijkheid kwijt. Daarnaast lost hij twee dingen op.

Installeren met de pakketbeheerder die je al gebruikt

Tot nu toe, behalve op NixOS en Arch, downloadde je het binaire bestand van GitHub, maakte je het uitvoerbaar en zette je het in een map op je PATH. Met 1.3.0 komen er drie manieren bij.

Homebrew, op macOS en Linux:

brew install dcarrero/tap/mboxshell

Installeert het binaire bestand van de release samen met shell-aanvulling en de manpagina, dus man mboxshell werkt meteen. Latere versies komen binnen met brew upgrade.

Scoop, op Windows:

scoop bucket add dcarrero https://github.com/dcarrero/scoop-bucket
scoop install dcarrero/mboxshell

Cargo, via crates.io, als je Rust hebt geïnstalleerd:

cargo install mboxshell     # compileert vanuit de broncode
cargo binstall mboxshell    # downloadt het kant-en-klare binaire bestand

cargo binstall is de snelle route: het haalt hetzelfde binaire bestand op dat we op GitHub publiceren, in plaats van een paar minuten te compileren.

Alle drie volgen ze vanzelf elke nieuwe release. En de bestaande manieren blijven: mboxShell staat nog steeds in nixpkgs (nix-shell -p mboxshell) en in de AUR van Arch (yay -S mboxshell). Ze staan allemaal uitgelegd in het installatiegedeelte van de README.

Een kleinere index, zonder bincode

De eerste keer dat je een mailbox opent, leest mboxShell hem helemaal en bewaart er een index naast (of in de cachemap, als hij daar niet mag schrijven). Dankzij die index gaat de mailbox de volgende keren open zonder dat hij opnieuw van begin tot eind gelezen wordt, ook als hij een paar gigabyte groot is.

Die index werd geschreven met bincode, een Rust-bibliotheek die niet meer wordt onderhouden; dat staat in advies RUSTSEC-2025-0141. Er was geen bekende fout in, maar een afhankelijkheid die niemand onderhoudt, repareert ook niemand op de dag dat er wel een fout in zit. 1.3.0 schrijft de items met postcard en de header met de hand, met dezelfde opbouw als voorheen.

Meteen is de index ook kleiner geworden: bij 100.000 berichten gaat hij van 39,4 MB naar 25,3 MB, 36% minder, en hij laadt even snel. cargo audit, dat de afhankelijkheden vergelijkt met de database van Rust-beveiligingsadviezen, meldt nu helemaal niets meer.

Dit is versie 6 van het indexformaat, en je hoeft niets te doen. Opent 1.3.0 voor het eerst een mailbox die al een index had, dan ziet mboxShell dat die in het oude formaat is en bouwt hem opnieuw op. Dat ene keer openen duurt even lang als de allereerste keer; daarna gaat het weer snel.

Twee oplossingen

Een onleesbare index houdt het openen van de mailbox niet meer tegen. Was de inhoud van de index beschadigd, dan ging de mailbox niet open. Nu bouwt mboxShell hem opnieuw op, zoals hij al deed wanneer de index niet meer bij het bestand past.

Afzenders met een gelijke stand komen altijd in dezelfde volgorde. In stats en stats --json konden twee afzenders met evenveel berichten van de ene keer op de andere van plek wisselen. Gelijke standen worden nu op naam gesorteerd, en twee keer draaien op dezelfde mailbox geeft precies dezelfde uitvoer. Fijn voor iedereen die resultaten met diff vergelijkt of in een script verwerkt.

Wat 1.1 en 1.2 brachten

Sinds 1.0 zijn er vier versies verschenen waarover we hier nog niet schreven:

  • 1.1.0: de hulp (?) toont alle zoekoperatoren, niet 8 van de 15, en F1 opent hem meteen op die plek, ook vanuit de zoekbalk.
  • 1.2.0: HTML-exports tonen de afbeeldingen die in het bericht zitten, zoals logo’s of foto’s, zonder iets van buitenaf te laden. Voorheen werden ze weggehaald.
  • 1.2.1: de paperclip verschijnt niet meer bij berichten zonder bijlage, een fout die je vooral zag bij mail die met Alpine was verstuurd.
  • 1.2.2: exporteren naar CSV vanuit de interface overschrijft de vorige export niet meer, en het logbestand (mboxshell.log) kan alleen de eigenaar lezen.

Waar je het vindt

De volledige notities staan op de releasepagina op GitHub. Op de pagina van mboxShell vind je de binaire bestanden voor Linux, macOS, FreeBSD en Windows, de opdrachten en de laatste versies.

En heb je liever een venster dan een terminal: hetzelfde idee zit in Mbox Viewer Pro, voor Mac, Windows en, in bèta, Linux.

Open je archief met Mbox Viewer

Native app voor Mac, Windows en Linux. Streamt MBOX- en EML-bestanden van elk formaat, volledig offline.

Of download hem rechtstreeks van onze site