Download raw body.
UPDATE: sysutils/exfetch -> 1.5.2.1 (hotfix applied)
On 19.02.2026 07:16, Thomas Kupper wrote: > > > On 19.02.2026 00:26, izzy Meyer wrote: >> On Wed, 18 Feb 2026 16:53:39 -0600 >> izzy Meyer <izder456@disroot.org> wrote: >> >>> Hello ports@ >>> >>> I've been feeling really motivated lately with exfetch and added some >>> new features to it (see changelog below). I want to get this out into >>> the wild as soon as possible, so people can play around and test it on >>> their machines. >>> >>> Here's a simple update to sysutils/exfetch to a tag with these new >>> features. >>> >>> Tested on amd64, works good. >>> >>> I'd like someone to test these new changes before they commit if >>> that's ok. > > - Offset works for me: > > grumpy$ exfetch -f 7 -a OpenBSD > > USER -> oops@grumpy.somewhere.oops > OS -> OpenBSD > VER -> 7.8 > UPTIME -> 37 days, 11:17 > DE/WM -> unknown > TERM -> screen > SHELL -> ksh > _____ CPU -> Intel Xeon CPU E5-2630 0 @ 2.30GHz > \- -/ GPU -> unknown > \_/ .` , \ PKGS -> 175 > | , , 0 0 | LOAD -> 1m: 0.33, 5m: 0.26, 15m: 0.43 > |_ < } 3 | SWAP -> 11.43 / 1264.00 MiB > / \` . ` / MEM -> 52.32 / 1007.99 MiB > /-_____-\ > > > I understand providing a negative value will raise an ArgumentError as > you mentioned in the man page. > > Is there a more elegant way than to show the whole call stack? Handle it > similar like the color (-c|--color) argument? > > grumpy$ exfetch -f -7 -a OpenBSD > Unhandled exception: ASCII offset cannot be negative. ILLEGAL > (ArgumentError) > from exfetch in '__register_frame_info' > from exfetch in '__register_frame_info' > from exfetch in 'main' > from exfetch in 'main' > from exfetch in '__start' > > - Text-Only works as expected: > > grumpy$ exfetch -c 1 -f 1 -a OpenBSD | tee output.with.escape > grumpy$ exfetch -c 1 -T -f 1 -a OpenBSD | tee output.without.escape > > grumpy $ grep -c '\[' output.with.escape > 13 > grumpy $ grep -c '\[' output.without.escape > 0 One additional note, not related to the update: sorting the arguments in alphabetical order in the man page would be helpful, I think. >>> >>> /usr/ports/sysutils/exfetch git:(master+) $ make test >>> ===> Regression tests for exfetch-1.5.2 >>> crystal spec --no-color -v -s -t -p --release >>> Parse: 00:00:00.000283360 ( 0.90MB) >>> Semantic (top level): 00:00:01.564889146 ( 124.76MB) >>> Semantic (new): 00:00:00.004672048 ( 124.76MB) >>> Semantic (type declarations): 00:00:00.084020180 ( 124.76MB) >>> Semantic (abstract def check): 00:00:00.045015596 ( 124.76MB) >>> Semantic (restrictions augmenter): 00:00:00.016167933 ( 124.76MB) >>> Semantic (ivars initializers): 00:00:00.933157956 ( 196.82MB) >>> Semantic (cvars initializers): 00:00:00.023979597 ( 196.82MB) >>> Semantic (main): 00:00:00.734872077 ( 228.95MB) >>> Semantic (cleanup): 00:00:00.001088280 ( 228.95MB) >>> Semantic (recursive struct check): 00:00:00.002413409 ( 228.95MB) >>> Codegen (crystal): 00:00:00.943954401 ( 260.95MB) >>> Codegen (bc+obj): 00:00:24.314646013 ( 260.95MB) >>> Codegen (linking): 00:00:00.853759568 ( 260.95MB) >>> Macro runs: >>> - >>> /usr/ports/pobj/exfetch-1.5.2/exfetch/lib/baked_file_system/src/ >>> loader.cr: >>> reused previous compilation (00:00:00.023271315) >>> >>> Codegen (bc+obj): >>> - no previous .o files were reused >>> Exfetch::CLI >>> .colorize >>> wraps text in ansi codes >>> handles bright colors >>> .render >>> renders output string >>> Exfetch::Manip >>> .bytes_to_mebibytes >>> converts bytes to mebibytes string >>> .sanitize >>> removes newlines and strips whitespace >>> .has_command? >>> returns true for existing commands >>> returns false for non-existing commands >>> .run_command >>> runs a command and returns output >>> returns empty string on failure >>> .dir_size >>> returns 0 for non-existent dir >>> Exfetch::Options >>> .parse >>> parses default options >>> parses flags >>> parses color argument >>> parses padding >>> Exfetch::Resource >>> .get_short_info >>> returns basic info >>> .get_uptime >>> parses uptime correctly when mocked >>> .get_shell >>> returns shell basename >>> .get_cpu >>> returns cpu info >>> >>> Finished in 13.04 milliseconds >>> 18 examples, 0 failures, 0 errors, 0 pending >>> Execute: 00:00:00.059692262 >>> >>> Changelog: >>> * Since(1.5.1) >>> >>> Misc Changes: >>> >>> Optimizations: >>> >>> Bugfixes: >>> >>> New features: >>> - Added -T and --text-only options to disable ansi escape seqences >>> - Added -f LINES and --ascii-offset=LINES options to offset ASCII by >>> LINES >>> >> >> Whoops, caused a bug in the offset code where ascii art would cut off >> if there wasn't a corresponding label on that line. here's a new diff. >> git tag bumped to 1.5.2.1, future versions will return to the X.Y.Z >> format. >> >
UPDATE: sysutils/exfetch -> 1.5.2.1 (hotfix applied)