warg
arcan
warg | arcan | |
---|---|---|
7 | 33 | |
13 | 1,495 | |
- | - | |
7.3 | 8.0 | |
9 days ago | 4 days ago | |
Go | C | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
warg
-
An Efficient Struct Configuration Pattern For Golang
Funcopts aren't always appropriate, but boy do they make things more readable sometimes. I use them pervasively in warg to allow declarative nested CLI commands
-
Which packages do you recommend for building cli tools?
I wrote my own! https://github.com/bbkane/warg/
-
Major standard library changes in Go 1.20
Very useful! I'll be playing with the error tree additions and studying the HTTP interface extension to see if I can replicate the pattern for https://github.com/bbkane/warg values. Id like to be able to have value-specific output for different types of --help , even ones not in warg
-
Have you used generics?
I'm using to allow for custom flag types in my CLI parsing library- a lot less duplicate code
-
Go: Functional Options Are Slow
One thing that I find nicer with functional options is building tree-like data structures.
My command line parsing library uses them to declaratively build CLI apps with arbitrarily nested subcommands.
Some examples at https://github.com/bbkane/warg/tree/master/examples
-
How are YOU using generics so far?
I'm writing a CLI parsing library, and generics have let me consolidate most of the flag value functionality for different types. So the flags for dbz --level 9000 --type superSaiyan share most of the same code even though one is an int and one is a string. So much fewer copy-paste-modify lines of code now!
-
Unix command line conventions over time
This is largely what the Azure CLI does. It simplifies even further by eliminating the no-value option. Instead, you pass "true" or "false" as the value ( --example true ). It's a little more verbose but very easy to parse/write/generate. I like this convention so much I stole it for my homemade Golang CLI parsing library https://github.com/bbkane/warg/ .
arcan
-
Is there a cross-platform graphics library that can run without X or wayland that runs on the BSD's bare-metal?
Something like this ? https://arcan-fe.com/
- X.org Alternatives? MicroXWin, Wayland, Y, DFB, Xynth, Fresco, etc. (2009)
-
kirby.nvim: design update
This requires to remove the terminal emulator plus adjust IPC, like what arcan is doing: https://github.com/letoram/arcan
-
VT330/VT340 Sixel Graphics
kragen, what's the current status of BubbleOS?
Also, I'm curious what you think of Arcan (https://arcan-fe.com)
-
Qt Wayland: support for surviving a compositor crash was merged
afair ChromeOS do implement it, harder to find the commit but also know Arcan mentioned elsewhere in this thread added it quite a while ago https://github.com/letoram/arcan/commit/d547c55565a848946422e24eee324c8ed091ff15
-
not the biggest Xorg fan, but it isn't all sunshine and rainbows in the promised Wayland.
I managed to find this one in my history: Arcan it does has a cool name ngl, I never tried it though
-
Wayland blows ass and mostly functions as a launcher for x.org processes. Nobody needs, wants or asked for Wayland. It's nobody's fault but the assholes at FreeDesktop
Lol not arcan
-
A Guide to the Terminal, Console, and Shell
See https://arcan-fe.com/, in particular Lash: https://arcan-fe.com/2022/10/15/whipping-up-a-new-shell-lash...
-
Is Wayland really the best solution
LOL. Not. Meanwhile, one dude managed to write an entire display server that handles, both, Wayland and X11 apps: https://arcan-fe.com/
-
SDL Tries Again To Prefer Wayland Over X11
Arcan is a decent contender for an actual way forward (and like PipeWire replacing PulseAudio, Arcan natively supports X11 and Wayland clients)
What are some alternatives?
graph - A library for creating generic graph data structures and modifying, analyzing, and visualizing them.
hello-wayland - A hello world Wayland client (mirror)
cli-guidelines - A guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day.
waybox - An openbox clone on Wayland (WIP)
workgroup - Structured concurrency manager for Go
openbsd-wip - OpenBSD work in progress ports
golang-generics-dao-example - Example using Generics with DAO
glaucus - A simple and lightweight Linux® distribution based on musl libc and toybox
scan - Scan provides the ability to to scan sql rows directly to any defined structure.
ydotool - Generic command-line automation tool (no X!)
RCIG_Coordination_Repo - A Coordination repo for all things Rust Cryptography oriented
rdrview - Firefox Reader View as a command line tool