z3bra
It's not /that/ different after all. And from wikipedia's definition, it even fits quite nicely!

Quote:A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification.

It is not based off the original Unix, but was created to somehow replicate it and share it for free. Considering that Unix and Linux both respect and extend the POSIX standards, we can consider them to be closely related, as opposed to say, Windows, TempleOS, KiwiOS or other OS written from scratch.


Now this is all pissing in a violin, as I don't think the original Unix should still be considered to be the standard for computing.
Compared to today's computing, it was slow, had low resources and was targeted at a small elitist group that would know their shit about computing.
Computing has changed a huge lot since them, be it in terms of interface, goals or user base.
To me BSD and Linux are both following the same principles, and should learn from each others, rather than being stuck in a flame war on who's doing better at specific tasks.
They both run vi after all :P
jkl
(29-11-2018, 09:56 AM)z3bra Wrote: Unix and Linux both respect and extend the POSIX standards

Linux (and especially GNU) is mostly ignoring POSIX, see the sed syntax for example - and a couple of missing commands. The "Linux Standard Base" was made to replace POSIX - and most distributions even ignore that. Meh.

(29-11-2018, 09:56 AM)z3bra Wrote: I don't think the original Unix should still be considered to be the standard for computing.

But that's what most people on nixers do as well, happily creating a "week in the TTY" on whatever "Unix-like" system, being stuck in the past with "terminals" which deliberately imitate 1978's VT100 hardware. They won't move on.

The creators of Unix have made a better standard with Plan 9 once graphical terminals were reliable enough. Now how much of Plan 9 do you use?

(29-11-2018, 09:56 AM)z3bra Wrote: They both run vi after all :P

They also run Emacs. And ed. And TECO. Now what is "the standard"? :P
z3bra
(29-11-2018, 10:06 AM)jkl Wrote:
(29-11-2018, 09:56 AM)z3bra Wrote: Unix and Linux both respect and extend the POSIX standards

Linux (and especially GNU) is mostly ignoring POSIX, see the sed syntax for example - and a couple of missing commands. The "Linux Standard Base" was made to replace POSIX - and most distributions even ignore that. Meh.

I think that GNU tools are POSIX-compliant, even though they heavily extend them and are now used as the reference for what's "standard" (unfortunately). And it seems that LSB uses POSIX as a base for what it defines as standard. I wish more tools on linux would respect POSIX though...
Busybox shits on POSIX, for example.

(29-11-2018, 10:06 AM)jkl Wrote:
(29-11-2018, 09:56 AM)z3bra Wrote: I don't think the original Unix should still be considered to be the standard for computing.

But that's what most people on nixers do as well, happily creating a "week in the TTY" on whatever "Unix-like" system, being stuck in the past with "terminals" which deliberately imitate 1978's VT100 hardware. They won't move on.

The creators of Unix have made a better standard with Plan 9 once graphical terminals were reliable enough. Now how much of Plan 9 do you use?

Well, the week in the TTY is mostly a fun challenge, pretty much like people that are into cars go to a rally with their car for 1920. They don't expect to win. They hope to finish the race :P

I back you up on plan 9, and to your surprise I probably use it more than you'd expect, and I'd actually love to discuss that with you ;)

(29-11-2018, 10:06 AM)jkl Wrote:
(29-11-2018, 09:56 AM)z3bra Wrote: They both run vi after all :P

They also run Emacs. And ed. And TECO. Now what is "the standard"? :P

From the POSIX standards tools definitions the standards are ed, ex and vi ;)
jkl
GNU sed and BSD sed are incompatible with each other. Which one is "the standard"?

(29-11-2018, 10:57 AM)z3bra Wrote: From the POSIX standards tools definitions the standards are ed, ex and vi ;)

If we want modern standards, we should stop relying on both the dated POSIX standard and "Unix-like" operating systems. As POSIX is widely ignored today, why should we still endorse its environment which has major disadvantages on modern hardware which need to be worked around even four decades after its inception?

Why do we still have to maintain our web servers over a text-based shell? Why do "modern" "Unix-like" systems still need to simulate ancient teletypes?
z3bra
(29-11-2018, 11:08 AM)jkl Wrote: GNU sed and BSD sed are incompatible with each other. Which one is "the standard"?

They're incompatible with each others, but both are compatible with POSIX sed!
There is no "standard" tool. If you want to write a shell script using sed that would work on both GNU and BSD, then you have to limit yourself to what is defined in the paper above, be it the flag set, or syntax.

(29-11-2018, 11:08 AM)jkl Wrote: If we want modern standards, we should stop relying on both the dated POSIX standard and "Unix-like" operating systems. As POSIX is widely ignored today, why should we still endorse its environment which has major disadvantages on modern hardware which need to be worked around even four decades after its inception?

I think POSIX is still relevant today. I think it defines a sane base for OS development, on top of which it's easy to build, as it is not too restrictive.
The standard might even be too "loosy", because it only defines the minimal stuff needed, that would make programming strictly to it a bit too defensive and bothersome (be it in C, or though shell scripts).

(29-11-2018, 11:08 AM)jkl Wrote: Why do we still have to maintain our web servers over a text-based shell? Why do "modern" "Unix-like" systems still need to simulate ancient teletypes?

Text is still a good human-to-machine interface (IMO, better than sound for example, or pictograms), and POSIX defines its standards around this interface.
I must admit that sometimes, a GUI makes it easier for the human to work on, but as of today, when it comes to programming, it is still easier to make an application that is unrelated to any GUI, and then create the GUI around this tool (it also has the advantage to make it easier to script/automate).

I can't think of a good way to automate a GUI, and automating a voice-based interface would make conditional fairly complex use cases IMO.

What would your perfect interface be like?
jkl
(I love how this topic has digressed from its origins.)

(29-11-2018, 12:13 PM)z3bra Wrote: There is no "standard" tool.

That's the problem: The pure existence of a theoretical standard which is only partially implemented will not make your life easier. In theory, a lot of users could rely on a consistent userland, e.g. "vi is everywhere", including certain versions of Windows. Now can they?

(29-11-2018, 12:13 PM)z3bra Wrote: I think POSIX is still relevant today. I think it defines a sane base for OS development

Function-wise, yes - command-wise, probably not. Much of POSIX was written without any respect to graphical user interfaces. (I'll come back to that.)

(29-11-2018, 12:13 PM)z3bra Wrote: The standard might even be too "loosy", because it only defines the minimal stuff needed

I would argue that vi, the editor that started this discussion ;-), is not "the minimal stuff needed" - ed is.

(29-11-2018, 12:13 PM)z3bra Wrote: Text is still a good human-to-machine interface (IMO, better than sound for example, or pictograms), and POSIX defines its standards around this interface.

POSIX follows a hardware standard that was outdated thirty years ago. "My" perfect interface would be a sane mixture between (a visually more appealing) Plan 9 and dwm, I guess. I learned to make my peace with the mouse. (However, the default Plan 9 lacks hotkeys, rio's missing ability to spawn a terminal without drawing a window manually can be annoying. I guess Windows has spoiled me.) Imagine an operating system that was built upon a graphical interface instead of wrapping the graphical interface around a text-based system. Many of the architectural problems of Windows "9x" came from the DOS base which couldn't just be replaced.

And as modern server hardware is incredibly powerful, nothing would stop us from using graphical remote control instead of 70s-style ssh. I understand that editing configuration files is mainly a text-only task - but using a computer should not.
z3bra
(I love this topic as well, and its title sums it all :P)

I think that you can rely on vi being available whenever you use an OS that claims to be "POSIX compliant", and that's why today I consider the ability to "save & quit" in vi one of the basic skills of any linux sysadmin.
Also, vi is some minimal stuff! As you praise graphical interfaces so much, I can't believe you'd vote for ed as the defacto standard for text editing.

I like your idea about the computer built around its graphical interface, and I must admit that I love how plan9 managed to make it's "graphical" interface (read "mouse usage") interface so well and be so efficient against the system.
Still, you interface with the system in text mode, and you don't "need" the mouse to actually make it work.

Imagine a system where you would NEED to be in graphical mode to update the system. That would be impossible to automate it properly... What if you had to flip a switch with the mouse, or click a button to restart a process whenever you edit a config file? That'd be painful...

Also, running remote GUI admin console remotely over ssh has been a thing for years, I guess people simply got used to the CLI ;)
jkl
"Available" as in "can be installed if you wish"? Well, so are most other editors, including (but not limited to) Emacs, TECO and probably joe or something. - vi as defined by POSIX is not a graphical editor and it is definitely more overkill than ed for most text editing. Now why does POSIX need two standard text editors? If minimalism was important, they should just have ignored vi. And I actually prefer ed to vi - much for the same reason as why I prefer sam to acme for most of my non-programming tasks. sam, being a graphical multi-line ed, is a good example of what I meant by a "sane mixture" - a whole OS using the same UI language would be neat, in my opinion. (And yes, my usual IDE at home is still Emacs. ;-))

Graphical Windows installations can be automated with configuration files. Why can Microsoft do that and "Unix-like systems" can't? - Yup, people got used to the CLI, much like they got used to printers as the only output medium in the 60s. ;-)
z3bra
Available as in "you can expect it to be here by default". You're right though that there is no need for two editors. One of them is more friendly than the other (and even if I love ed, it is not it ^^), which might be why it is present.

Why do you call sam a "multiline" ed though? Because its command apply to the dot rather than linewise?
I love sam as well (and that is the reason why I use vis(1), which uses sam expressions and commands, wrapped in a vi-like interface), but I must admit that I don't know how it integrates within plan9, so I don't understand your comment about the OS level UI language. What do you mean?

Unix systems can totally provide GUI installations, and they do! see Ubuntu store for example which is nice.
Dpkg also has a graphical frontend, which is similar to Windows wizard.
I guess the CLI is better at letting people express what they want to the computer, rather than GUI. You have to learn how to "speak" your computer language, which is tedious, but in the end it is easier to bind your computer's will by explaining what you want to do, rather than miming it through the GUI
twee
i never got on with plan9 and acme. I havent used it much but I thought acme was too reminiscient of emacs without actually getting there :(

posix as a standard definitely has some issues, but i think that at least there is a standard thene at all. The situation is a bit to close to the browser wars in my eyes but as long as my scripts run on linux and bsd im happy .

(also this absolutely fits here, it is a great introduction to the opinions of forum members , all 2 of you ;))




Members  |  Stats  |  Night Mode  |  Help