14 ms·
What the GNU?
- bitwize 5y agoGNU is more than a shitty POSIX userland. Most of the interesting stuff is happening outside coreutils: Emacs, gcc, Guile, Guix, GIMP. The next phase of the project is to bootstrap a trustworthy free software OS from as small a binary kernel as possible, which is what GNU Mes is all about.
- nix23 5y ago>small a binary kernel as possible, which is what GNU Mes is all about Hurd or seL4...but obviously no one is interested in such an Kernel for servers, mobile or the desktop. From MY perspective, the OSS OS community was in a much healthier state in the ~05's then it is now (Linux, BSD, Solaris, Minix etc) where all maintained and gave plenty of selection of ~OSS operating-systems, now it's just that Linux.
- froh 5y agoHow do you see fuchsia in that list of micro kennels?
- nix23 5y agoNot as a Server/Desktop OS. Both are not intended as a generic OS, but rather specialized solutions..just like for example QNX. Don't get me wrong, i would love being wrong about that.
- froh 5y agoI wonder if ell see a three layer run time going forward. Bottom layer is about hardware partitioning and Ressource sharing. Middle layer is networking, file systems, ACL, monitoring, graphics and other acceleration in a rich os. Or monolithic deterministic real time blobs. Or small dedicated OS partitions for, security or similar hardware jailed applications. Top layer is containers/jails inside the rich OSs. Then fuchsia is a candidate for the bottom layer and for the security OSs and maybe for specialized OCI payloads.
- tut-urut-utut 5y agoWell, that kinda proves that FSF was right. Linus, the only GPL licensed OS of the ones you mentioned, is the only one that survived the test of time.
- pjmlp 5y agoThat is why the Linux Foundation is now pushing Zephyr for IoT, right?
- formerly_proven 5y agoZephyr seems to mostly target Cortex-M-based devices, which can't run Linux in the first place.
- pjmlp 5y agoZephyr is just one among many MIT/BSD/Apache POSIX alternatives to Linux on IoT space, which CPUs it runs on is secondary.
- nix23 5y agoNo one here talks about IoT, i talk about a real OS...you as a Windows person should know the difference ;) Edit: Linux is not a OS but a Kernel...got it? Your should know the difference as a Windows/UNIX person ;)
- pjmlp 5y agoSo when Linux runs on IoT devices it stops being a real OS? Got it. By the way I am a Windows/UNIX person, note the UNIX part.
- nix23 5y ago>That is why the Linux Foundation The FSF is not the Linux Foundation
- nix23 5y agoYes, i think the same about the Kernel/FSF. However i don't care about the license (since i use BSD)
- pjmlp 5y agoThe IoT space is full of POSIX alternatives, all BSD/MIT/Apache licensed, and this is what will eventually drive Linux away from that market. Fucshia is already shipping on the Nest, lets see what happens next.
- bitwize 5y agoNot even Hurd or seL4, but like... some binary runtime environment small enough to be audited at the machine code level, that could bootstrap something bigger, that could bootstrap a tiny simple C compiler, that could bootstrap GCC, that could then be used to bootstrap the most successful GNU kernel, Linux-libre.
- forgotpwd16 5y ago>no one is interested in such an Kernel for servers, mobile or the desktop Excluding Google (Fuschia) and Huawei (HarmonyOS).
- nix23 5y agoBoth are not made for Server or Desktop Systems, one is for IoT possibly Mobile, the other is...well i don't know..freedom from Android..politics?
- don-code 5y agoWhile I generally agree with the author that the userland monoculture isn't helpful for portability, that argument belies the fact that most people I've worked with _want_ those extra features that GNU gives them. I started using Linux and IRIX around the same time - but I actually didn't really "understand" the difference, because someone had gone out of their way to install the GNU userland. That's something the article leaves out: while GNU and Linux are many times seen as a unit, there's a rich history of installing the GNU tools on other Unixes, because of the extra functionality they offer. There is, of course, the argument against portability. At my last job, as the only Linux user on my team, I more than once wrote shell scripts that only worked for me - as soon as someone on macOS ran them, they'd run into a missing feature on `sed`, or a different calling convention on `date`. Which is why, at my current job, I'm very begrudgingly a macOS user - it makes me a better coworker.
- mplanchard 5y agoThis has always been a problem for me as well, but we’ve pretty much solved the issue at my current job by using nix to manage the development environment. With nix-shell and direnv, we can know that anyone working on the project is using the same versions of coreutils, sed, grep, make, etc. The learning curve on nix is a little steep at first, but it’s been worth it: we’ve got devs running five distributions of Linux, plus a couple on MacOS.
- spinax 5y agoOne of the first things we did on Solaris installs was install the GNU userland (it's been so many decades, I forget the specifics - packaged somehow, not ./configure; make) so we could get GNU sed and awk (and bash and vim) amongst all the other things. My anecdotal experience matches yours, we wanted those GNU features on our Solaris experience, they were/are useful extensions.
- forgotpwd16 5y agoThe author didn't really bother researching much the historical points. Someone can read the initial GNU bulletins to see that Stallman was planning a kernel before those tools. It isn't that he chose (as said) to write the userland first but did while waiting for TRIX to be released as free, something that never happened. Of course when Linux became a viable they decided to abandon their plan and concentrate resources on userland. Kinda opposite to the usual of similar projects being co-developed leading to fragmentation. If there's an already capable kernel, why write another? Another problematic point is the "look how much lines it takes, such a bloat" for `yes`. And then proceed to call it convoluted for pointless reasons. I guess being[1] about 100x (you read that correctly) faster is a pointless reason if a binary program you use rather develop can be written in fewer lines of code. Those GNU devs really should be more lazy. Also there's "portability". If you write a program that is utilizing Linux' specific calls then your program isn't portable to other Unix-like systems. Same way that if you write `/usr/bin/env bash` at your script it won't be portable to other shells. You can of course install some POSIX utils implementation and use those, and you'll limiting yourself, but at least you'll have portability to systems you aren't using. [1]: https://www.reddit.com/r/unix/comments/6gxduc/how_is_gnu_yes_so_fast/ https://www.reddit.com/r/unix/comments/6gxduc/how_is_gnu_yes...
- pwdisswordfish0 5y ago> waiting for TRIX to be released as free, something that never happened Needs correction.
- the_af 5y agoI suppose this is part of the new generation of people getting into software (not saying Ariadna is one of them, but it wouldn't surprise me). She is right that in the Spanish world (and in Latin America in particular) RMS and the FSF are well-respected, with little of the controversy that sparked in the English-speaking world -- thankfully! The article raises interesting points, but the whole rant against GNU and FSF is weird. GNU (yes, and Linux) and FSF is why many of us are in this business. They played a huge role in the career and passions of many of us -- I feel entitled to say "us" just like the author of TFA carelessly speaks about "we" -- and misunderstanding the history of how we got there doesn't help. To me it feels as if a new generation of tech minded people have started taking things for granted, "why do we even need all those movements fighting for users' freedom, if I am free now?". It's a bit depressing. The different approaches and goals of Linus Torvalds and RMS are both valid, and only in hindsight can we say one triumphed and the other didn't, but the article makes it look as if one of the two was obviously wrongheaded. So some interesting points, but it could do without the whole rant against GNU and the FSF, and without the accusations of cultishness.
- paxcoder 5y agoOnly - we're not free. You have a point about young people not being to appreciate not having freedoms perhaps. But our generation has already dropped the ball. We're non-free when it comes to most hardware, web services, mobile software. This is because people don't really care about their freedoms. They settle for "pragmatic" benefits of open source software. People enjoy freedoms themselves, mind you, but they the problem is that they think that anything beyond that there be conspiracy theorists or something. Along with Stallman's social awkwardness, the culprit is Linus' siding with TiVoization and against GPLv3 in my opinion. Anyway, It's not over, and knowing how markets tend to monopolies, we'll be fighting forever. Which won't be a problem once numbers are on our side. Right now we're in a stale mate with much of the front being taken by proprietary software. That is not likely to change until the free software community gets a better face, but agenda-pushing codes of conduct won't do that. We need a serious discussion about software freedoms
- zekrioca 5y agoThe well regards for GNU and RMS in the Latin world is due to the strong philosophy against closed software, specially from MS. During most of the 90's and beginnings of 2000's, M$ would force their expensive licenses in governmental systems and would make everything to avoid interoperability, even within versions of their own systems. End result was that countries would spend millions just to be able to share documents across agencies. Things started changing when KDE/Slackware, Ubuntu, Firefox, OpenOffice and other software systems started to become user-friendly, with nicer and intuitive interfaces. From this point on, governments started teaching GNU/Linux in schools and universities, explaining the benefits, the rights, etc, and then switching to open-sourced and free-software systems.
- retrac 5y agoIn some ways FLOSS almost encourages a mentality akin to the old Microsoft "embrace, extend, extinguish" minus the actual extinguishment. The best way to get people to use a free Unix, besides making it free, is to make it /better/ than the competition while also compatible. Besides the lack of portability to other Unix systems isn't a real problem. The operating system itself is portable! /s
- marcan_42 5y agoThe whole "GNU/Linux" story always struck me as incredibly arrogant and ridiculous. A typical modern Linux system has more lines of web browser code than lines of GNU code. Should we start calling them "Chromium/Linux"? If you follow the FSF's actions closely, you will find they're incredibly insecure about people switching away from their software to alternatives. Typically the alternatives are not GPLed but rather under a permissive BSD-like license, and they latch onto this to deride any new competitors [1]. But those competitors don't typically exist because people hate the GPL; they exist because -surprise- GNU software isn't the be-all end-all, and it's a fairly common pattern for GNU maintainers to be reluctant to change at best, or actively hostile to third parties at worst (anyone remember glibc's Ulrich Drepper?). Then there's how Stallman vetoed GCC having a useful AST output mode (a requirement to build smart IDEs and other development tools - yes, including such features in emacs) because he was scared of third party proprietary extensions. That's one reason why clang took off - its extensibility and flexibility, which the FSF was always against GCC having. The FSF (and particularly Stallman) hates clang, again reaching for licensing and moral arguments, because they just can't accept that some people may have written technically superior software to theirs, and done so with a more permissive license. [2] In the end, it's hard to see the FSF's response to these things are anything but controlling and attempting to stifle competition. And we absolutely need competition for a healthy free software ecosystem. There is no value in trying to represent GNU as some kind of indispensable component of a Linux-based OS - they aren't, and pretending they are hurts us. [1] https://github.com/uutils/coreutils/issues/1781 https://github.com/uutils/coreutils/issues/1781 [2] https://gcc.gnu.org/legacy-ml/gcc/2014-01/msg00247.html https://gcc.gnu.org/legacy-ml/gcc/2014-01/msg00247.html
- traverseda 5y ago>Should we start calling them "Chromium/Linux"? Well, if chrome is the primary set of userspace tools, "chromebook" might be a reasonable name. I'm not sure how to differentiate android/linux (or even Chrome/linux) from UNIX-philosophy/linux, whether UNIX-philosophy ends up being busybox or GNU or something else.
- marcan_42 5y ago
- simion314 5y agoThe author uses "we" a lot but who are this "We"? For sure there is a large number of Linux users that are not part of his "we". I consider myself someone that is into the technical stuff but at the same time I care about the philosophy and meaning of "Free Software".
- the_af 5y agoAgreed. There is no "we". I, and many others, do not agree with the author in that she values the technical more than the philosophical goals.
- marcodiego 5y agoThe article is unfairly bashing GNU. For example: > OK, now have a look at the 120 lines long source of GNU yes. And compare now that behemoth against the implementation in OpenBSD, the one from sbase, or the one from busybox. Like… why does GNU yes does so many memory operations for a task that is implemented so easily by everyone else? The answer can be seen here: https://news.ycombinator.com/item?id=14542938 https://news.ycombinator.com/item?id=14542938 https://www.reddit.com/r/unix/comments/6gxduc/how_is_gnu_yes_so_fast/?st=j3v3iw3c&sh=5651ea3c https://www.reddit.com/r/unix/comments/6gxduc/how_is_gnu_yes... But from the style of the author, it is clear that it is the case of a knowledgeable well informed educated person. GNU clearly has its problems, but badmouthing it like that is hard to differ from malice.
- akkartik 5y agoDoes GNU yes need such great performance, though? I'm curious to hear where it matters. Why would we need 10 billion yeses a second, and why would 10 million yeses a second not be good enough?
- pwdisswordfish0 5y agoI'm curious as well. On the other hand, does it need... whatever it is that GNU yes's decriers are after? The choice to focus on /usr/bin/yes as a case study is at least as bad as the GNU advocates' retort ("GNU yes is 10GiB/s fast").
- XorNot 5y agoWhen I ask for a very simple command to do something, I expect it to be the best possible implementation of that command. `grep` is pretty close to absolutely optimum (ripgrep can beat it, sometimes, maybe). I don't see why the standard for composable utilities should allow for inefficiency.
- deleted 5y ago[deleted]
- 5y ago
- jcelerier 5y ago> I want cultish followings to end within the FOSS community. I swear I’ll always work against that. > And we like things following the standards already put in place. Because we don’t give a damn about helping the FSF do their thing: We care about tech. We care about and love the legacy of UNIX, its philosophy, and we want to adhere to it as strictly as possible. Sorry for breaking it up to you, but this kind of "standards must be respected 11!!!!1&!1" mindset is the actual cult-like behaviour, commonly found in communities such as cat-v.org, and with people clinging to plan 9 like it's anything beyond a failed experiment. GNU and shells like bash (I use zsh which is I guess even "worse" in terms of feature bloat) are dominant because they provides a ton of super useful features to make work faster. Likewise you bash against glibc's bloat, but most software perform faster when using glibc than other "less bloated" libc implementations like musl ; the bloat is here for a reason and that reason is performance (which matters infinitely more than whatever ideological purity BS someone can find). Who cares if it's not strictly POSIX compliant: it makes computing a better experience and that's all that matters, and if tomorrow someone manages to create an entirely different non-posix platform that manages to improve on that, I'll happily jump there and I hope you do too.
- klodolph 5y agoI think the difference is with bash & zsh is down to whether you choose to use them as your interactive shell or whether you choose to write shell scripts in them. I had assumed that this was about shell script portability. Bash and zsh have a ton of super useful features to make work faster, but the features for shell programming (writing shell scripts that other people will use) are not so useful. Yes, I'm aware of stuff like [[, I don't think that [[ is very useful. I have dash as /bin/sh and #!/bin/sh in all my scripts, and seriously, it's not a problem.
- forgotpwd16 5y agoThere're many features that are useful for programming: variable expansion, pattern replacement, substing expansion, and others. Not only that but some bash built-ins essentially replace external processes leading to your script being faster and more portable (ironically).
- enriquto 5y agoThis kind of emotional articles are the best motivation to renew my FSF membership.
- throwawayy293 5y agoincreasing my donation to FSF. we need more education on why free software and the GPL matters. Everyday is an attack on the computing freedoms that people take for granted.
- enriquto 5y ago> Everyday is an attack on the computing freedoms that people take for granted. Just to be clear, Ariadna Vigo is not attacking computing freedoms; pretty much the opposite. I agree with her position on nearly everything except for her stance about the GNU operating system. This is a technical detail in the grand scheme of things. Just like tabs vs. spaces, for which it is fun to disagree in an over the top way. We must support the FSF for pragmatic reasons, but we can still acknowledge that the "pure unix" philosophy is a great and beautiful idea. Also, cat-v and suckless are fun websites full of interesting stuff.
- deleted 5y ago[deleted]
- greyw 5y ago> And we like things following the standards already put in place. Because we don’t give a damn about helping the FSF do their thing: We care about tech. We care about and love the legacy of UNIX, its philosophy, and we want to adhere to it as strictly as possible. Who is this 'we'? I don't care about the UNIX philosophy (I'm an emacs user). First thing I do on bsd systems is install the GNU userland. BSD tools follow the POSIX spec like a cult refusing to add useful extensions. Look how hopelessly broken posix sh is. I work quite often with busybox on small embedded systems and the limitedness of its vi implementation makes me irrationally angry.
- the_af 5y agoTotally agreed. Be wary of posts and articles which talk about an universal "we" as if everyone thought the same. I, for example, care more about the philosophical aims of the FSF and RMS than about the finer technical points. That Linux is a very useful OS for me is a bonus. So "we" do not just care about tech; "we" also care about users rights and freedom.
- deleted 5y ago[deleted]
- deleted 5y ago[deleted]
- marcodiego 5y ago> Why are we vendor locked into GNU? Why are we still pretending that’s good or not as evil as the vendor lock-in measures taken by Google, MS, or Apple? Landmining your userland and C Standard Library with extensions is exactly what MS does. When MS does it is bad, so why is it acceptable or tolerated when GNU does it? Although you can pay the FSF for copies is (I think) possible calling GNU a vendor similar to "MS or Apple" is too much of a stretch. When "MS or Apple" contributes back agreeing to the license, out of goodwill or because it helps the development, it is a nice behavior in their part; otherwise they are just being themselves. As for why GNU is a different case with regards to extensions... I can think of a few reasons: - The extensions are useful for a reasonable part of the users. - GNU is free software, so you can easily use and benefit from the extensions. - GNU is portable and its license allows even proprietary systems to include it without any problem. - Some of these extensions can be disabled. - Some of these extensions do not break portability if not used. - Some of these extensions helped to shape and evolve what people expect from a UNIX-like system. A few GCC extensions influenced the ISO-C standard. Ok, portability may suffer, but that is the price some groups choose to pay. Considering the gained benefits, I'd say it is a fair price.
- GoblinSlayer 5y agohead -c 20 /dev/urandom | base64 This command generates a strong password. How do you do it with only posix?
- marcan_42 5y agotr -cd a-zA-Z0-9 </dev/urandom | dd bs=1 count=32 2>/dev/null; echo Works on Android (Toybox userland) and macOS (BSD userland, but you might need to prefix LC_ALL=C to get `tr` to not hate the binary input) at least. And it's more flexible, as you can customize the charset and password length arbitrarily, which you can't with base64.
- DonHopkins 5y agoI always wanted the /dev/zero driver to use the device minor number to define the number that got used instead of zero, so you could mknod /dev/seven to make an infinite source of beeps.
- enriquto 5y agoWhy don't you submit a patch to the kernel so that this beautiful idea becomes reality? It is free software: here you can easily be the change you want to see in the world. You may need to be careful because the major number is shared with /dev/null, but I doubt these numbers are hardcoded in many places.
- marcan_42 5y agoThey are definitely hardcoded in many places (e.g. embedded systems, early bring-up - udev style stuff is used for most things these days, but the core /dev/zero, /dev/null, /dev/console stuff is hardcoded everywhere). This would be a kernel-userspace ABI break, which is a big no-no. You could add a new major that does this (keeping the old numbers for compatibility), but I think you'd have a hard time convincing people that this is a worthwhile enough idea; hard-coded new major numbers are in short supply.
- DeathArrow 5y agoIf I would ever criticize GNU it would be over too much politics and too much phylosophy. Criticizing GNU for providing features is absurd. Users need features, not phylosophycal purity. Software needs less politics, not more.
- formerly_proven 5y agoI don't want an only-POSIX-compliant OS or userland, because POSIX is not a good standard. POSIX is "let's standardize the lowest common denominator across popular commercial Unices". Almost everything in the GNU coreutils is there for a decent reason - in many instances because of severe problems with the POSIX spec (just think about all the POSIX tools handling record-shaped data, but not supporting NUL separated records) or because it's just handy to have.
- patwolf 5y agoAs a Linux user I often get annoyed when I try to use MacOS and some of the commands differ. For example, the find command on Linux, er GNU, doesn't require a path, but MacOS does. I always blamed MacOS/BSD for just being different, but now I know that it's GNU that is different. I'm not sure what to think about it though--I do like the idea of compatibility with a standard, but I also don't like standards to hold back innovation.
- jhbadger 5y agoSome of it is GNU being different, but you also have to understand the difference between BSD and AT&T System V UNIX. Many GNU tools are closer to the standard AT&T behavior than BSD. BSD was the original nonstandard userland.
- spijdar 5y agoOld UNIX was never really that beholden to standards. In practice, the de facto and sometimes "de jure" standards were just based on whatever was the most common variant of UNIX, which for a while was Solaris (it's oversimplifying, but POSIX is kind of like "standardized Solaris"), but is becoming GNU/Linux. Commercial unixes "based on" SysVR2/3/4 had plenty of "non-standard" behavior and extensions, it was how you differentiated your product. You support POSIX compatibility to enable portability if you need it, but you differentiate with your extensions or "weird behavior". GNU was no different. The BSDs just have their own tradition, one that's older than POSIX.
- dwheeler 5y agoPOSIX allows implementations to have extensions, and almost all implementations have extensions. There are good reasons for many of those extensions. Many options implement capabilities that probably should be in the standard, but currently aren't. For example, POSIX doesn't have easy-to-use secure options for handling file names; attackers can insert newlines in filenames, yet POSIX lacks options like find -print0 and xargs -0, so you either spend a great deal of additional time writing complicated code that's likely to be insecure, or you simply use extensions as almost everyone actually does. Even the BSDs and busybox include those examples, by the way. Also, long option names are excellent for making scripts easier to understand, and really should be in the POSIX standard for systems that are not highly memory constrained. I try to make my shell scripts portable when that is reasonable, but sometimes that is simply far too difficult. The minimalism of POSIX is an advantage on small systems, or in other constrained environments, but most of us today are not trying trying to write software for a PDP-7. In most cases the scarcest resource is developer time. In that case having rich functionality and extensions that improve readability is more important. I think the market is being perfectly reasonable, minimalism is less important than developer efficiency in most cases. Your mileage may vary.
- zajio1am 5y ago> Why are we vendor locked into GNU? Why are we still pretending that’s good or not as evil as the vendor lock-in measures taken by Google, MS, or Apple? Landmining your userland and C Standard Library with extensions is exactly what MS does. When MS does it is bad, so why is it acceptable or tolerated when GNU does it? Because POSIX (and partiall also ISO C) is just ex-post stadardization of features that appeared first as vendor extensions, and also does not cover many areas entirely. Useful extensions became part of standard, and also many programs just need to use non-standardized parts of API (e.g. some Linux-specific parts).
- Mc91 5y ago> I could’ve talked about Android and embedded Linux. I didn’t want to, though. But me not talking about them doesn’t mean they also show that the FSF telling half truths when it comes to what GNU is. > If you thought I was going to go the “Android route” of argumentation… You know… saying that Android shows that Linux can be used without GNU… Sorry! I’m way more sophisticated than that! Sophisticated in what sense? That when you search the Android source tree you find FSF code? https://cs.android.com/android/platform/superproject/+/master:prebuilts/rust/linux-x86/1.55.0/src/stdlibs/library/backtrace/crates/backtrace-sys/src/libbacktrace/fileline.c https://cs.android.com/android/platform/superproject/+/maste...
- marcan_42 5y agoFinding a few files containing (BSD-licensed!) code that originated in the FSF doesn't sound like a particularly compelling argument that people have to use their code. Of course people will use their code when it does the job and the license fits, it'd be silly not to. FWIW, here's a search for FSF-copyright code that excludes build generator output (autotools/automake/libtool/etc) and gcc/bison/etc related stuff (which many other projects which are not themselves FSF-authored use), as well as licenses themselves: https://cs.android.com/search?q=copyright.*free%5C%20software%5C%20foundation%20-f:configure%20-f:config.*%20-f:conftools%20-f:compile%20-f:gcc%20-f:m4%20-f:bison%20-f:Makefile.*%20-f:depcomp%20-f:missing%20-f:libtool.*%20-%22When%20we%20speak%20of%20free%20software%22%20-%22made%20by%20GNU%20Bison%22%20-f:ltmain.sh%20-automake%20-autoconf%20-%22Purpose%20of%20this%20License%22%20%20-%22As%20used%20herein%22&ss=android%2Fplatform%2Fsuperproject https://cs.android.com/search?q=copyright.*free%5C%20softwar... 193 hits, and a lot of that is ffi and libbacktrace stuff. Exclude those two projects, and you're down to 47 hits, most of which are random things like headers, test shell scripts, and some translations. I think it's fair to say that Android does not include any significant amount of GNU/FSF code. (Keep in mind that the Android codebase is massive and vendors a huge amount of third-party projects, so it's actually quite remarkable that there is so little FSF code in here - part of that speaks to how little FSF people contribute to other projects!)
- DonHopkins 5y ago"I'm a gnother gnu!" https://www.youtube.com/watch?v=OPgo6s1lBbw https://www.youtube.com/watch?v=OPgo6s1lBbw
- easton 5y agoOnly tangentially related, but POSIX certification doesn’t require that you don’t have extensions, at least I don’t think so. I could’ve sworn macOS supported long options on its BSD coreutils.
- hdjjhhvvhga 5y agoThese things were debated ad nauseam in the 90s, I started to feel nostalgic. To me it seems like a semantic issue and, fortunately, we are free people and can use either name. As for the "horrible implementation" part... People nowadays don't realize how it worked in practice. Many extensions, like in GCC, appeared because people needed them (and at least in the case of compilers they're clearly marked as such). Also, at the time the GNU utilities were superior to native tools. Many Solaris admins started by installing GNU tools to make the system more usable, for example. If GNU was really so terrible, why would they do that? It's very easy to criticize it now, but it was a huge effort by thousands of people and I'm vert grateful to all of them.
- r283492 5y agoThe fact that the post does not link to https://www.gnu.org/gnu/gnu-linux-faq.en.html https://www.gnu.org/gnu/gnu-linux-faq.en.html, makes it immediately suspect. That is a necessary resource to consult when talking about the GNU/Linux name.
- r283492 5y ago> Torvalds chose method 1; Huh? Torvalds never intended to create an operating system, just a kernel, and that is true to this day.
- JasonFruit 5y agoHow about, "Torvalds' decisions led to choice #1"?
- valleyer 5y ago"I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones."
- jcelerier 5y agonote that in computer science academia operating system is very often synonymous of kernel
- r283492 5y ago> the BS the FSF spits out The whole article didn't mention even one concrete thing the FSF has said wrong, it just slanders them several times. No wonder it says to the FSF "don't bother to contact me."
- phkahler 5y ago>> OK, I know. I use GNU software. I use Arch, so I’m kinda forced to use it. That’s part of what makes me angry, though. Why are we vendor locked into GNU? Why are we still pretending that’s good or not as evil as the vendor lock-in measures taken by Google, MS, or Apple? Landmining your userland and C Standard Library with extensions is exactly what MS does. When MS does it is bad, so why is it acceptable or tolerated when GNU does it? The difference is the license, stupid. You have the source code. It's portable. You can compile/change/run these tools anywhere. It's not vendor lock-in when it's GPL licensed. If you become locked-in because you've really embraced a GNU extension of a "standard" tool, that's probably OK since you can use that same version of tool anywhere. The GNU tools are effectively standard. But hey, just keep railing against them because you don't like RMS or the GPL or whatever axe it is you have to grind. They really are just tools.
- ho_schi 5y agoThe GNU implementation of 'yes' looks like a meme, true. And FSF behaves sluggish, true. The rants about the bash and glibc lack actual foundation. Same for the comparsion with C++. And there is nothing wrong with long options or adding more useful options. 1956 Thanks the the consent decree from 1956 AT&T wasn't allowed to enter new markets and license patents royalty free, what we got was UNIX and C and open code. They regulated AT&T positively! Probably the best thing the United States Department of Justice did. They ditched capitalism and everything got better by magnitudes! 1983 The US Department of Justic setteled a consent degree with AT&T. Probably the worst thing the Department of Justice did. They allowed them to split up and do whatever they would. Full capitalism! Since then the US have seen no market regulation. What followed wear UNIX-Wars, lawsuits and finally companies like Microsoft, Google, Amazon, Facebook and Apple. You want blame someone? Blame the government. But I see two lessons. The regulation has worked. Single fines (punishment) or splitting about doesn't. AT&T is again the largest telecommunication company and UNIX was busted. I'm thankfully for what we learned from UNIX, that POSIX gave us some guidelines in the past, the C Language and finally all the descendants - Linux, GNU, C++, GCC, BSD Network Stack and GCC...and finally LSP (works wonderfull with NEOVIM and CLANG).
- blacktriangle 5y agoShe makes me want to brush up my Spanish so I can join their community that apparently still believes in the goals of GNU and the FSF.
- ab3rC1te 5y agoBravo, finally another person see's the bullshit that Linux/GNU has become. The kernel itself has really become just like the GNU userspace, compared to the 2.6 line or earlier. Love hate relationship that I have with Linux/GNU but overall I am a Slackware fan of old. I enjoy programming and compiling stuff from source, but everything breaks. Probably because there are to many options to pass to a tool chain. Version numbers on software is one major issue with why shit just breaks. Like the other day building latest bash with old glibc and couldn't even chroot into a new environment, because the ld linked it with offset magic numbers. It's a shame. Today's code base is garbage in my opinion and still can't read code and follow what people are thinking they are trying to achieve. And I still don't get damn pointers. Can we still write functional programs without using pointers? Oh and without linked lists? I know C programming and others, but will I ever be a master at it. Hell no! Why! Because I don't think like K&R, and I didn't invent it. The only way I would fully understand a language is for me to design my own that worked how I think. I always like popping in a live Ubuntu disc with v7.04 and watching it load lightening fast. And yet here we are with higher CPU output but a current Linux/GNU is lagging in response time and becoming like Windows 10 that is so overly bloated with unnecessary code that is probably like Windows 10 that is tracks all your activities. I like Alpine so far from what I have tried, light-weight, fast and easy to use. If I could develop my own OS I would, and wrap all the programming languages together into one powerful language that fits all the needs from scripting, programming, databases, servers, and fit it all into a 1.5 GB space like Windows Xp did. But here we are...
- RNCTX 5y agoIf you pull current image of Alpine in a Docker/Podman container build file, the first think you'll notice is that its DNS resolution implementation is broken and it can't find the repos it's supposed to pull the rest of the image components from. With that in mind, I would say the number of people who use such a thing to run their business on (rather than deleting any reference to it in the first 10 seconds of trying to use it) says a lot more about the cultish behavior of tech enterprises than the linked blog post does.
- jmmv 5y agoGood article. Just wanted to point out https://jmmv.dev/2021/08/useless-use-of-gnu.html https://jmmv.dev/2021/08/useless-use-of-gnu.html, which also covers the portability problems that GNU has widely introduced and describes alternatives to the common issues.
- thayne 5y agoInteresting that the section on make gives an alternative to `$(shell ...)` that actually relies on a bashism. `$( )` command substitution isn't POSIX compatible. you would need to use backticks.
- forgotpwd16 5y agoOpposite to common belief `$()` is the way to do it by the standard[0]. POSIX sh differs from Bourne shell. [0]: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_03 https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V...
- djur 5y agoThe accusation of vendor lock-in against GNU doesn't land for me. It's hard to look at GNU Autotools and see that as coming from a project desiring world domination. Yes, it helped them get GNU software onto more systems, but they went out of their way to make Autotools usable for non-GNU software as well. If there's any history of GNU attempting hostile measures against their main free "competitors", the BSDs, I haven't heard it.
- ThinkBeat 5y agoRMS has: written, and been part of writing a suite of tools that have enabled the creation of an emormous catalog of software. A lot would not have been possible without having access to a free compiler and all the other tools needed to write the software you dreamed of? Most of it with no connection to GNU or RMS. What tools did you think an ethsutiastic student in Finland hasd access to to start writing a kernel? If you want to purge RMS and GNU from your life, go for it. Just make sure you also purge all the code created due to it. Hurd failed? Sort of. Who cares? He has done more good, helped more people, enabled far more people to use computers, and enabled enormous fortunes to be made. Do you think something you write will be used by bilions of people for decades? You do not like him, you do not like his ideology, who cares? Dont trivialize his accomplishments. At least not until you have done the same and much more.
- bradgranath 5y agothis this this this this
- deleted 5y ago[deleted]
- bradgranath 5y agoBeen meaning to do a blog drilling down the Linux levels: Level 0 There are other x86 OSes? Level 1 GNOME sure does look pretty (Ubuntu) Level 2 What... is this for, anyway? (Mint) Level 3 Oh, it's for privacy and independence (Android, AOSP, non free kernels) Level 4 OK, then, let's build it ourselves (LFS) Level 4.5 You can't (hardware blobs) Level 5 Er that was a lot of work (Gentoo) Level 6 Wait WTF is systemd (Arch) Level 7 Bleh, pacman doesn't have a gui (Manjaro) Level 8 Wait, Ubuntu is based on what? (Release schedules, Arch vs Debian) Level 9 WTF is a userland? OSX is based on what? (Alpine) (MIT. BSD. GNU. RMS. FSF. LLVM.)