[dev] Linux distros that don't suck too too much

101 views
Skip to first unread message

Nick

unread,
May 11, 2016, 6:56:58 AM5/11/16
to d...@suckless.org
Hi folks,

A few nights ago my too-expensive laptop met with too-cheap wine and now
it is a far-too-expensive brick. As it's therefore time for me to
install a new OS on a new laptop, I was wondering what people would
recommend. I've been using Debian Stable for years now, which while it
sucks does work well enough that I don't have to think about it very
much, so I can do more interesting things with my time. But particularly
after reading a few good articles about issues with debian [0] [1] I
find myself wondering if there's a better option out there. A rolling
release distribution would be fine with me, but only if it didn't break
often at all; I enjoyed using Gentoo years ago when I was a student, but
keeping it working took a lot of time that I do not want to dedicate to
keeping a working system these days. I'd like to try something like
morpheus [2], but I suspect that would take quite a lot of time and
energy to get going and maintain.

Any suggestions / thoughts?

Nick

0. https://mjg59.dreamwidth.org/41085.html
1.
https://blogs.gnome.org/mcatanzaro/2016/02/01/on-webkit-security-updates/
2. http://morpheus.2f30.org

FRIGN

unread,
May 11, 2016, 7:05:10 AM5/11/16
to d...@suckless.org
On Wed, 11 May 2016 11:56:41 +0100
Nick <suckle...@njw.me.uk> wrote:

Hey Nick,

> A few nights ago my too-expensive laptop met with too-cheap wine and now
> it is a far-too-expensive brick. As it's therefore time for me to
> install a new OS on a new laptop, I was wondering what people would
> recommend. I've been using Debian Stable for years now, which while it
> sucks does work well enough that I don't have to think about it very
> much, so I can do more interesting things with my time. But particularly
> after reading a few good articles about issues with debian [0] [1] I
> find myself wondering if there's a better option out there. A rolling
> release distribution would be fine with me, but only if it didn't break
> often at all; I enjoyed using Gentoo years ago when I was a student, but
> keeping it working took a lot of time that I do not want to dedicate to
> keeping a working system these days. I'd like to try something like
> morpheus [2], but I suspect that would take quite a lot of time and
> energy to get going and maintain.

first you have to assess if you really need Linux. If not, there's
nothing better to recommend than OpenBSD.
Unfortunately, due to my work, I depend on different Linux things
that are not available on OpenBSD (wine, fuse, LUKS, ...) and
which cannot be replaced efficiently. I'm running Gentoo atm
and once you've got a running system even Gentoo is not too
much of a chore (at least not more than Debian, which sucks ass).

If you depend on Linux-stuff, I'd take a look at Gentoo again.

For rolling releases, you can go with -CURRENT on OpenBSD.

Cheers

FRIGN

--
FRIGN <d...@frign.de>

Teodoro Santoni

unread,
May 11, 2016, 7:11:24 AM5/11/16
to dev mail list
Hi,

2016-05-11 12:56 GMT+02:00, Nick <suckle...@njw.me.uk>:
> Hi folks,
>
> A few nights ago my too-expensive laptop met with too-cheap wine and now
> it is a far-too-expensive brick. As it's therefore time for me to
> install a new OS on a new laptop, I was wondering what people would
> recommend. I've been using Debian Stable for years now, which while it
> sucks does work well enough that I don't have to think about it very
> much, so I can do more interesting things with my time. But particularly
> after reading a few good articles about issues with debian [0] [1] I
> find myself wondering if there's a better option out there. A rolling
> release distribution would be fine with me, but only if it didn't break
> often at all; I enjoyed using Gentoo years ago when I was a student, but
> keeping it working took a lot of time that I do not want to dedicate to
> keeping a working system these days. I'd like to try something like
> morpheus [2], but I suspect that would take quite a lot of time and
> energy to get going and maintain.

I've used Void Linux for some times now.
The only thing that breaks sometimes it's the package manager
and its build tree. But 99% of the time it turns up without any intervention.
More on it: it doesn't seem so shitty when you use it (I find it
better than apt),
but uses xml files (.plist) as package database.
If you'll give up with Gentoo, i recommend it.

Roy Lemmon

unread,
May 11, 2016, 7:16:07 AM5/11/16
to dev mail list
Hi,

I am very happy using Arch. It is a rolling release but I have found it
very stable if you update often and take care of the AUR packages.

Cheers
Roy.
--
**************************

Roy Lemmon
Nuclear Physics Group
STFC Daresbury Laboratory

**************************


Aditya Goturu

unread,
May 11, 2016, 7:28:08 AM5/11/16
to dev mail list
I actually asked juan rp about that plist thing, he said it was
because he had experience with it on netbsd with proplib, which he
then ported as portable proplib:
https://github.com/xtraeme/portableproplib.
--
Aditya Goturu
"The most dangerous phrase in the language is, We’ve always done it
this way" - Grace Hopper
Pubkey 4096R/727CEEED on pgp.mit.edu.

parazyd

unread,
May 11, 2016, 8:17:11 AM5/11/16
to dev mail list
On Wed, 11 May 2016, Nick wrote:

> Hi folks,
>
> A few nights ago my too-expensive laptop met with too-cheap wine and now
> it is a far-too-expensive brick. As it's therefore time for me to
> install a new OS on a new laptop, I was wondering what people would
> recommend. I've been using Debian Stable for years now, which while it
> sucks does work well enough that I don't have to think about it very
> much, so I can do more interesting things with my time. But particularly
> after reading a few good articles about issues with debian [0] [1] I
> find myself wondering if there's a better option out there. A rolling
> release distribution would be fine with me, but only if it didn't break
> often at all; I enjoyed using Gentoo years ago when I was a student, but
> keeping it working took a lot of time that I do not want to dedicate to
> keeping a working system these days. I'd like to try something like
> morpheus [2], but I suspect that would take quite a lot of time and
> energy to get going and maintain.
>
> Any suggestions / thoughts?
>
> Nick
>

If you are comfortable enough with Debian, I would suggest to check out
Devuan at https://devuan.org . While it's not suckless, it does suck
less than Debian :)

Gentoo, when setup, "just werkz" so there isn't much to maintain
afterwards. Gentoo is my distro of choice, and Devuan on production
servers where other people don't want Gentoo (grrr!)

ciao!

--
~ parazyd
0333 7671 FDE7 5BB6 A85E C91F B876 CB44 FA1B 0274

Rubén Llorente

unread,
May 11, 2016, 8:30:22 AM5/11/16
to d...@suckless.org
I find OpenBSD and NetBSD to be less insane operating systems than any
Linux distribution I have ever tried.

Slackware is ok. The base install is very bloated because it has lots of
packages installed by default, but if you don't run the extra packages
or don't install them, you won't ever notice. The Slackware team is very
conservative with the inclussion of new software, so experimental toy
projects like Systemd will take longer to fully penetrate the
distribution - if they ever do.

There is no automated dependency tracking in the package manager unless
you hack it in or use third party tools. Many people who is tired of
having poor distributions break their package managers becaouse of bad
dependency tracking see this as a feature, including myself.

--
OpenPGP Key Fingerprint:
BB5A C2A2 2CAD ACB7 D50D C081 1DB9 6FC4 5AB7 92FA


Alba Pompeo

unread,
May 11, 2016, 9:22:00 AM5/11/16
to dev mail list
Alpine Linux.

- musl libc
- busybox utils (they said they will migrate to sbase/ubase when ready)
- openrc (they will migrate to s6 next year)
- "Small. Simple. Secure." slogan
- Philosophy similar to suckless http://www.alpinelinux.org/about/

Josuah 'sshbio' Demangeon

unread,
May 11, 2016, 12:57:52 PM5/11/16
to dev mail list
On Wed, May 11, 2016 at 10:21:44AM -0300, Alba Pompeo wrote:
> Alpine Linux.

I was about to ask about Alpine Linux. I am very glad to see it in this
list, and had _a few_ issues with it, and only 1 that I could not
overcome, even if I do not have a large knowledge.

> - musl libc
> - busybox utils (they said they will migrate to sbase/ubase when ready)
What a great news.
> - openrc (they will migrate to s6 next year)
> - "Small. Simple. Secure." slogan
> - Philosophy similar to suckless http://www.alpinelinux.org/about/
>
> On Wed, May 11, 2016 at 9:17 AM, Rubén Llorente
> <por...@use.startmail.com> wrote:
> [...]

J. D.

Nick

unread,
May 11, 2016, 3:10:17 PM5/11/16
to d...@suckless.org
Thanks for the replies folks.

I would love to give OpenBSD a try, but the laptop I'm getting is rather
new and fancy, and I suspect not all of it would be supported. Plus it's
a new ecosystem and I don't have the time to learn it all at the moment
(this is my work machine, too). I'll have to learn my way around it in
qemu sometime soon. Same for 9front, now I think of it.

I'm glad to hear Gentoo is more solid these days.

Kamil, your point about security updates is a good one, though at the
moment running Debian stable doesn't feel particularly secure to me
(using surf on the system-supplied webkit, which has many known
vulnerabilities, because I haven't yet had the heart to build it for
myself, and in general running various oldish software from Debian which
almost certainly has known holes that haven't been marked as
security-sensitive and fixed in Debian). But yes, that, plus the desire
to not have to switch distributions because one or two peoples'
priorities have changed, makes me wary of going for a small distro.

Devuan I had not heard of. Sounds nice, and the dyne people seem to be
very good people, but I wonder whether it suffers the problems above of
being scarily small. Maybe not, if they mostly just use Debian's repos,
I don't know. parazyd, any comment on that?

Anyway, thanks for all the thoughts, I'm currently leaning towards
Gentoo or Debian/Devuan (I am secretly conservative and boring at
times), but who knows where I'll end up.

Love to you all.

Nick

parazyd

unread,
May 11, 2016, 3:29:46 PM5/11/16
to dev mail list
On Wed, 11 May 2016, Nick wrote:

> Devuan I had not heard of. Sounds nice, and the dyne people seem to be
> very good people, but I wonder whether it suffers the problems above of
> being scarily small. Maybe not, if they mostly just use Debian's repos,
> I don't know. parazyd, any comment on that?

In Devuan, we have our own software called "Amprolla" that basically
acts as an overlay to the Debian repositories. Systemd-dependent
packages like php-fpm or anything else that's been compiled with systemd
support we recompile without, and put it in our own repos. Right now
we're at about 300 packages that have been compiled specifically for
Devuan (without the need for systemd), and anything else, Amprolla
resolves and gets from the Debian repos, so you still have all 40k+
packages that are already in Debian.

Also, while we still mark it as beta, I can assure you it's perfectly
stable and production ready if that's of any worry for you.

Calvin Morrison

unread,
May 11, 2016, 3:37:03 PM5/11/16
to dev mail list
On 11 May 2016 at 06:56, Nick <suckle...@njw.me.uk> wrote:
> Hi folks,
>
> A few nights ago my too-expensive laptop met with too-cheap wine and now
> it is a far-too-expensive brick. As it's therefore time for me to
> install a new OS on a new laptop, I was wondering what people would
> recommend. I've been using Debian Stable for years now, which while it
> sucks does work well enough that I don't have to think about it very
> much, so I can do more interesting things with my time. But particularly
> after reading a few good articles about issues with debian [0] [1] I
> find myself wondering if there's a better option out there. A rolling
> release distribution would be fine with me, but only if it didn't break
> often at all; I enjoyed using Gentoo years ago when I was a student, but
> keeping it working took a lot of time that I do not want to dedicate to
> keeping a working system these days. I'd like to try something like
> morpheus [2], but I suspect that would take quite a lot of time and
> energy to get going and maintain.
>
> Any suggestions / thoughts?

I highly recommend archlinux. The biggest benefit is the no-bullshit
packaging. They don't patch, they don't fix software, they simply
package it. If something is a problem, take it up with the software
developers, not the packagers. Compare that to debian who patches very
many packages.

Marc Collin

unread,
May 11, 2016, 6:27:08 PM5/11/16
to dev mail list
Arch Linux was suckless maybe in 2008. Today it's messy, confused and bloated.
For once, it was one of the first distributions to embrace Systemd.
I think these emails about "what's a suckless distribution" are always
bad, but I'll give my advice (research is on you).

From most usable to least usable (as of today)
--- Alpine Linux
--- OpenBSD
--- 9front
--- stali

Louis Santillan

unread,
May 11, 2016, 7:20:06 PM5/11/16
to dev mail list
There's also CRUX [0] and tinycorelinux [1]. CRUX has more of a
BSD-style init system feel. There's also a CruxEX [2] which includes
a DE. However, I need to spin up a VM of AlpineLinux and see what
it's all about.

[0] https://crux.nu/
[1] http://tinycorelinux.net/
[2] http://cruxex.exton.net/

hiro

unread,
May 11, 2016, 8:33:58 PM5/11/16
to dev mail list
let's maintain a list of of requirements a distro should fulfill.
perhaps we can make a nice table afterwards and see which OS fits
these requirements out of the box.
i'll start with this. convince me otherwise.

1. package system: packages having few, sane dependencies (early
tinycorelinux was excellent in this regard)
2. init system: some fucking scripts obviously
3. no fucking networkmanager, no fucking wicd. instead just
wpa_supplicant (possibly wpa_gui) and udhcpc (udhcpc can run a script
when it gets a lease)
4. no fucking complicated powersaving scripts (laptop tools, s2ram and
such shit) for old shitty CPUs that are inefficient anyway
(speedstep), it's the kernel's job to save power, simplicity over
cargo-culting.
5. man pages exist and work (fuck you tinycorelinux)
6. no stupid sound system, OSS3 or alsa is enough (yay tinycorelinux)
7. usable browser is installed and updated (firefox is failing too
much, it's too slow on my old computer, seems like webkit is the new
IE anyway: chrome for me, perhaps surf for you nerds) (tinycorelinux
has built their own BUGGY webkit browser: fifth, sadly doesn't have a
recent chromium)
8. fucking videos in the browser will always open in the video player
(no fucking embedded window) (fifth browser does this well)
9. hip applications have to run out of the box: skype, chrome, gimp,
openoffice, mplayer, openssh, rsync, irssi, mutt, qmail, gparted,
ntfs-3g, sbase/9base, (some file manager? i have no idea about such),
what else?
10. try to support useful additional features like video acceleration
as automatically (when running suggest.sh) suggested packages (e.g. i
maintain mplayer-g45-alsa.tcz in tinycorelinux for my thinkpad x200
and use it instead of mplayer.tcz)
11. install should take less than 5 minutes and must include all
packages i mentioned above already. (tinycorelinux install takes mere
seconds, but doesn't come with enough useful packages for desktops by
default)
install doesn't ask stupid fucking retarded questions like:
12. hostname: just use some neutral default. i can modify this later
if needed, when i have actual time for such bullshit. (tinycore yay)
13. dhcp/static If there's a lan port and it has a link TRY DHCP,
don't even fucking dare to ask about such shit. only ask me stupid
questions about setting up static ip when the sane default obviously
doesn't work (e.g. still no lease at the end of install). (tinycore
yay)
14. username, just use the default name (e.g. fucksudo, optionally
something more corporate) and let it get root via sudoers without
password (because sadly root is broken by stupid people trying to
nanny us about not running their shitty apps as root) (tinycore yay)
15. password: don't ask me for a fucking password, just log me in to
something that has superuser privileges. IM SITTING IN FRONT ANYWAY. I
know how to run the passwd tool or set up my .ssh dir myself.
(tinycore yay)
16. instead of asking what packages to install just make it part of
the download process: list the packages that are included in each
rootfs. maintain by editing the list of packages and then running a
script that will use this to generate the rootfs. (fuck you tinycore)
17. shell: dash or so
18. text editors: ed, perhaps vi

Alex Pilon

unread,
May 11, 2016, 8:47:38 PM5/11/16
to dev mail list
On Thu, May 12, 2016 at 02:33:41AM +0200, hiro wrote:
> 9. hip applications have to run out of the box: skype,

Corporate need? 'd say Hangouts, and let the browser do it for one less
package, and better Linux quality anyway.

> chrome,

Chromium.

> openoffice,

No pref libre/open?

> mplayer,

mpv? Cleaned up code base.

> qmail,

Would rather not something maintained like Postfix?

> gparted,

fdisk. SRSLY. It's usable, colourized for those of you who care, has
gotten updates recently, and YES, can do GPT and more, unless you're on
out-of-Datian.

> (some file manager? i have no idea about such)

Why?

> install doesn't ask stupid fucking retarded questions like:
> 12. hostname: just use some neutral default.

Something that won't make you stand out—Hey! I'm a XXXXXX system!

Kernel defaults to (none), but not sure that's best.

> 13. dhcp/static If there's a lan port and it has a link TRY DHCP,
> don't even fucking dare to ask about such shit. only ask me stupid
> questions about setting up static ip when the sane default obviously
> doesn't work (e.g. still no lease at the end of install). (tinycore
> yay)

Why ask? Just do it SRSLY. ip address add…

> 17. shell: dash or so

Interactive?

> 18. text editors: ed, perhaps vi

Ed's only good over SSH that feels like 300 baud, and no, I'm not some
old fart.

Vi? Not something with slightly saner bindings? Not sure what you guys
think of Vis.

FRIGN

unread,
May 12, 2016, 12:31:59 AM5/12/16
to d...@suckless.org
On Thu, 12 May 2016 02:33:41 +0200
hiro <23h...@gmail.com> wrote:

Good morning hiro,

> let's maintain a list of of requirements a distro should fulfill.
> perhaps we can make a nice table afterwards and see which OS fits
> these requirements out of the box.
> i'll start with this. convince me otherwise.

it's an interesting idea, though you'll run into contradictions.
There is no definite "best" OS, it depends on what you want to
do with it.

> 1. package system: packages having few, sane dependencies (early
> tinycorelinux was excellent in this regard)

directly contradicts

> 9. hip applications have to run out of the box: skype, chrome, gimp,
> openoffice, mplayer, openssh, rsync, irssi, mutt, qmail, gparted,
> ntfs-3g, sbase/9base, (some file manager? i have no idea about such),
> what else?

The thing is, that once you want to install these "hip" programs,
you end up pulling in tons of dependencies.
The stali approach is to say: Well, if we can't cut the suck out
of the hip, we suck the hip out of the suck and run each application
in sort of a "jail" (namespace, chroot, w/e).
This allows uninstalling programs easily, but of course comes with
some limitations (dynamic libraries and stuff). Statically linking
bloated applications is also a waste, but maybe a way to go.

> 4. no fucking complicated powersaving scripts (laptop tools, s2ram and
> such shit) for old shitty CPUs that are inefficient anyway
> (speedstep), it's the kernel's job to save power, simplicity over
> cargo-culting.

And as I've noticed, you can save a great deal of power not running
bloated programs. A heuristic for this is the RAM usage (and of course
idle CPU %). If you take up 50% of your RAM just browsing the web
no wonder your battery is eaten up faster than chicken wings in Wing
Bowl 2016.
Protip: Decrease display brightness, it's the most important factor.

> 6. no stupid sound system, OSS3 or alsa is enough (yay tinycorelinux)

Even though nothing comes close to sndio.

> install doesn't ask stupid fucking retarded questions like:

You forgot to list the stupid fucking retarded questions.

> 14. username, just use the default name (e.g. fucksudo, optionally
> something more corporate) and let it get root via sudoers without
> password (because sadly root is broken by stupid people trying to
> nanny us about not running their shitty apps as root) (tinycore yay)
> 15. password: don't ask me for a fucking password, just log me in to
> something that has superuser privileges. IM SITTING IN FRONT ANYWAY. I
> know how to run the passwd tool or set up my .ssh dir myself.
> (tinycore yay)

I'm not too sure about this point. On some distributions, you can literally
brick your hardware by writing to some /sys variable as root.
I don't feel comfortable running Chromium as root to be honest, it's
like unprotected sex with a street hooker.

> 18. text editors: ed, perhaps vi

vi is fine.

hiro

unread,
May 12, 2016, 3:39:47 AM5/12/16
to dev mail list
>> 9. hip applications have to run out of the box: skype,
>
> Corporate need? 'd say Hangouts, and let the browser do it for one less
> package, and better Linux quality anyway.

Browser shit often is unstable (and i don't mean just the UI), skype
is quite usable on ubuntu though.
Linux quality will always be low, i just want it to be maintainable by
avoiding the most common complexities. On ubuntu and arschlinux you're
constantly busy having to deal with your OS. Functionality changes all
the time, etc. My scale: grandmother shouldn't be confused.

>> chrome,
>
> Chromium.

yes, whatever works best. i only use it on windows right now.

>> openoffice,
>
> No pref libre/open?

I don't care, they both suck. This is just a fallback in case I don't
have some windows 7 with office 2003 at hand. People often need this
shit.

>> mplayer,
>
> mpv? Cleaned up code base.

mplayer works for me, we can just add both.

>> qmail,
>
> Would rather not something maintained like Postfix?

I made the opposite conclusion. But there is some maintenance anyway:
https://qmail.jms1.net/, netqmail

>> gparted,
>
> fdisk. SRSLY. It's usable, colourized for those of you who care, has
> gotten updates recently, and YES, can do GPT and more, unless you're on
> out-of-Datian.

fdisk is way too complicated to use.

>> (some file manager? i have no idea about such)
>
> Why?

Cause I use one successfully on windows 7, people might want the same
on linux and I can't really blame them. ls -l | awk | sort | grep
doesn't really cut it sometimes.

> Kernel defaults to (none), but not sure that's best.

I'll get used to is.

>> 13. dhcp/static If there's a lan port and it has a link TRY DHCP,
>> don't even fucking dare to ask about such shit. only ask me stupid
>> questions about setting up static ip when the sane default obviously
>> doesn't work (e.g. still no lease at the end of install). (tinycore
>> yay)
>
> Why ask? Just do it SRSLY. ip address add…

Ack.

>> 17. shell: dash or so
>
> Interactive?

I don't discriminate much about this stuff, all shells on linux suck.
All the stupid workarounds around the archaic hardware limitations are
laughable.
just use the shell for less tasks, more specialized tools instead
(i.e. file browser, text editor).

>> 18. text editors: ed, perhaps vi
>
> Ed's only good over SSH that feels like 300 baud, and no, I'm not some
> old fart.

Yeah, I use it in scripts only :)
If there was some good text editor I would've suggested that also, but
I'm not aware.

> Vi? Not something with slightly saner bindings? Not sure what you guys
> think of Vis.

Haven't heard of it, it's not installed on any computer I have touched so far.
The reason i use vi is because it runs everywhere (including in the
horrible terminal). I don't want to help yet an other hipster editor
get popular. I will only accept a good fully graphical text editor to
replace vi, until then vi is good enough really.

The reason why I put shit only plebs would use is cause I want plebs
to use this, too.

I say fuck ubuntu, fuck arsch linux, fuck gentoo, but I can't give
people my tinycorelinux. It is truly unusable on a desktop without
excessive tinkering. So that's why I want an alternative that is fit
to be used by anyone.

Also, I don't think people should RTFM or something and learn the
loonix. Because there is no viable loonix to learn anything about. If
we have this, we can use it to point out what parts of linux are at
least the lesser evils, have some pragmatic solutions for everyone.
From this they will learn which linux tools they should learn about
and not waste time with shitty distractions, that aren't needed at
all.

The idea is to have no surprises. The OS should be boring, legacy.
Just the bare minimum to cope with shitty linux crap AND some escape
routes for common bullshit like excel documents (openoffice), skype
call(yes, the program), facebook(sadly requires these horrible taxing
browsers), cat pics (gimp, qiv), file management (with more optimized
UI for pleb tasks).

And yes, it might require gtk, it might require qt. No big loss
really. I think the idea of seperating all programs from each other
with chroots is interesting, but it wouldn't be my priority.
tinycorelinux tried this with dcore
(http://tinycorelinux.net/dCore/x86/release/) and i don't like it so
much.

There's one place where a related kind of speration proves to be very
benefitial though, and i'd demand this will be used in all cases: When
compiling packages, always do it on a clean system with NO PACKAGE
installed (not the base installation i've been talking about above,
but a special more stripped-down version without all the default
packages).
Because then you don't need to specify secret ./configure
--long-options-disable=yes but still can be sure there won't be no
dbus support or something similar obnoxious.

I'm currently rebooting to do this on tinycorelinux, but it would be
more clever to use a chroot.

hiro

unread,
May 12, 2016, 4:35:58 AM5/12/16
to dev mail list
>> 1. package system: packages having few, sane dependencies (early
>> tinycorelinux was excellent in this regard)
>
> directly contradicts

you can always have multiple packages, e.g. mpg123-oss, mpg123-alsa.
i dont see the problem.
call out flamewar or choose randomly to select a default one. don't
allow anything that isn't proven necessary.
old tinycore showed it works.


> The thing is, that once you want to install these "hip" programs,
> you end up pulling in tons of dependencies.

Yes, that's the compromise you have to make when running linux as a desktop.

> The stali approach is to say: Well, if we can't cut the suck out
> of the hip, we suck the hip out of the suck and run each application
> in sort of a "jail" (namespace, chroot, w/e).

It's interesting, but not worth the complexity to enforce it for all
programs (tinycore decided namespaces are too complex. i think it will
never work as well as on plan9: there's a reason they didnt build upon
unix).

> This allows uninstalling programs easily

I can do that just fine here. you can also keep lists and refcounts to
make it more robust for people with no clue.

> some limitations (dynamic libraries and stuff). Statically linking
> bloated applications is also a waste, but maybe a way to go.

The small base should be linked statically, for bloated shit it
doesn't make a difference. probably not worth it cause many things are
distributed without source anyway and others are just too hard to
compile statically.

> And as I've noticed, you can save a great deal of power not running
> bloated programs. A heuristic for this is the RAM usage (and of course
> idle CPU %). If you take up 50% of your RAM just browsing the web
> no wonder your battery is eaten up faster than chicken wings in Wing
> Bowl 2016.

No, RAM usage is high here, opera has many tabs open, but no CPU
usage. My power usage is as low as it can get really
We can microoptimize with powertop when the day comes, in the end for
real idle (i.e. chrome is closed) the frequency of wakeups becomes a
bigger issue than the plain computational efficiency of some program.

> Protip: Decrease display brightness, it's the most important factor.

Yes, my thinkpad has buttons for that. Also in Xorg the screen turns
off after a while.

> Even though nothing comes close to sndio.

I'd be curious how it would look like altogether on a bsd.

> I'm not too sure about this point. On some distributions, you can literally
> brick your hardware by writing to some /sys variable as root.

That's a bug. Also, just don't write into the file then.

> I don't feel comfortable running Chromium as root to be honest, it's
> like unprotected sex with a street hooker.

I agree, run adduser condom

Rubén Llorente

unread,
May 12, 2016, 5:54:33 AM5/12/16
to d...@suckless.org
hiro <23h...@gmail.com> wrote:
> So that's why I want an alternative that is fit
> to be used by anyone.

I doubt you can make a suckless anything that fits that criteria.

Modern user expectations often require the use of code or technologies
that are just a conceptual mess. Web applications are a great example.
In order to fullfill user expectations, you need to instal a piece of
software that executes every single piece of client-side script it runs
into and then prays for it not to be malware. It also has to deal with
ill-formated pages, which requires some sort of quirk mode on the
parser, which is sucky because it could be rendering anything but what
the web developer intended. Users expect one of these to work, and an
alternative that is not js-happy - for example, requires a confirmation
before executing each script - or does not tolerate malformed pages
therefore does not fit your criteria.

Many people has been trained to expect crappy behaviours from their
software in many fields, and thus any software which is to be used by
anyone in that field must behave in the crappy way the user is
expecting. Some of these fields are expected to be of interest for most
users, like web browsing.

Therefore I submit the theory that software that does not suck but is
usable by everybody is not possible in certain fields, and since at
least some of those fields must be covered by any user-friendly
distribution, then such a distribution must include these bad tools. If
it didn't, it would not be computer-illiterate-friendly.

Which means that a distribution that tries to fit every shoe cannot
possibly be suckless by any means.

I stopped caring too much about user-friendlyness long ago, because
no matter what you do, lambs will always find a way to make a mess out
of the easy to use software. The only way a computer-illiterate is going
to be able to use a computer properly is by educating herself or by
hiring somebody to do the administration.

Adrian Grigore

unread,
May 12, 2016, 7:01:54 AM5/12/16
to dev mail list
I jumped from Ubuntu, to Arch and currently am very happy with
OpenBSD. I think only 9front can supersede it. Note tho, that it's
very bare bones so you'll spend some time understanding it but it's
definitely worth it.
--
Thanks,
Adi

Charlie Kester

unread,
May 12, 2016, 10:42:45 AM5/12/16
to dev mail list
On Wed 11 May 2016 at 17:33:41 PDT hiro wrote:
>let's maintain a list of of requirements a distro should fulfill.
>perhaps we can make a nice table afterwards and see which OS fits
>these requirements out of the box.
>i'll start with this. convince me otherwise.
>
>1. package system: packages having few, sane dependencies (early
>tinycorelinux was excellent in this regard)

Package systems are both a symptom and a cause of bloat. They only
exist because most software, along with its metastasizing dependencies,
is a pain in the ass to compile.

The correct solution isn't hiding those problems with a package
manager, but to avoid those dependencies and the bloat in
individual programs by following suckless principles in the first place.

The ideal distro could get by with a ports system like in the BSDs or
Gentoo. (Which isn't to say those existing systems couldn't be
improved.)

Pickfire

unread,
May 12, 2016, 10:48:17 AM5/12/16
to d...@suckless.org
Gentoo might be helpful in some situation but not most of the time.

A ports like system won't be very helpful most of the time, what about a
low end device like raspberry pi, have you ever thought of that?

I don't think that buying a better computer for the sake of being more
suckless is even suckless, not everyone is that luxurious.

--
_____________________________________
< Do what you like, like what you do. >
-------------------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||

Charlie Kester

unread,
May 12, 2016, 10:52:44 AM5/12/16
to dev mail list
On Thu 12 May 2016 at 02:54:00 PDT Rubén Llorente wrote:
>
>I stopped caring too much about user-friendlyness long ago, because
>no matter what you do, lambs will always find a way to make a mess out
>of the easy to use software. The only way a computer-illiterate is going
>to be able to use a computer properly is by educating herself or by
>hiring somebody to do the administration.

This. The road to suck begins with the desire to please everyone.
Better, I think, to be unabashed elitists and aim to create or use
software designed for the most discriminating tastes.

If the noobs don't like it, tough.

Hans Ginzel

unread,
May 12, 2016, 10:54:35 AM5/12/16
to dev mail list
On Thu, May 12, 2016 at 02:33:41AM +0200, hiro wrote:
>let's maintain a list of of requirements a distro should fulfill.
>perhaps we can make a nice table afterwards and see which OS fits
>these requirements out of the box.
>i'll start with this. convince me otherwise.

Is there a suckless version of Linux From Scratch, please?
What is the best way how to build a suckless system/distribution?
http://www.linuxfromscratch.org/

Kind regards,
Hans

Charlie Kester

unread,
May 12, 2016, 11:01:01 AM5/12/16
to dev mail list
On Thu 12 May 2016 at 07:47:51 PDT Pickfire wrote:
>
>A ports like system won't be very helpful most of the time, what about a
>low end device like raspberry pi, have you ever thought of that?
>
>I don't think that buying a better computer for the sake of being more
>suckless is even suckless, not everyone is that luxurious.

I'm not very familiar with the Raspberry Pi, but I don't think you need
a "luxurious" desktop machine (or laptop) to cross-compile programs for it.

Especially if we're talking about *suckless* programs.

Pickfire

unread,
May 12, 2016, 11:04:00 AM5/12/16
to d...@suckless.org
Yeah, this is a problem. Cross-compiling.

What if the user don't have a second device, if he is rich, he will buy
a laptop or a desktop instead of a raspberry pi.

Hans Ginzel

unread,
May 12, 2016, 11:37:00 AM5/12/16
to dev mail list
On Thu, May 12, 2016 at 07:42:26AM -0700, Charlie Kester wrote:
>Package systems are both a symptom and a cause of bloat. They only
>exist because most software, along with its metastasizing dependencies,
>is a pain in the ass to compile.
>
>The correct solution isn't hiding those problems with a package
>manager, but to avoid those dependencies and the bloat in
>individual programs by following suckless principles in the first place.

Which concrete principle do you mean, please?

Copying the “shared/same code” into each program?
But how to maintain updates of such code, e.g. security update?

The code could be in a library. But if you want to dismiss
packages/dependencies it is necessary to link statically.
But how to determinate which all programs to recompile
in case of (security) update? Grepping header files?

And in multiuser environments, where each user compile it's programms,
because of the “Configuration/customization in header file” principle,
how does the maintainer force every user to recompile
it's appropriate set of programms in case of (security) update
of a library code? Is such system maintainable, please?

Kind regards,
Hans

PS: Think about the Heartbleed bug in openssl for example.

hiro

unread,
May 12, 2016, 11:40:43 AM5/12/16
to dev mail list
> of the easy to use software. The only way a computer-illiterate is going
> to be able to use a computer properly is by educating herself or by
> hiring somebody to do the administration.

I disagree about that part.
My "literate" computer usage is nothing i'm very proud of. I regret it even.

hiro

unread,
May 12, 2016, 11:45:59 AM5/12/16
to dev mail list
> Package systems are both a symptom and a cause of bloat. They only
> exist because most software, along with its metastasizing dependencies,
> is a pain in the ass to compile.

Actually compiling software the right way, without many dependencies
is quite an art these days, so yes, i want to share the results of my
buiding process with others. Many shitty software I'm required to use
doesn't suddenly get less complex just because you like suckless
software.

> The correct solution isn't hiding those problems with a package
> manager, but to avoid those dependencies and the bloat in
> individual programs by following suckless principles in the first place.

Yes, it's too late for that, shitty software already exists and I have
to use it. Now.

> The ideal distro could get by with a ports system like in the BSDs or
> Gentoo. (Which isn't to say those existing systems couldn't be
> improved.)

Now you're suddenly saying packages are ok?

ab

unread,
May 12, 2016, 11:49:52 AM5/12/16
to d...@suckless.org
Hi! Sorry for the newb opinion piece, but wouldn't it be somewhat better
to just take a distro you could consider decent and then work on your
personal modifications with that? It seems kind of contradictory to
dislike X, Y and Z and yet not to put any effort to purging the supposed
hellish evil from your system. I would personally get a distro I'm
comfortable with and build it up because that's the power you have with
open source (or rather, 'open sewers', at your convenience.) and that's
infinitely better than Winblows.

In fact, if you have specific needs I can't see WHY you wouldn't put
effort toward tailoring your system.

Cheers.
-------
ab

hiro

unread,
May 12, 2016, 11:50:44 AM5/12/16
to dev mail list
> A ports like system won't be very helpful most of the time, what about a
> low end device like raspberry pi, have you ever thought of that?

Such low end devices are a waste of ressources and shouldn't be used any more.

> I don't think that buying a better computer for the sake of being more
> suckless is even suckless, not everyone is that luxurious.

you can get great thinkpads for less than 100 euros, they are
considered low-end by people. but they are muuuuuch faster than a rpi
and work even with crappy bloated software, if done right. and they
come with a screen, and a mouse, and a fine keyboard. and a battery.
and a charger. This low end (please forget crappy rpi) should be the
target architecture imo.

hiro

unread,
May 12, 2016, 11:59:57 AM5/12/16
to dev mail list
> This. The road to suck begins with the desire to please everyone.
> Better, I think, to be unabashed elitists and aim to create or use
> software designed for the most discriminating tastes.
>
> If the noobs don't like it, tough.

you guys are arrogant but still sheep. you can create as much elitist
software as you want, you have no chance to be interoperable with
every real-world system that we need access to.

as much as i hate the cheesy term (i find it ridiculous to hint
towards something so obvious, but you "noobs" manage to prove me
wrong), you also don't even get "suckless". it doesn't mean running
pure code exclusively like RMS does.

we demand a certain amount of pragmatism, cause the way towards
perfection can by definition not be the goal. elegant workarounds,
practical alternatives, sane preselection of ressources, interfaces,
apis are needed. and the things we interface are not only dwm window
managers or shitty terminal emulators made to run ncurses
applications.

hiro

unread,
May 12, 2016, 12:08:41 PM5/12/16
to dev mail list
> Hi! Sorry for the newb opinion piece, but wouldn't it be somewhat better

don't worry, lately there are *only* noobs on suckless.

> to just take a distro you could consider decent and then work on your
> personal modifications with that?

I already did that, re-read please.

> It seems kind of contradictory to
> dislike X, Y and Z and yet not to put any effort to purging the supposed
> hellish evil from your system.

Bullshit, time is limited. Don't ignore feasibility. We have to make
compromises sometimes.

> that's the power you have with
> open source (or rather, 'open sewers', at your convenience.) and that's
> infinitely better than Winblows.

No. open source is worthless to me so far. You can try to change this
instead of spouting your free software gospels.

> In fact, if you have specific needs I can't see WHY you wouldn't put
> effort toward tailoring your system.

You said this 3 times now. If you're so convinced being a "newb"
deserves forgiveness how about you make up for not reading somehow?
Make suggestions, i know you're religious...

hiro

unread,
May 12, 2016, 12:11:49 PM5/12/16
to dev mail list
> What is the best way how to build a suckless system/distribution?

i wouldn't use linuxfromscratch
tinycorelinux is a better base imo.

hiro

unread,
May 12, 2016, 12:15:46 PM5/12/16
to dev mail list
> Copying the “shared/same code” into each program?
> But how to maintain updates of such code, e.g. security update?

9front shows this beautifully: just update OS and all programs from
the same repo.

btw, package management can be done very lightly, too. again, look at
tinycorelinux.

hiro

unread,
May 12, 2016, 12:19:17 PM5/12/16
to dev mail list
> PS: Think about the Heartbleed bug in openssl for example.

This is actually an excellent example. openssl has proven rather
worthless due to general quality issues (worse than just this one
heartbleed bug).
What is suckless' response to this? Do we have enough manpower to
maintain a webkit-shim, an archaic terminal emulator, a window manager
AND an ssl library? cinap is trying to fix the latter problem on
9front, but it turns out the whole underlying specs are shit, too. so
it hardly matters how high the quality of your code is. if you want a
secure system you should pull the plug altogether.

suckless doesn't cover all layers.

Raphaël Proust

unread,
May 12, 2016, 12:23:35 PM5/12/16
to dev mail list
On 11 May 2016 at 11:56, Nick <suckle...@njw.me.uk> wrote:
> Any suggestions / thoughts?

Archlinux is very suckless software friendly.

Specifically, it's easy to write your own packages. You can manage the
suckless tools with the package manager (update, query content, etc.).
Example for st:
https://github.com/raphael-proust/rcs/blob/master/pkgs/st/PKGBUILD


Cheers,
--
______________
Raphaël Proust

Cág

unread,
May 12, 2016, 12:56:31 PM5/12/16
to dev mail list
It seems the thread moved into somewhat "what is good
and what is bad".

In my opinion ports system is good, unless you compile
something big, i.e. gcc, gtk, firefox, office packages
(probably TeX, too) should exist in binary form.

My "sane distributions" list includes: Alpine, CRUX,
Gentoo/Funtoo, Puppy, Slackware, Void plus BSDs - Free/Net/
Open/Dragonfly. Pkgsrc is probably the most sophisticated
package manager I've used.

Cág

Charlie Kester

unread,
May 12, 2016, 1:10:00 PM5/12/16
to dev mail list
On Thu 12 May 2016 at 08:45:43 PDT hiro wrote:
>> Package systems are both a symptom and a cause of bloat. They only
>> exist because most software, along with its metastasizing dependencies,
>> is a pain in the ass to compile.
>
>Actually compiling software the right way, without many dependencies
>is quite an art these days, so yes, i want to share the results of my
>buiding process with others. Many shitty software I'm required to use
>doesn't suddenly get less complex just because you like suckless
>software.
>
>> The correct solution isn't hiding those problems with a package
>> manager, but to avoid those dependencies and the bloat in
>> individual programs by following suckless principles in the first place.
>
>Yes, it's too late for that, shitty software already exists and I have
>to use it. Now.

Sucks to be you. ;)

Look, I understand that compromises are often forced upon us. For
example, I'm on Comcast not because I like it but because, despite its
shittiness, it's better than any of the other choices available in my
area. And I only use its email server because it's part of the deal.

But when I'm spec'ing an *ideal* distro, in order to evaluate existing
ones, I don't start with the compromises, I start with what I consider
the ideal.


>
>> The ideal distro could get by with a ports system like in the BSDs or
>> Gentoo. (Which isn't to say those existing systems couldn't be
>> improved.)
>
>Now you're suddenly saying packages are ok?

No, I stand by my original assertion that packages are a bandaid
covering problems which have a better solution.


FRIGN

unread,
May 12, 2016, 1:45:52 PM5/12/16
to d...@suckless.org
On Thu, 12 May 2016 17:59:40 +0200
hiro <23h...@gmail.com> wrote:

> you guys are arrogant but still sheep. you can create as much elitist
> software as you want, you have no chance to be interoperable with
> every real-world system that we need access to.
>
> as much as i hate the cheesy term (i find it ridiculous to hint
> towards something so obvious, but you "noobs" manage to prove me
> wrong), you also don't even get "suckless". it doesn't mean running
> pure code exclusively like RMS does.
>
> we demand a certain amount of pragmatism, cause the way towards
> perfection can by definition not be the goal. elegant workarounds,
> practical alternatives, sane preselection of ressources, interfaces,
> apis are needed. and the things we interface are not only dwm window
> managers or shitty terminal emulators made to run ncurses
> applications.

suckless strives for perfection in an environment where most people
are illiterate.
We are like a book club in india, but just because we literate while
the majority is illiterate it doesn't mean that we are doing something
wrong. We may not be a big force, but at least we're heading in
the right direction.

--
FRIGN <d...@frign.de>

FRIGN

unread,
May 12, 2016, 1:46:46 PM5/12/16
to d...@suckless.org
On Thu, 12 May 2016 18:19:01 +0200
hiro <23h...@gmail.com> wrote:

> What is suckless' response to this? Do we have enough manpower to
> maintain a webkit-shim, an archaic terminal emulator, a window manager
> AND an ssl library? cinap is trying to fix the latter problem on
> 9front, but it turns out the whole underlying specs are shit, too. so
> it hardly matters how high the quality of your code is. if you want a
> secure system you should pull the plug altogether.

LibreSSL is fine, no need to reinvent the wheel. While keeping software
simple it is possible to maintain it with few people.

--
FRIGN <d...@frign.de>

Rubén Llorente

unread,
May 12, 2016, 1:56:30 PM5/12/16
to d...@suckless.org
Let's break it down to logic.

If a user does not know how to use a complex tool, he is not able
to use it properly (1)

The only way to know how to use a complex tool is by learning how
to use it (2)

Computers are complex tools. Therefore, if you don't know how to use
it, you won't be able to use it properly and the only way to use it is
by learing how to use it.

Any claims that somebody without prior knowledge of computers can use
one properly without any education on the matter is only valid if you
think (1) is invalid or that computers are not complex tools. Since
negating any of those points is an absurd, then any claim that
somebody without knownledge of the field can use the computer is an
absurd too.

The reason many people does not regard activities performed with
computers as "complex" in the modern age is because they have been
exposed to them long enough to learn how to use them up to some point.
It is worth noticing that people with actually zero exposition to
computers - like old people in rural isolated areas - is not able to
create an email account or launch a preinstalled game without a great
effort (which counts as learning experience).

Charlie Kester

unread,
May 12, 2016, 2:03:37 PM5/12/16
to dev mail list
Perhaps if you had some experience with the ports systems I mentioned
you would know that the kind of problems you describe are no more a
problem with them than with a package management system. They both
involve an infrastructure describing the relationships between the
various ports or packages, and therefore they both support updating a
particular library and all of the programs which depend on it.

At the level of a "first approximation", the only difference between a
package and a ports system is whether what you download is a precompiled
binary. And, as I said in my original reply, the reason most people
prefer the precompiled binaries is (a) the time it takes to compile; or
(b) their inability to figure out what to do when the build fails. Both
of these problems arise from the complexity of the software involved.
(Among other things, simpler i.e. suckless software is less likely to
have the kind of corner cases that lead to build failures.)

Static linking is a separate issue, but it has long been favored by the
suckless community. (Hence stali.) You might want to read some of the
insightful things Anselm Garbe has had to say about it.

Christoph Lohmann

unread,
May 12, 2016, 2:08:34 PM5/12/16
to dev mail list
Greetings.
There are different kind of users, which everyone has to pick his/her
role. First there’s the inexperienced users, which can form into stub‐
born isolationists or open‐minded learners. Second you have profession‐
als, which have stubborn and open‐minded learners and third there’s the
stubborn and open‐minded wizards. In all of the categories can be revo‐
lutioners.

How can the software world be changed to the better? Depending on the
level you are at, think of how you get people to be open‐minded learn‐
ers. This is best done by being pragmatic and practical: A button labeld
»shutdown« should shutdown a computer, some office application should
not offer stupid cloud storage, it should save my documents in a simple
folder, as I know it from the furniture around the computer and when I
install new hardware in a computer it shouldn’t brag me about some li‐
cense key.

When your environment feels »nicer«, is friendly and simply works, peo‐
ple will ask how you did this and join. Of course, don’t forget the art
of propaganda.

Conclusion: If you can’t make your own life suck less, don’t try to
make the world suck less.

Have fun.


Sincerely,

Christoph Lohmann



Charlie Kester

unread,
May 12, 2016, 3:10:28 PM5/12/16
to dev mail list
On Thu 12 May 2016 at 08:36:44 PDT Hans Ginzel wrote:
>On Thu, May 12, 2016 at 07:42:26AM -0700, Charlie Kester wrote:
>>Package systems are both a symptom and a cause of bloat. They only
>>exist because most software, along with its metastasizing dependencies,
>>is a pain in the ass to compile.
>>
>>The correct solution isn't hiding those problems with a package
>>manager, but to avoid those dependencies and the bloat in
>>individual programs by following suckless principles in the first place.
>
>Which concrete principle do you mean, please?

Sorry, perhaps my answer to this specific question wasn't clear in my
previous reply.

The concrete principles I had in mind when I wrote the above are two:

- For every program, try to minimize the software stack (the number and
size of the libraries it uses, whether directly or indirectly.)

- For every program or library, try to minimize its size and complexity.
Follow the Unix philosophy where each program does only one thing
(coherence) and does it well (elegance).

Personally, I would add one more, although I've never seen it explicitly
endorsed by the suckless community:

- Prefer commandline programs over TUIs, and TUIs over GUIs. (Graphics
applications are often the worst offenders when it comes to bloated
software stacks.)

Josuah Demangeon

unread,
May 12, 2016, 3:16:50 PM5/12/16
to dev mail list
> The reason many people does not regard activities performed with
> computers as "complex" in the modern age is because they have been
> exposed to them long enough to learn how to use them up to some point.
> It is worth noticing that people with actually zero exposition to
> computers - like old people in rural isolated areas - is not able to
> create an email account or launch a preinstalled game without a great
> effort (which counts as learning experience).

An anecdote on this point: In a mildly rural isolated area, there were
some kind of swap shop [1], so custommers can both sell and buy.


To check how their purchases were going, and how much they earned, they
have to use one very old computer: CRT screen, text mode, monospace
bitmap font, light gray background and dark blue foreground, blinking
cursor...

Although, people did not seem to have difficulty to use it:

Enter your custommer number with the keyboard then press the ENTER key:
|_____

*screen wipes out*

Your current balance is: $320
Do you want to use it for the next payment?
Press 'y' key to answer yes or 'n' key to answer no: |_

I have seen someone using maybe faster than what I would do, used to it,
, reading the onscreen indications and doing what was asked. The whole
interface could be reproduced in a shell script only with printf and
read (not an ncurse one).

So it could be simple by its implementation, by its design, and simple
to use even for persons rarely using computers if at all, even
indication on how to interact with the keyboard are provided.

It does not give the impression of being the latest modern software and
it may not look attractive to the majority of nowadays computer users.
This may shift a large amount of user from simple, rather trivial
systems, to much more complex ones, sacrificing sanity.

[1]: http://www.brocantiq.fr/images/midi/31/troc7101.jpg

hiro

unread,
May 12, 2016, 3:54:14 PM5/12/16
to dev mail list
> suckless strives for perfection in an environment where most people
> are illiterate.

which one? window management? terminal emulation?

> heading in
> the right direction.

that's exactly my point. i don't want anyone heading inwards. there
are more valid problems to solve than the dwm color scheme, so to say.

hiro

unread,
May 12, 2016, 4:07:30 PM5/12/16
to dev mail list
> Let's break it down to logic.
way too start... WTF

> If a user does not know how to use a complex tool, he is not able
> to use it properly (1)

I think this is a marvel piece of symmetry, and it works BOTH WAYS, genius:
if someone doesn't know how to use X properly he doesn't know how to
use this complex X (*34.4a).

wow, logical.

> The only way to know how to use a complex tool is by learning how
> to use it (2)

The only way to learn something about X is by using X. Hmm, if the
opposite is true will it rain tomorrow?

> Computers are complex tools.

Like your mom?

> Therefore, if you don't know how to use
> it, you won't be able to use it properly and the only way to use it is
> by learing how to use it.

I heard this somewhere. But she learned faster, I wish you were more like her.

> Any claims that somebody without prior knowledge of computers can use
> one properly without any education on the matter is only valid if you
> think (1) is invalid or that computers are not complex tools. Since
> negating any of those points is an absurd, then any claim that
> somebody without knownledge of the field can use the computer is an
> absurd too.

Sorry, I don't understand such complex logic without medication.

> The reason many people does not regard activities performed with
> computers as "complex" in the modern age is because they have been
> exposed to them long enough to learn how to use them up to some point.
> It is worth noticing that people with actually zero exposition to
> computers - like old people in rural isolated areas - is not able to
> create an email account or launch a preinstalled game without a great
> effort (which counts as learning experience).

kid, i think you're imagining some place in the future where you
actually figured out how to do something useful with a computer. i can
assure you the time will never come, however much you're trying to
learn. because you will get distracted by your bullshit logical
insight.

Charlton Head

unread,
May 12, 2016, 4:16:41 PM5/12/16
to dev mail list
If you use GNU grep you could just type 'grep -r TLS /bin' and it will
find matches for binaries that are likely linked with the TLS/SSL library.
Even better, you could grep for an exact symbol as well. And of course
timestamps will tell you the last time the binary was updated/changed.

You might be able to do this with just the sbase tools, but I don't know how
offhand as I pretty much know which of my programs are using TLS/SSL without
needing special commands.

As for configuration/customization in header files, the point is that users
can't make those changes, as they can potentially find bugs and do things
you did not intend them to do with the program. But if you want to allow
users to make configuration changes and not run their own binaries, then
that is a different use case and I don't think you can satisfy both in a
program that is suckless. So the default is that all configuration is done
in a header file and that is the most secure(among other things).

AND, of course, user configuration of suckless programs are optional and are
not required as far as I can tell.

Evan Gates

unread,
May 12, 2016, 4:32:03 PM5/12/16
to dev mail list
On Thu, May 12, 2016 at 1:16 PM, Charlton Head <char...@openmailbox.org> wrote:
> You might be able to do this with just the sbase tools, but I don't know how
> offhand as I pretty much know which of my programs are using TLS/SSL without
> needing special commands.

find -H /bin -type f -exec grep -lF TLS {} +

hiro

unread,
May 12, 2016, 4:46:23 PM5/12/16
to dev mail list
> So it could be simple by its implementation, by its design, and simple
> to use even for persons rarely using computers if at all, even
> indication on how to interact with the keyboard are provided.

I agree with your implications. Suckless is not about understanding
every shitty software in great detail.
I can divide into a careful selection of small useful, simple tools, a
bigger selection of useful, but not very simple tools and an even
bigger selection of useless and very complex tools.
The biggest enemy is the last group. As it's also the biggest
selecting (specifying) it is impossible (I can smell, but I can't
teach you to smell). By selecting the first (base tools in my OS) and
second group (stupid extensions like ssl and webkit) we have achieved
the same much easier. We can distance ourselves from the third.

Computers are complex, but their purpose is to make our lifes easier.
To put things on a scale, humans are anyway even more complex.
With the correct collaboration we're able to make computers useful, we
build good abstraction layers, interfaces that hide other people's
responsibilities and contribute to net benefit by doing stuff in our
limited domain. But we all effect everything together.

We at suckless believe in certain abstraction layers and detest many
mainstream linux ones.
Especially plan9 and unix has brought to us the idea of the files and
folders abstraction, we are saddened by people reinventing less
capable abstractions for the same purposes.

When you leave away most other shitty abstraction layers there are
very few left that you would need to learn about. Clearly some other
people on this list haven't done their job here yet, be humble,
please, cause you are not our genius and savior.

The things that I value most are also the most simple. Finding
simplicity though is only to be accomplished by the best. Most of us
can't actually contribute much to it. So at least make sure that
what's already there can be used and what is clearly evil is
discouraged of by demonstration of real alternatives. If we were not
able to show off that our way is better we would have to admit
failure.

We technologists are not the only ones who learned from Unix and Plan9.
Many normal people around me with very little computer training use
files and folders more wisely than most nerds could even dream of.
Some things are *not* a matter of experience, some are also a matter
of intelligence or even more banal, discipline.

hiro

unread,
May 12, 2016, 4:48:40 PM5/12/16
to dev mail list
> So it could be simple by its implementation, by its design, and simple
> to use even for persons rarely using computers if at all, even
> indication on how to interact with the keyboard are provided.

Jason Young

unread,
May 12, 2016, 5:10:07 PM5/12/16
to d...@suckless.org
I was content to just watch this conversation play out in silence, as it
proved amusing and even insightful in parts. Even the stuff you've said
in other parts of this thing are actually good.

In this post, that falls apart. Instead of actually taking apart this
person's argument, which is fairly clearly stated, you resort to trash
talking like the tween you act like.

If you had any problem with the ideas behind what Rubén said, you would
have used those arguments to shoot them down. Instead, it's straight to
"ur mom lol".

Maybe it was unrealistic of me to expect professionalism behind the
mailing list of a group of projects that are fairly major in the
software world.

But since you like trash talking so much, Hiro Protagonist wannabe,
here's a little more to wrap this all up: You are the biggest tool I've
ever directly had any contact with, and were somebody to make a
screwdriver the size of the observable universe, that would still be true.

And on the actual topic of this thread, Alpine Linux seems to be a
fairly suckless distro. I'm impressed with its speed and simplicity.
signature.asc

Charlie Kester

unread,
May 12, 2016, 5:21:56 PM5/12/16
to dev mail list
On Thu 12 May 2016 at 14:09:50 PDT Jason Young wrote:
>
>And on the actual topic of this thread, Alpine Linux seems to be a
>fairly suckless distro. I'm impressed with its speed and simplicity.

Agreed.

Josuah 'sshbio' Demangeon

unread,
May 12, 2016, 6:32:01 PM5/12/16
to dev mail list
Thank you for introducing to me in person the suckless philosophy, now I
appreciate it more. Furthermore, that was interesting and I adopt this
vision.

It is true that I am definetely not experienced enough to contribute, so
at the best, I can use and promote of the simplest tools that are useful.

hiro

unread,
May 12, 2016, 6:54:21 PM5/12/16
to dev mail list
> I was content to just watch this conversation play out in silence, as it
> proved amusing and even insightful in parts. Even the stuff you've said
> in other parts of this thing are actually good.

Stay technical.

> In this post, that falls apart. Instead of actually taking apart this
> person's argument, which is fairly clearly stated, you resort to trash
> talking like the tween you act like.

So you don't like my tone...

> If you had any problem with the ideas behind what Rubén said, you would
> have used those arguments to shoot them down. Instead, it's straight to
> "ur mom lol".

This is not the place to teach people basic skills of argument.
I can only interprete his mail as trolling or at least a bad test of
us. His rhetorics are so painful I couldn't get myself to read it
again. If you require elaboration to understand why please consult a
psychologist, cause you must have some serious problem.

> Maybe it was unrealistic of me to expect professionalism behind the
> mailing list of a group of projects that are fairly major in the
> software world.

1st point is correct, second is irrelevant.

> But since you like trash talking so much, Hiro Protagonist wannabe,
> here's a little more to wrap this all up: You are the biggest tool I've
> ever directly had any contact with, and were somebody to make a
> screwdriver the size of the observable universe, that would still be true.

I'm speechless. Next time please disagree with some technical points,
else it's a waste of my nerves.

hiro

unread,
May 12, 2016, 6:56:14 PM5/12/16
to dev mail list
> Thank you for introducing to me in person the suckless philosophy, now I
> appreciate it more. Furthermore, that was interesting and I adopt this
> vision.

Nothing here is in person. It's all public humility.

Jason Young

unread,
May 12, 2016, 7:32:19 PM5/12/16
to d...@suckless.org
Congratulations. I couldn't have summed up better exactly what the
problem is with modern software communities.

You're willing to go into playground invective at a moment's notice, but
suddenly someone calls you on it, and you're all courtier's reply. That
you had trouble "interprete"-ing his "rhetorics" proves that, while you
might be up to date in IT and CS, you need some remedial classes in
reading comprehension.

You wanna get technical? Let's get technical:

What Rubén was trying to point out was this: computers are by their very
nature complex tools, and nobody knows how to use them without being
taught in one way or another. Some try to figure it out themselves, some
consult documentation, some attend classes.

However, people don't realize the complexity exists, partly because of
UI streamlining over the years, and partly because, as a society, we're
around these machines a lot more often.

suckless is about *simplicity*. Simplicity != easy to use. Simplicity
means, basically, there's fewer parts to break, and there *being* fewer
parts, it's easier to see *where* it breaks. Unfortunately, the more
"easy to use" you make a piece of software, the bigger it gets and the
more dependencies it accrues, and you're right back at suck software.

And if you think that the reasoning and philosophy behind all the
software and computer science stuff that you do isn't important, you're
part of the problem.

tl;dr Think about *why* you're doing this shit instead of doing it to
*be* doing it.
signature.asc

Louis Santillan

unread,
May 12, 2016, 8:10:51 PM5/12/16
to dev mail list
On Thu, May 12, 2016 at 4:31 PM, Jason Young <doo...@gmail.com> wrote:
[SNIP]
> suckless is about *simplicity*. Simplicity != easy to use. Simplicity
> means, basically, there's fewer parts to break, and there *being* fewer
> parts, it's easier to see *where* it breaks. Unfortunately, the more
> "easy to use" you make a piece of software, the bigger it gets and the
> more dependencies it accrues, and you're right back at suck software.

I don't believe the second part of this paragraph is a necessary
result or consequence of suckless. In fact, I'd argue that suckless
advocates for verified dependencies as opposed superfluous or presumed
dependencies. I feel like the following two quotes are corollaries of
suckless.

“Perfection is achieved, not when there is nothing more to add, but
when there is nothing left to take away.” - Antoine de Saint-Exupe

“Everything should be made as simple as possible, but not simpler.” -
Albert Einstein

hiro

unread,
May 12, 2016, 8:29:03 PM5/12/16
to dev mail list
Jason, needless complexity will always have bad impact upon the user.
in other words a user benefits from simple programs because simple
programs only need simple interfaces.
also for a programmer, clean simple code is "easy to use".
why do we have to explain such things? this is suckless?!

Ben Woolley

unread,
May 12, 2016, 8:45:53 PM5/12/16
to dev mail list
The word "properly" presumes a purpose/end/effect. Billions of people use computers for their own purposes. If you are going to be making an argument about how people should be using their computers, you need to explain what purpose you are using, and why it doesn't satisfy the purpose.

Pickfire

unread,
May 12, 2016, 11:51:54 PM5/12/16
to d...@suckless.org
On Thu, May 12, 2016 at 05:50:27PM +0200, hiro wrote:
>> A ports like system won't be very helpful most of the time, what about a
>> low end device like raspberry pi, have you ever thought of that?
>
>Such low end devices are a waste of ressources and shouldn't be used any more.
>
>> I don't think that buying a better computer for the sake of being more
>> suckless is even suckless, not everyone is that luxurious.
>
>you can get great thinkpads for less than 100 euros, they are
>considered low-end by people. but they are muuuuuch faster than a rpi
>and work even with crappy bloated software, if done right. and they
>come with a screen, and a mouse, and a fine keyboard. and a battery.
>and a charger. This low end (please forget crappy rpi) should be the
>target architecture imo.

I haven't am planning to buy one for less than 200 euro, I haven't found
one which is less than 100 euro, I really hope that I can find it.

--
_____________________________________
< Do what you like, like what you do. >
-------------------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||

Anselm R Garbe

unread,
May 13, 2016, 1:36:31 AM5/13/16
to dev mail list
On 13 May 2016 at 01:31, Jason Young <doo...@gmail.com> wrote:
> suckless is about *simplicity*. Simplicity != easy to use. Simplicity
> means, basically, there's fewer parts to break, and there *being* fewer
> parts, it's easier to see *where* it breaks. Unfortunately, the more
> "easy to use" you make a piece of software, the bigger it gets and the
> more dependencies it accrues, and you're right back at suck software.

This is a delusion. "easy to use" does not imply complexity.

A rule of thumb for UI design is this: if a UI offers multiple ways to
achieve the same result, it sucks and becomes less "easy to use". It
confuses the user. And such an UI costs the extra price of additional
complexity.

Instead "easy to use" interfaces should just reflect the solution
underneath and will only be simple if the solution underneath is
simple.

Also note the quotes Louis replied, they explain it much more crisp.

-Anselm

Ben Woolley

unread,
May 13, 2016, 2:32:54 AM5/13/16
to dev mail list
I agree that simpler implementations can have greater "power of expression". However, optimizing the base case can be an added complexity that makes the aesthetic complexity less.

I make a distinction between structural complexity and aesthetic complexity. Aesthetic complexity is the complexity of the path through the structure, from end to end. Adding structural shortcuts can often simplify the path.

I like to start with a good "power of expression", and then solve the aesthetic problems. This certainly leads to "multiple ways to achieve the same result", but is a valuable enhancement. For example, ports that build from source, and then binary packages that build from those ports. Surely, having both options is better, and having one based on the other is a smart enhancement.

However, sometimes I like to create a simple optimized solution that is designed for a single case. That can seem like a less complex thing, but in practice this leads to multiple solutions for a variety of cases. For example, there are usually dozens of window managers available. If you look at it system-wide, each was developed to not suck in some way, but now it is a bit of a struggle to get all of the apps to play nice with all of the different management styles.

Basically, if you are writing code, you are adding complexity. How useful that code is, is very important to the "problem of complexity".

In the end, I say this: if you are going to build something, build it to slay something else. That way you actually reduce someone else's suck system-wide. Like the way nginx overtook Apache. There can be misses, but let those be shots across the bow.

Ben

hiro

unread,
May 13, 2016, 4:02:30 AM5/13/16
to dev mail list
you're making up words there. nobody cares about your aesthetic problem

if your code only adds complexity to people's lifes you shouldn't
code. my code makes other people's lifes easier.

finding the right abstractions is a process.

this does not apply only to code btw.

Rubén Llorente

unread,
May 13, 2016, 7:08:46 AM5/13/16
to d...@suckless.org
Ben Woolley <taut...@gmail.com> wrote:
> The word "properly" presumes a purpose/end/effect. Billions of people use computers for their own purposes. If you are going to be making an argument about how people should be using their computers, you need to explain what purpose you are using, and why it doesn't satisfy the purpose.

Indeed.

Obviously, the user must be able to figure the application he is going
to use out, whatever it might be. The arguments apply the same to both
users who want to browse some porn sites and users that want to simulate
structure integrity problems with the computer.

hiro

unread,
May 13, 2016, 8:28:52 AM5/13/16
to dev mail list
the main complication is not to learn how to use a piece of software,
but to find or create the right one to use.

Marc Collin

unread,
Jan 31, 2017, 4:21:34 PM1/31/17
to dev mail list
Gentoo's init system (OpenRC) could soon move from Makefiles to Meson
and add python3 and ninja to dependencies because of it.
https://github.com/OpenRC/openrc/issues/116

Cág

unread,
Feb 1, 2017, 3:35:48 AM2/1/17
to d...@suckless.org
Marc Collin wrote:

> Gentoo's init system (OpenRC) could soon
> move from Makefiles to Meson and add
> python3 and ninja to dependencies because
> of it.
> https://github.com/OpenRC/openrc/issues/116

Isn't Portage written in Python? Gentoo uses
glibc, coreutils, the package manager is in Python
and now there will be Python in the init system.
That's too much for a suckless distribution,
in my humble opinion.


Cág


Marc Weber

unread,
Feb 1, 2017, 3:41:59 AM2/1/17
to dev
> Isn't Portage written in Python?
There is an Haskell implementation (or was), too.

nixos.org sucks less AFAIK (its deterministic), but sometimes it sucks
that some packages haven't been packaged yet - but many have..

Still there is one remaining problem: A suckless cross platform language
dependency tool. Does anybody know such (other than rpm which may not
understand github thus is not for devs?)

Is anybody interested in such?

All packages for distros could be derived from such.

Marc Weber

Cág

unread,
Feb 1, 2017, 3:51:04 AM2/1/17
to dev mail list
Mark Weber wrote:

> nixos.org sucks less AFAIK (its deterministic),
> but sometimes it sucks that some packages
> haven't been packaged yet - but many have..

Nix is C++, Perl and autotools.

> All packages for distros could be derived from
> such.

pkgsrc?


Cág


Marc Weber

unread,
Feb 1, 2017, 4:07:48 AM2/1/17
to dev
> Nix is C++, Perl and autotools.
* There are attempts to get rid of Perl (don't know about status)
* for the nix lanugage there are two alternative implementations
- guix (uses guile scheme)
- an experimental JS implementation

There are two aspects which can suck
A) the language being used
B) the system which got implemented

A) may suck
B) sucks less IMHO.


> pkgsrc
What about "Vim + plugin" + vim python support because plugin requires it?
Is pkgsrc strong enough to handle such "real world situation" ?

But it could be a nice source / project to collaborate with as well.
Thank you!

Marc Weber

S. Gilles

unread,
Feb 1, 2017, 4:16:15 AM2/1/17
to dev mail list
For what it's worth, 2/3 of my Gentoo machines use musl, and 2/3 use s6
as the init system. Parts of Portage do have a hard dependency on bash,
though, which really sucks.

--
S. Gilles

Marc Weber

unread,
Feb 1, 2017, 4:20:12 AM2/1/17
to dev
nixos.org -> you can have distributed builds without sacrifying the
running system (sandoxed)

=> also allows keeping multiple setups on disk so that you
can switch or run them in a virtual machine for testing

gentoo -> rebuilding X -> you cannot keep X running


Even though nixos C++ usage might suck, for me the benefits outweigh it.

Marc Weber

Cág

unread,
Feb 1, 2017, 5:05:25 AM2/1/17
to dev mail list
Mark Weber wrote::
>> Nix is C++, Perl and autotools.
> * There are attempts to get rid of Perl
> (don't know about status)
> * for the nix lanugage there are two
> alternative implementations
> - guix (uses guile scheme)
> - an experimental JS implementation

Guile only replaces Perl in Guix, but not C++.
People in GNU must have thought:
"Hmm, we already have one dialect of
Lisp, that's not enough. We need another
one for a package manager".
Guix is actively developed though.
As well as Hurd.

> What about "Vim + plugin" + vim python
> support because plugin requires it?
> Is pkgsrc strong enough to handle such
> "real world situation" ?

You can set building params in globally
in mk.conf and locally in the makefile.
pkgsrc is basically a ports system
with options galore and highly portable
(claims to be, at least). For particular
cases you will have to do some digging
but default build options are pretty
sane most of the time.

> But it could be a nice source / project to
> collaborate with as well.

If interested, the site is here[0],
the PDF guide is here[1],
there are also some FAQs on netbsd.org.

> Thank you!


Cheers,
Cág

----
[0]: http://pkgsrc.org/
[1]:
https://www.netbsd.org/docs/pkgsrc/pkgsrc.pdf


sylvain....@gmail.com

unread,
Feb 1, 2017, 6:59:06 AM2/1/17
to dev mail list
c++/python/haskell/perl/bash/etc are not suckless, period.

--
Sylvain

Jean Louis

unread,
Feb 1, 2017, 7:48:38 AM2/1/17
to dev mail list
On Wed, Feb 01, 2017 at 10:05:04AM +0000, Cág wrote:
> Mark Weber wrote::
> >> Nix is C++, Perl and autotools.
> > * There are attempts to get rid of Perl
> > (don't know about status)
> > * for the nix lanugage there are two
> > alternative implementations
> > - guix (uses guile scheme)
> > - an experimental JS implementation
>
> Guile only replaces Perl in Guix, but not C++.
> People in GNU must have thought:
> "Hmm, we already have one dialect of
> Lisp, that's not enough. We need another
> one for a package manager".
> Guix is actively developed though.
> As well as Hurd.

Your statement is inadequate and generalized. Review the history of
Guile and see why it came into the existence.

Jean Louis

sylvain....@gmail.com

unread,
Feb 1, 2017, 1:24:15 PM2/1/17
to dev mail list
On Wed, Feb 01, 2017 at 03:45:40PM +0300, Jean Louis wrote:
> Your statement is inadequate and generalized. Review the history of
> Guile and see why it came into the existence.

Useless to spend time on this, since guile is not suckless. The only thing
interesting related to guile is its removal from any "critical" software
component, that counts for the runtime _and_ the SDK (like
python/c++/ruby/javascript/perl/haskell/bash...).

--
Sylvain

Jean Louis

unread,
Feb 1, 2017, 1:41:45 PM2/1/17
to dev mail list
It is not suckless. I like the s6 tools for simplicity. Computers
before 20 years were much more suckless than today.

Jean Louis

Josuah Demangeon

unread,
Feb 1, 2017, 1:48:56 PM2/1/17
to dev mail list


sylvain....@gmail.com:

> Useless to spend time on this, since guile is not suckless.

I am curious about the languages that you would consider suckless.

I learned POSIX shell scripting and awk, I am also trying C and a few lua.

Is there something else you would advise to learn or something to avoid in properly used sh / awk / C / lua? Myrddin is on my to-do list.

sylvain....@gmail.com

unread,
Feb 2, 2017, 6:20:15 AM2/2/17
to dev mail list
Write it in simple C, it's the best compromise. Compose C programs with simple
sh scripts.
On the long term, you do not end up with a count of languages which has been
multiplied by 7348974389247389473298 hence increasing in pathological way the
cost of a "lambda user" open source OS regarding its software integration and
maintenance. Only thinking about a technical comfort zone in a specific case is
the opposit of suckless: think "as a whole", from coding to distro integration
and maintenance in terms of human and technical cost. If you are here, you are
looking for a cure to those diseases. Tons of our peers are toxic to others,
the worst: they are networked, powerfull and many are perfectly aware of their
poison.

What's totally crazy, we have still people posting to the suckless mailing list
who are 100% missing the point.

----

If you cannot "see" this and want to keep your way: try "swift" from our dear
friend apple corporation, which is better than "lua", of course! But you
should consider the trendy "javascript", but carefull! You must choose the
"most powerfull" javascript engine: I think the magnificient c++ object
oriented design of google v8 engine (free from any implicit code that will
force you to embrace the whole simple and straight forwarded design in order to
know what just one line of code actually do) will finish to convince you that's
the way to go... and I don't forget the amazing "repo" SDK much more able to
make you a good coffee than those GNU autotools.
In you quest of comfort zone, don't put aside, ruby (look at this marvel which
is puppet!!!), php, perl5 (perl6 is soooo much better), python2, python3 and
all the other (heard something about about haskell).

Maybe you heard about others?

In the end, you could stick with guile, or dive in c++/java(jee)/d/ocaml/etc.

Of course, it's easy to use any of them:they are all packaged on redhat/suse/ubuntu...

--
Sylvain

Josuah Demangeon

unread,
Feb 2, 2017, 7:03:06 AM2/2/17
to dev mail list


sylvain....@gmail.com:
>
> Write it in simple C, it's the best compromise. Compose C programs with simple sh scripts.

It is fine this way, I will take this route.

> If you are here, you are looking for a cure to those diseases.

Yes, and am glad of what I already found here. Thank you all for those efforts.

> If you cannot "see" this and want to keep your way: try "swift" from our dear
> friend apple corporation, which is better than "lua", of course! [...]

Definetely not suckless.

Thank you for this answer, I think I got the point.

Михаил Ивко

unread,
Feb 2, 2017, 7:24:36 AM2/2/17
to dev mail list
2017-02-02 18:19 GMT+07:00 <sylvain....@gmail.com>:
> On Wed, Feb 01, 2017 at 07:48:34PM +0100, Josuah Demangeon wrote:
>>
>>
>> sylvain....@gmail.com:
>>
>> > Useless to spend time on this, since guile is not suckless.
>>
>> I am curious about the languages that you would consider suckless.
>>
>> I learned POSIX shell scripting and awk, I am also trying C and a few lua.
>>
>> Is there something else you would advise to learn or something to avoid in
>> properly used sh / awk / C / lua? Myrddin is on my to-do list.
>
> Write it in simple C, it's the best compromise. Compose C programs with simple
> sh scripts.

Why exactly C and Shell? Other than obvious historical reasons, I mean.
It's a depressive thought that we as an industry hasn't come up with a
better way to
design systems than by combining two haphazardly thrown together languages
from the 70s, and there's no room for improvement

sylvain....@gmail.com

unread,
Feb 2, 2017, 8:17:33 AM2/2/17
to dev mail list
Because those are the best compromise, far from perfect, they just suck less.
This is why "suckless" exists.

Please yourself to design a new language (you have already bazillions of
"competitors"). But first thing first: do write a reasonably performant kernel
with its 'kernel profile" (minimal set of the syntax in order to generate
reasonably good kernel machine code). I wish you very good luck with GPU
drivers, hence you should narrow it down to servers only... at the beginning, a
bit like gnu hurd? Don't forget a syntax profile friendly with mathematical proof,
but the basic syntax profiles in order to get something interesting actually
running should be reasonably writable by a very small set of coders in a
reasonable amount of time: easy to write alternatives is way more important
than to have one fat and ultra-complex, corporation locked-in, mega comfy,
super duper language.

Look at rust, they are trying: they are writting a kernel. But face the
consequences: there are no syntax profiles... you get strings hardcoded in the
syntax, why not threading while they're at it... lol. I wish you luck with
their SDK: they have a rust compiler written in rust, but the main SDK
(bootstrap), is just an insane bloat based on smelly c++ and... the infamous
and magnificiently "comfy" mozilla build system. Where is the suckless compiler
written in simple C with basic makefiles or idiotic but soooo ez to understand
simple sh scripts?

Oh! Wait! But that's not our pb, it's properly packages and ez to access in
redhat,suse and ubuntu!
It's there why not use it!

--
Sylvain

Михаил Ивко

unread,
Feb 2, 2017, 8:57:39 AM2/2/17
to dev mail list
> Look at rust, they are trying: they are writting a kernel. But face the
> consequences: there are no syntax profiles... you get strings hardcoded in the
> syntax, why not threading while they're at it... lol.

The only part of rust srings that's "hardcoded" is that str is
different from [u8], so that indexing operations can be implemented
differently (to respect unicode character boundaries).
Things such as allocating memory for concatenated strings are not hardcoded.
This begs the question of why str is a primitive type, not a simple
wrapper type. I don't know enough rust to answer that.

> I wish you luck with
> their SDK: they have a rust compiler written in rust, but the main SDK
> (bootstrap), is just an insane bloat based on smelly c++ and... the infamous
> and magnificiently "comfy" mozilla build system. Where is the suckless compiler
> written in simple C with basic makefiles or idiotic but soooo ez to understand
> simple sh scripts?
>

So, to build rust without rust compiler you have to deal with suck. To
build C without C compiler... Can you even do that in this day and
age?

sylvain....@gmail.com

unread,
Feb 2, 2017, 9:31:50 AM2/2/17
to dev mail list
Never really got intereted in this. Maybe there is a C compiler written in one
of the ML dialects (the ML guys did re-write many apps, but forgot a
performant kernel with enough drivers).

Nowdays, you have clang which requires a good c++ compiler/runtime in order to
compile C. gcc is now similar: you must have a c++98 compiler/runtime to
compile gcc (that's why I did start slowly a kind of modular fork of gcc:
currently in libiberty breaking down). gcc steering commity is now evil and/or
strongly sick (gcc still uses that svn junk, it's kind of a proof that
something is not "right" over there). Its kind of opacity and kind of under the
hood activities do not help: since it's one of the corner stone of open
source software like linux is, fishy, damn fishy.

--
Sylvain

Reply all
Reply to author
Forward
0 new messages