[ / / / / / / / / / / / / / ] [ dir / agatha / ausneets / bants / builders / leftpol / soyboys / sw / zenpol ][Options][ watchlist ]

/tech/ - Technology

You can now write text to your AI-generated image at https://aiproto.com It is currently free to use for Proto members.
Name
Email
Subject
Comment *
File
Select/drop/paste files here
* = required field[▶ Show post options & limits]
Confused? See the FAQ.
Expand all images

File (hide): 3e9f7911faca84f⋯.jpg (38.05 KB, 758x435, 758:435, serveimage.jpg) (h) (u)

[–]

 No.875252>>875256 >>875359 >>875365 [Watch Thread][Show All Posts]

>As usual, even for true.c, GNU’s source code manages to be the most cluttered and unnecessarily complicated

GNU/Linux https://github.com/coreutils/coreutils/blob/master/src/true.c

FreeBSD https://github.com/freebsd/freebsd/blob/master/usr.bin/true/true.c

OpenBSD http://bxr.su/OpenBSD/usr.bin/true/true.c

macOS https://opensource.apple.com/source/shell_cmds/shell_cmds-149/true/true.c?txt

OpenSolaris https://github.com/illumos/illumos-gate/blob/master/usr/src/cmd/true/true.c

https://twitter.com/0xdea/status/967694040950038528

In all seriousness, why is GNU code so much more bloated and complicated than the other Unix/Unix-like OSes for something as simple as returning 0? Is there a good reason for it? Should it be fixed, and if so, how?

 No.875253>>875295

also, sorry for the bait subject line, but it's the only way to get ahold of your ADHD-addled attention spans


 No.875255

>it's the only way to get ahold of your ADHD-addled attention spans

>doesn't give TL;DR

just


 No.875256>>875454

>>875252 (OP)

>Note true(1) will return EXIT_FAILURE in the edge case where writes fail with GNU specific options.

Here was your explanation. Why is it that GNU/Linux detractors seem to be fucking illiterate autists?


 No.875260

We already have a non-shit version of this thread. Stop being such a faggot OP.

>>873917


 No.875261>>875273 >>875279 >>875303 >>875328 >>875913 >>876007

Note how only GNU's version has support for getting help and getting the version. The code also supports being compiled into /bin/false.

File Sizes for true + false

GNU coreutils: 82

FreeBSD: 96

OpenBSD: 20

macOS: 4

OpenSolaris: 82

In total only 2 of them are less lines that GNU coreutils. The implementations that beat it, do not support displaying help, nor do they support displaying the version.


 No.875269>>875271

x ^ (y v z) = (x ^ y) v (x ^ z)


 No.875271

>>875269

distributive property


 No.875273


 No.875279>>875284

>>875261

To be fair, you don't need updates for something so simple and if you needed help for a program that just exits, you're not going to go far in UNIX.


 No.875284>>875308

>>875279

You don't need it, but it's nice to have for consistency sake, as all the other coreutils utilities have help and version.


 No.875295

>>875253

Meh, whatever works.


 No.875302>>875329 >>875350 >>875351 >>875360

Because of "portability". GNU does not see itself as a Linux software. It insists on supporting irrelevant platforms nobody cares about. Also, the code sucks hard. I once tried to contribute to a GNU program, I never want to do that ever again.

The sooner we move away from GNU, the better.


 No.875303>>875308

>>875261

Why the fuck do you need help and version on fucking the true binary?


 No.875308


 No.875328>>875333

>>875261

>The code also supports being compiled into /bin/false.

>compiling true into false

WHY


 No.875329>>875330 >>875337 >>875355 >>875364

>>875302

>The sooner we move away from GNU, the better.

the problem is that the moment someone decides to "move away from GNU" they also want to ditch the GPL, making the whole venture fucking pointless.


 No.875330>>875419 >>875506


 No.875333

>>875328

Both true and false provide nearly identical functionality. There isn't a point to redo the same exact thing when you are just changing the exit status from a 0 to a 1.


 No.875337>>875355

>>875329

This.

And it's invariably to a less freedom preserving license as well.


 No.875350>>875364

>>875302

I wonder what is the reason why Stallman emphasizes GNU/Linux? Perhaps it's because GNU is not Linux?


 No.875351>>875364

>>875302

What's wrong with BSD?


 No.875353>>875419


 No.875355>>875360 >>875367 >>875368

>>875337

>>875329

What would you rather have?

Option 1:

>tidy OS which is comprised of nodes with well defined purposes and interfaces

>architected in such a way that anyone could come along and write a replacement for a node with confidence it won't break anything provided it passes a set of pre-defined tests

>no global GPL, the modules which make up the OS can be any license

Option 2:

>GNU/Linux in its current form

As someone who works with the Linux codebase regularly I would gladly take option 1.


 No.875359

>>875252 (OP)

>In all seriousness, why is GNU code so much more bloated and complicated than the other Unix/Unix-like OSes for something as simple as returning 0? Is there a good reason for it? Should it be fixed, and if so, how?

Ask Jim Meyering.


 No.875360>>875364 >>875366 >>875377 >>875429 >>875528

>>875355

I'd take Option 1 but with "global GPL" (every part has to be GPL'ed)

>>875302

>Because of "portability". GNU does not see itself as a Linux software. It insists on supporting irrelevant platforms nobody cares about. Also, the code sucks hard. I once tried to contribute to a GNU program, I never want to do that ever again.

GNU Hurd will become relevant. Its design is superior to Linux.


 No.875364>>875547 >>875669

>>875329

GPL is dead kiddo. Adoption is plummeting, has been for a while now.

Whatever. Whoever makes the next user space will decide what license is used. It's likely to be BSD license.

>>875350

Because he's a literal autist who thinks POSIX matters to anyone.

>>875351

It's not Linux.

>>875360

My fucking sides.


 No.875365

>>875252 (OP)

GNU is not Linux. GNU is shit.


 No.875366>>875371 >>875377 >>875523

>>875360

>GNU Hurd will become relevant. Its design is superior to Linux.

It has been proven time and time again that the context switching cost of microkernels has a massive performance hit. They have been a meme since the early 90s and have been shit this whole time. Best example of one used anywhere is QNX and it has the same fucking problems.


 No.875367>>875377

>>875355

>>tidy OS which is comprised of nodes with well defined purposes and interfaces

Linux IS the operating system, and they care about binary compatibility to autistic degrees. They care because they want you to upgrade your kernel safely and will go out of their way to maintain old shitty interfaces for compatibility's sake.

GNU faggots DO NOT operate like this.

http://yarchive.net/comp/linux/gcc_vs_kernel_stability.html

DO NOT program against GNU interfaces. You all know how much of a pain upgrading key software like glibc can be.


 No.875368>>875377

>>875355

The GPL doesn't cross program boundaries. Modules can have any license, and there's even a little non-GPL GNU software, like ncurses.

If it's not GPL-compatible it can't use certain libraries, but as far as I know all the libraries with pre-existing alternatives are LGPL or weaker.


 No.875371>>875377 >>875379

>>875366

What is L4?


 No.875377>>875382 >>875386 >>875410

>>875360

>I'd take Option 1 but with "global GPL" (every part has to be GPL'ed)

If you wanted to configure your OS with entirely GPL licensed code then thats your choice, but the flipside is someone else can go ahead and configure it with almost entirely BSD licensed code.

>GNU Hurd will become relevant. Its design is superior to Linux.

Holy shit, my sides.

>>875368

>The GPL doesn't cross program boundaries.

It does when you don't have an alternative to calling functions from GPL licensed libraries because you are writing kernel code. At least that is the intention, there are actually ways around this in GNU/Linux because of how poorly architected it is.

>>875366

>It has been proven time and time again that the context switching cost of microkernels has a massive performance hit.

Its actually not an issue with a proper OS architecture that minimizes the number of switches required to perform common tasks. Also shared memory regions blow normal microkernel IPC away in terms of performance, seL4 is the only micro kernel which properly pulls it off though.

Also this >>875371

>>875367

>Linux IS the operating system, and they care about binary compatibility to autistic degrees.

You can claim that all you want but when I have to make kernel-specific versions of my kernel module because the portion of the codebase it interacts with keeps subtly changing how it works then I know you have no fucking idea what you are talking about.


 No.875379

>>875371

You know L4 does not invalidate anything I said right? The context switch cost still kills the whole fucking idea.


 No.875382>>875395

>>875377

>its actually not an issue with a proper OS architecture that minimizes the number of switches required to perform common tasks.

AKA a monolithic kernel.

>Also shared memory regions blow normal microkernel IPC away

Shared memory does not solve the context switch cost.

>seL4 is the only micro kernel which properly pulls it off though.

Is still slow because of expensive context switching


 No.875386>>875395

>>875377

> have to make kernel-specific versions of my kernel module

< a kernel module that is loaded into kernel space is the same thing as normal user space

okay sure thing. binary compatibility is for userspace not internally


 No.875395>>875398

>>875382

>AKA a monolithic kernel.

Yes, lets just put everything in kernelspace, what do we even need userspace for lol?

>Shared memory does not solve the context switch cost.

>Is still slow because of expensive context switching

You clearly don't know how to use shared memory regions effectively.

>>875386

Sorry, I should have made it clearer that I am not some pajeet programming normie userspace shit in java. I also misunderstood what you said.


 No.875398

>>875395

>Yes, lets just put everything in kernelspace, what do we even need userspace for lol?

Certain components of the computer require privileged to configure, its reasonable to put these things in the kernel if they are going to have elevated access anyways. Its not a perfect tradeoff security wise but the performance difference makes it clear.

>You clearly don't know how to use shared memory regions effectively.

If you think shared memory means you bypass the unrelated cost of context switching you are retarded

>normie userspace

You shill for microkernels and then end up adding more bloat to the kernel space? Lol what a fag.


 No.875408

V10 Research Unix version:

main(){ exit(0); }


 No.875410

>>875377

>You can claim that all you want but when I have to make kernel-specific versions of my kernel module because the portion of the codebase it interacts with keeps subtly changing how it works then I know you have no fucking idea what you are talking about.

You're talking about kernel APIs. Those do change all the time. Only user space interfaces don't.


 No.875413

2.9BSD true

exit 0


 No.875417

sh;^D


 No.875418>>876026

ls


 No.875419>>875421 >>875422 >>875423 >>875424

>>875353

>>875330

Everyone bitches but no one makes an alternative. I’d rather use a license that prohibits any proprietary use of my software (including linking and ’tivoization’) written by actual lawyers than a license that consists of virtually ten lines that say nothing but ”lol just do whatever xD”. MPL is a nice alternative but I’m yet to get into the details. On top of it, considering the fact that Mozilla is a far left corporation, I don’t expect them---unlike FSF—to help me in the court in case of infringement. Ideally, someone should’ve already made a Creative Commons of software licenses but here we are…


 No.875421

>>875419

>considering the fact that Mozilla is a far left corporation. ... unlike FSF

implying FSF is not more commie


 No.875422>>875427

>>875419

"This software is free and all but god forbid you try to make a living off of it by using it in your product"


 No.875423>>875427

>>875419

>no one makes an alternative

You tard, you have

>GPL

>GPL2

>BSD

>other FSF approved licenses

>public domain

>share alike

>etc.

Are you brand new? There are no alternatives to the GPL3? What the fuck, you're just ignorant.


 No.875424>>875427

>>875419

It's not like you're actually going to sue anyone, retard.


 No.875427>>875439 >>875521 >>875611

>>875422

That’s exactly why we need an alternative to GPL. Just fucking make it legal to at least link the code licensed under GPL to a proprietary product.

>>875423

Are you actually retarded?

>suggesting obsolete GPLv1

>BSD is an alternative to GPL

>implying that you can actually waive into the public domain on the worldwide scale

>suggesting CC-BY-SA, while CC clearly states that their licenses cannot be used with software

>>875424

Nobody’s talking about your shitty hello.c ”program”, idiot. You might as well don’t license your kiddie scripts at all.

Also, nice same-fagging. Next time try to fit your shit in one post. Or just don’t post at all, because it seems you don’t have enough neurons for that.


 No.875429

File (hide): 99ec41cb8d87ae8⋯.png (874.66 KB, 1000x1424, 125:178, heavykeks.png) (h) (u)

>>875360

>GNU Hurd will become relevant. Its design is superior to Linux.


 No.875439

>>875427

whats wrong with bsd


 No.875441

>>muh superior design

cucks who cant into common usage


 No.875454>>875503

>>875256

>true might not return true

fucking lol I forgot about this gem


 No.875470

GNU is okay once were on or past Type II Civilization.

Now? Let's just reap the benefits including its problems/incompatibility to "commodifiable planet;elitocracy".

Once the swamp is drained, we can finally stop all this >GPL>BSD>GPL>BSD... nonesense and embrace singularity.


 No.875503>>875510 >>875516

>>875454

Okay, another fucker that can't read. True might be a failure state depending on the program. What's it like being below poonigger level of ability?


 No.875506>>875754

>>875330

>the rantings of a butthurt faggot that mischaracterizes what rms says

Holy shit kill yourself. I don't know which would be more pathetic, if that was your site, or if you actually fell for that retatded shit and now sit here proclaiming it gospel.


 No.875510>>875512

>>875503

>calls people pooniggers

>can't return 0 without introducing errors


 No.875512>>875516

>>875510

>still can't read

There is no hope for you.


 No.875516>>875573

>>875512

This is you right?

>>875503

>True might be a failure state depending on the program.

Yeah I'm illiterate.


 No.875521>>875584

>>875427

>Just fucking make it legal to at least link the code licensed under GPL to a proprietary product.

It's called LGPL brainlet.

>hurr samefag

Kill yourself.


 No.875523>>875698

>>875366

>It has been proven time and time again that the context switching cost of microkernels has a massive performance hit

>be in 1984

>have a few Mhz on one cpu

>microkernel are a massive performance hit

>be in 2018

>have a few Ghz on 8/16/32 cores

>microkernel are a massive performance hit

a massive performance hit


 No.875528

>>875360

>GNU Hurd will become relevant.

It's already relevant thanks to it's subhurd and neighborhurd it natively has container support thus you don't need the clusterfuck of softwares like docker.


 No.875547>>875548

>>875364

>GPL is dead kiddo. Adoption is plummeting, has been for a while now.

only according to utterly meaningless surveys on github


 No.875548>>875550

>>875547

>doesn't fit my world view so it's meaningless

GNUtard pls


 No.875550>>875615

>>875548

No, they are just meaningless. What would it mean for the GPL to "die"? Certainly it would mean a reduced adoption of software that is under the GPL license, no? Yet Linux adoption is only increasing, while BSD adoption is decreasing. SJWs can flood github with tons of useless MIT or BSD licensed software, but this only shows another flaw of permissive licensing, which is fragmentation and lack of persistent development.


 No.875572

>programs written by lawyers and political activist are worse than programs written by programmers and engineers

Shocking!


 No.875573>>875579

>>875516

A return of true could mean either a successful termination, or a failure, depending on the call, you stupid fucking faggot. This does not mean that it returns anything other than true. Holy shit, you are fucking retarded.


 No.875579

>>875573

>Note true(1) will return EXIT_FAILURE

>return

>EXIT_FAILURE

now fuck off


 No.875584>>875608 >>875609

>>875521

LGPL is only applicable to libraries, you uneducated scum.


 No.875608

>>875584

LGPL is applicable to things you link. The important thing isn't whether it's a library, per se, but whether you're linking it. And even if you aren't linking it you can still slap the LGPL on it. Minetest is licensed under the LGPL, even though it's not a library.

This seems to be entirely about linking code. The LGPL is extremely relevant.

What are you trying to say here?


 No.875609

>>875584

It literally says the word "link" in the license you fucktard. Can you read? Illiterate monkey.


 No.875611

>>875427

<we need yet another free software license

<gplv1 is obsolete because I say so

<i'm a commie so I hate BSD

literally kill yourself, last (you) you're ever getting out of me


 No.875615

>>875550

It means nobody is using it for new projects anymore, you fucking retard. How hard is it to understand a simple concept? Fucking moron keeps dissecting simple statements in order to find alternate interpretations that allows him to keep his GNUtard world view.

Virtually nobody fucking uses GPL anymore, tard. That is fact. People would rather be able to use their software on their jobs and GPL stops that. It's simple.

Obviously software already released as GPL is extremely likely to remain as such since you need signed authorization from everyone who ever contributed to it in order to change the license. Linux is big? Yeah it's great, but that's because of the people running the project you monstrous dumbfuck, it's because Linus is autistic when it comes to kernel quality and he rules with an iron fist, he's not cucked by SJWs and CoCs, chances are it'd be just as great if it were licensed BSD.


 No.875669>>875710

>>875364

Adoption of the GPL has not been plummeting.


 No.875698

>>875523

>higher clock rate and core count means that context switching is somehow cheaper

You know the number of context switches needed has grown at the same time because programs do more shit per second right.


 No.875710>>875717

>>875669

What new major products went GPL in the past few years?

BSD has been much more common lately.


 No.875717>>875724 >>875729

>>875710

Anything by Redhat.


 No.875724

>>875717

Like systemd and pulse audio, two excellent pieces of software!


 No.875729

>>875717

soooo, systemd and that's about it


 No.875754>>875755 >>875758

>>875506

I'm not even agreeing with that site, but it would be nice to hear a rebuttal rather than inane comments.


 No.875755>>875756

>>875754

How about actually reading the source writings and not twisting what is actually said by Stallman and the rest of the FSF. What they write is clear enough for me. This GNG site makes a mockery of itself by committing wanton acts of building up strawman arguments.


 No.875756>>875786

File (hide): aef68744735d5be⋯.png (1.79 MB, 1920x1080, 16:9, mpv-shot0017.png) (h) (u)

>>875755

>GNG site makes a mockery of itself

It's almost as if that was the point


 No.875758>>875764

>>875754

"free of charge" =/= "can't charge for source".

"free of charge" = "if charged for binaries, source must be included in package at no extra cost".


 No.875764

>>875758

You should just charge for the binary and keep the source for yourself. Any license that makes you give out something extra is cucked.


 No.875771>>875782 >>875908


 No.875782>>875786

>>875771

Jesus, what a retarded webpage.

Nobody thinks the GPL works like that, to the point where they created the AGPL, which does work like that. Actual lawyers check this stuff, and did think of this particular interpretation.


 No.875786>>875787

>>875782

see

>>875756

It's mostly written as satire


 No.875787

>>875786

Satire of what?

Sounds like badly executed plausible deniability, aka "I was just pretending".


 No.875902

GNU and Linux were just intermediate stages between UNIX and systemd.


 No.875908

>>875771

>this endless repetition of the same factually incorrect information

Fuck that page.


 No.875913

>>875261

>/bin/true revision 1488

>changelog: changed the tabs into space for today


 No.876007>>876023

File (hide): c05fe9ecd4f243f⋯.jpg (400.61 KB, 1976x1202, 988:601, apple unix advert.jpg) (h) (u)

>>875261

When will they learn?


 No.876023>>876028

>>876007

>Apple used to appeal to Unix die heards

>used to have Openfirmware, which is Free Software

>used to absolutely crush Intel with better SIMD instructions

>had better keyboard, screen, battery life

>you could burn a CD and recompile a whole bunch of shit at once and the CD-ROM burning process wouldn't fail with BUFFER OVERRUN

what the fuck even happened, this isn't funny


 No.876026


 No.876028

>>876023

They started targeting starbucks-drinking ruby/javascript web developing soyboys




[Return][Go to top][Catalog][Screencap][Nerve Center][Cancer][Update] ( Scroll to new posts) ( Auto) 5
94 replies | 3 images | Page ???
[Post a Reply]
[ / / / / / / / / / / / / / ] [ dir / agatha / ausneets / bants / builders / leftpol / soyboys / sw / zenpol ][ watchlist ]