Even Google doesn't seem to know what sucks less about suckless. The best I could come up with was "sbase vs busybox" which leads me to [1], where this exact question was asked, to which the response by the project creator was "The busybox code sucks." Not helpful at all, which was pointed out one post later, to which another project member said "Try to read it [the code?] and understand it." Great. Like I have time to read the code of every project before I decide to use it.
http://git.busybox.net/busybox/tree/findutils/find.c
I think one of the main advantages is it's written in the same straightforward, braindead dialect of C as the other suckless projects. They are really easy to dive into. (Hence why, eg, dwm has so many derivative.) I think the suckless folks would consider the fact it doesn't produce a single fat binary to be an advantage too.
It's part of this project: http://morpheus.2f30.org/
Anyway, if they would talk about why they suck less, we could evaluate the claim. If they were wrong, people could point it out and they could fix it and verifiably suck less. As it is, we have unsubstantiated claims and fun speculation.
It's a bit difficult to confirm, but given the name and approach this project is probably a part of the suckless community (however big that is and who might be in it), and on their page there is http://suckless.org/philosophy and some other pages, that would explain what to expect from sbase. Granted, that is not very concrete.
Whoever that is, they aren't the project creator.
I can only wonder how you make your decisions on what projects (binaries?) to use.
About pages, Google searches for x vs y, blog posts, forum comments, etc. Am I on the right track?
The bigger question is why you are even evaluating some new project in the first instance. Is there something wrong with the project you are using now? If so, can you articulate it?
Perhaps a user's intended use of a project is relevant.
As one example, consider the case where the user intends to compile and if necessary modify the code, and wants to know that this is a viable option, e.g. if something breaks. In that case does it make sense for the user to read the code?
This user might ask "Is the sbase code easier to work with than the busybox code?"
Another user might intend to rely on others to do compilation and modification (e.g., if something breaks) and then make binaries available.
Is it possible these two users might evaluate a project differently?
I'd love to see a whole suckless OS someday. I know it's been around for some time, but it seems like this might be the first step towards that.
That might be Plan 9--or Project Oberon. ;-)
I'm really looking forward to kOS: http://www.kparc.com/o.htm
Featured live in geocar's presentation: https://www.youtube.com/watch?v=kTrOg19gzP4&list=PLmRrx948XM...
Also: - "Arthur wrote an SQL in 20 lines of K, and a dynamic window manager in around 60 of C...kOS's kernel is under 60 lines of C as well (including annotations; paging, filesystem, syscalls, etc)." (https://news.ycombinator.com/item?id=9002302)
- "k includes language, files, procs, ipc, webserver, dbms, ..z includes graphics...edit.k is 1KB code + k/ztk(9KB)." (http://kparc.com/o.htm)
- "kOS doesn't use the Linux kernel code. It supports a few of the same syscalls: clone, execve(!), epoll_create, epoll_ctl, epoll_wait, dup2, stat, rename, unlink, getcwd, chdir, fstat, getdents, open, close, read, write, ftruncate, mmap2, munmap, ioctl, gettimeofday, socket, bind, connect, listen, acccept, socketpair, setsockopt...execve just runs another k interpreter (regardless of what you tell it to do) though, so it can just be used to run more k programs." (https://news.ycombinator.com/item?id=8744769)
Morpheus Linux? http://morpheus.2f30.org/
I didn't know that, but it doesn't surprise me. However I also love the software the project produces. Especially when they release new versions of tools where whole features have been removed to fix bugs.
Simplify everything!
http://lists.suckless.org/dev/1409/23497.html
There might be more characters in the announcement than in the repository,though.
http://git.suckless.org/9base/tree/cal/cal.c http://git.2f30.org/sbase/tree/cal.c
http://core.suckless.org/sbase
> 9base is a port of various original Plan 9 tools for Unix, based on plan9port.
While sbase is supposed to be POSIX-compliant.
[1]: http://git.suckless.org/sbase/
instead of
[2]: http://git.2f30.org/sbase/
I'm guessing [2] is a mirror, and [1] is the original Git repository. They appear to have the same content.
Thanks, but I'll just keep on using the GNU coreutils, Emacs, etc.