9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] the practicality of plan 9
@ 2022-10-30 17:04 fig
  2022-10-30 17:41 ` sirjofri
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: fig @ 2022-10-30 17:04 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 1650 bytes --]

hi everyone. let me say up front that i do not think plan 9 has to be
practical to be worth liking or using. please do not take this email as
provocative or interrogatory, we are all on the *9fans* mailing list for a
reason.

a month or so ago, i tried ‘getting into’ plan 9, and i have been
unsuccessful due to the difficulty of making a grid when i can’t port
forward or basic protocols like irc or torrent on my university network.
that being said, i have not given up, and my plan 9 plans are lying dormant
until i can attend the next sdf plan 9 bootcamp (when is that btw?) which
im betting on improving my proficiency with the OS so i can solve these
problems.

but today i was thinking about my grid, what my cpu server and file server
would be, and i realized that these servers would likely be not much more
powerful than the “terminal” machine i would be accessing them from in the
first place. now this doesn’t make plan 9 useless— it’s still so
interesting to me— but i want to be able to find some advantage to having a
grid.

so i ask: what are ways i could make a grid really shine? through design
and/or usage, things that make a grid nice to have. i still enjoy 9front on
a single machine, and plan9port is now a must-have on my unix machines. i
know plan 9 wants a network, but why would a user want plan 9 to have a
network? if that makes any sense :^)

fig

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M4737678c8e6bd0c2a2ea59ab
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 2296 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-10-30 17:04 [9fans] the practicality of plan 9 fig
@ 2022-10-30 17:41 ` sirjofri
  2022-10-30 18:06 ` [9fans] " adventuresin9
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 15+ messages in thread
From: sirjofri @ 2022-10-30 17:41 UTC (permalink / raw)
  To: 9fans

Hello,

in my opinion (and experience) having a Plan 9 _grid_ is only really beneficial for larger networks (where there's a reason to have a separation for load balancing or maintenance reasons) or individuals who plan to build services with some scale. For others it's mainly playing around to learn those things or just because we can.

For example, a standard™ grid really shines with a good fileserver. I mean, it's the core of all your files and also the configuration of the other nodes in the machine. In an ideal setup you can just reboot an individual service node, or even replace it, and it just reboots using the kernel and configuration from the fileserver.

Also consider multiple users: each one can have their own terminal with a full Plan 9 kernel that's directly connected with the fileserver. You get low latency when interacting with the local kernel (e.g when running applications), but somewhat higher latency accessing files (including starting programs, though you can work around that quite easily). Big benefits are, it doesn't matter which terminal you are on, you always get the same interface to your resources (files _and_ services inside the grid), but still maintaining good speed since everything is running locally.

Well, not everything, since you can obviously off-load heavy tasks to the other servers inside your grid. Use your terminal as an interface, but do heavy tasks on big clunky machines in your network.

That's just my thoughts.

sirjofri

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M4909fd69995720631c9cd88f
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [9fans] Re: the practicality of plan 9
  2022-10-30 17:04 [9fans] the practicality of plan 9 fig
  2022-10-30 17:41 ` sirjofri
@ 2022-10-30 18:06 ` adventuresin9
  2022-10-30 18:24 ` [9fans] " ori
  2022-12-18  1:30 ` Ethan Azariah
  3 siblings, 0 replies; 15+ messages in thread
From: adventuresin9 @ 2022-10-30 18:06 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 1324 bytes --]

I can give some examples of my grid.

A big benefit to having a dedicated file server is that no matter what "terminal" I sit at, I always see the same desktop and files.  I can sit at my desk with drawterm on a Linux workstation, or in bed with drawterm on a Windows laptop, or using a raspberry pi as a bare metal 9Front terminal.  

CPU server doesn't have to mean number crunching.  I have a raspberry pi cpu server that has a sensors hooked to it, and runs a file system to send commands to smart lights.  And another that has sensors and displays simple data using an led grid.  I made a kind of router using an old Dell and a used 4 port nic, and it is technically a cpu server, in that it has no monitor or keyboard and boots off the file server.  

As a learning experience, having separate file/cpu/terminal is nice because you can actually practice integrating them on a network.  However, if you are trying to do this out of a university dorm, then I could see things being so cramped that running a bunch of computers to kind of do 1 thing would seem overly complicated.
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-Me1665fdd806705e533a7aa58
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 1950 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-10-30 17:04 [9fans] the practicality of plan 9 fig
  2022-10-30 17:41 ` sirjofri
  2022-10-30 18:06 ` [9fans] " adventuresin9
@ 2022-10-30 18:24 ` ori
  2022-11-03 17:03   ` fig
  2022-12-18  1:30 ` Ethan Azariah
  3 siblings, 1 reply; 15+ messages in thread
From: ori @ 2022-10-30 18:24 UTC (permalink / raw)
  To: 9fans

Quoth fig <type9freak@gmail.com>:
> so i ask: what are ways i could make a grid really shine? through design
> and/or usage, things that make a grid nice to have. i still enjoy 9front on
> a single machine, and plan9port is now a must-have on my unix machines. i
> know plan 9 wants a network, but why would a user want plan 9 to have a
> network? if that makes any sense :^)

As a single user, the biggest benefit I get is being
able to rapidly test and debug, with netboot, shared
binaries, and the ability to panic without losing any
work, and being able to share stuff with my home
machine when I'm hacking in a coffee shop (like I am now)

With a group of people, being able to share servers
means being able to share work. At the hackathon last
summer, we had set up a CPU/file server. We were
netbooting test kernels, but also sharing our work
in progress, data, and documents via our home dirs,
getting feedback, and even at times just editing
other people's files (the file server had permissions
wide open)


------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-Mde109e6c3a6a18b64306ac1d
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-10-30 18:24 ` [9fans] " ori
@ 2022-11-03 17:03   ` fig
  2022-11-03 19:35     ` sirjofri
  0 siblings, 1 reply; 15+ messages in thread
From: fig @ 2022-11-03 17:03 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 1495 bytes --]

ori, adventuresin9, sirjofri:

thank you kindly for your responses. i am very sick so i do not contain the
energy to quote your replies and respond to them individually. apologies.

i have a better understanding of plan 9 grids now. as i understand it, the
elegance of plan 9 is in its simplicity, not in unique features or
abilities.

your personal examples are appreciated. ori, kernel development seems
beyond my horizon at this point, but it may come sooner than i think.
adventuresin9, your explanation of a cpu server was very helpful. and
sirjofri, you seem to be correct about a file server being so nice. i set
up a local file server on a laptop just to experiment, and while i’m
definitely not taking full advantage of what it has to offer, i understand
the convenience.

thanks again you guys. i recently posted on the r/plan9 subreddit with a
short list of small questions. if anyone would be so generous as to provide
understanding to any of them, i would be most grateful. i am eager to give
back to the plan 9 community as soon as possible, instead of taking up your
time. i’m documenting all helpful information, scripts, etc. so that once i
get comfortable i can have make a document to help others go down the same
path.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M552425660be782a5a9d011cd
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 2138 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-11-03 17:03   ` fig
@ 2022-11-03 19:35     ` sirjofri
  2022-11-08 23:07       ` fig
  0 siblings, 1 reply; 15+ messages in thread
From: sirjofri @ 2022-11-03 19:35 UTC (permalink / raw)
  To: 9fans

Hello,

just wanted to add that (independent of grids) what's especially great on Plan 9 is the general concept of "resource abstraction".

Let's first consider what "resource" means in this context, since it can be anything: computing resources might be the obvious, but user files are also resources, as well as practical abstracted resources from more complex systems and processes. Basically anything can be a resource.

On Plan 9, all of these resources can be abstracted as a filesystem, which is the common abstraction for all things. Those filesystems are of course network ready and there's no type of "special" filesystem unlike on many other operating systems (for example, on linux you have some special filesystem that manages disk space and that embeds into the OS. On Plan 9 it doesn't matter what's under the hood, as long as it talks 9p it's fine).

And since you have fully dynamic namespaces per process basically you can control which exact services (as a filesystem) you want to use for your specific purpose. You want to use a different network card for your process? Just import the filesystem. You want to access another microscope, telescope or camera for your image processing software? Just import that filesystem. That's not a camera but stored images you captured earlier? Who cares. As long as your software doesn't care, just use it.

This also works great with interfaces to hardware or software resources. As long as the interface looks the same you can easily exchange a filesystem with another. Just build your namespace and do what you want.

And since Plan 9 is fully network ready nobody cares about if the filesystem is actually stored on the same machine, a remote machine on the same network, at the other end of the world, or just a small arduino that talks 9p over some weird infrared signal line some teenager constructed in their basement. It just doesn't matter, the system doesn't care.

In my opinion that's where Plan 9 really shines and empowers me to do crazy stuff. Of course it's more ideological and philosophical, but it's a great perspective to have. And it's more fun to work with it that way.

This is also why I think Plan 9 is very modern. There are many new ideas nowadays that you can find within Plan 9 already in a much more elegant way. Take alone the plumber, which is an incredible utility. It's simple and you can find more "modern" (i.e. complex) solutions on android/ios, windows 10+, mac and modern linux environments, but plumber is just more simple and powerful. And that's just one example, pretty sure you cam find other examples yourself.

Well, again I just want to add a small little detail that's great but I write a long passage. Sorry for the long message.

sirjofri

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-Mc4800112cc3288d8076ebe16
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-11-03 19:35     ` sirjofri
@ 2022-11-08 23:07       ` fig
  2022-11-09  3:20         ` Lucio De Re
  0 siblings, 1 reply; 15+ messages in thread
From: fig @ 2022-11-08 23:07 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 957 bytes --]

sirjofri, thank you for the reply. don’t be sorry for the long response, i
greatly appreciate it. when i was told plan 9 is built on only a few
principles and basic abstractions, that was spot on.

i’ve decided i’m going to make my grid at home. the only thing i haven’t
figured out is networking hardware. i’m hoping if i connect all the devices
with a network switch, that will work. however i’m not sure what it will
take to get online. i would imagine if i gave a cpu server internet
connection, i could rcpu to that server and be online. but that is probably
not a very elegant way to do it. i’m just going to try it myself and see
what happens (run into problems.)

thanks again for the replies.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M9ffde59ecd9189912976efa9
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 1523 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-11-08 23:07       ` fig
@ 2022-11-09  3:20         ` Lucio De Re
  2022-11-09  3:50           ` adventuresin9
  0 siblings, 1 reply; 15+ messages in thread
From: Lucio De Re @ 2022-11-09  3:20 UTC (permalink / raw)
  To: 9fans

On 11/9/22, fig <type9freak@gmail.com> wrote:
> sirjofri, thank you for the reply. don’t be sorry for the long response, i
> greatly appreciate it. when i was told plan 9 is built on only a few
> principles and basic abstractions, that was spot on.
>
If you read the early Plan 9 documentation, you'll discover that
originally what is affectionately know as Ken's server was dedicated
to file serving and Internet routing. Today, that may no longer be the
best approach, for various reasons, but it seems right to understand
how Plan 9 evolved as there may be important lessons in its history.

For example, I frequently encounter situations where a mildly enhanced
"proto" feature would be a very fitting approach to address them.

Lucio.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-Meabb6bfe20002d93db36aa56
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-11-09  3:20         ` Lucio De Re
@ 2022-11-09  3:50           ` adventuresin9
  2022-11-09 23:14             ` fig
  0 siblings, 1 reply; 15+ messages in thread
From: adventuresin9 @ 2022-11-09  3:50 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 897 bytes --]

The Plan9 way of handling internet gateways is to have a machine with 2 network adapters.  One connected inside your network, and one outside.  You configure the internal one, and bind it to /net.  And the internet facing port your bind to /net.alt.  Then any computer on the grid can import (rimport in 9front) /net.alt, and bind it over that computer's /net.  

'rimport gateway /net.alt /net'

And this is per process, or per window.  So you make a window on you inside the grid terminal, import the gateway's /net.alt, and then run mothra or netsurf.  Open another window, and it will just have your terminals default /net that only sees inside the grid.
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-Ma7dfec65ec3610e56097c9bd
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 1495 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-11-09  3:50           ` adventuresin9
@ 2022-11-09 23:14             ` fig
  2022-11-10  3:55               ` adventuresin9
  0 siblings, 1 reply; 15+ messages in thread
From: fig @ 2022-11-09 23:14 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 712 bytes --]

>
> have a machine with 2 network adapters.  One connected inside your
> network, and one outside.
>

is there something to get a raspberry pi to have two ethernet ports? i
would like to avoid buying an optiplex just to use as a gateway, especially
if it will be running at all times. worst case, i *could* make it the file
server as well, since i also still need a machine that takes 3.5” drives
that isn’t some big PC. that way i won’t have to get two optiplexes.


------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-Meafe54654029f1d2a3532a7a
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 1662 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-11-09 23:14             ` fig
@ 2022-11-10  3:55               ` adventuresin9
  2022-11-10  4:52                 ` fig
  0 siblings, 1 reply; 15+ messages in thread
From: adventuresin9 @ 2022-11-10  3:55 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 396 bytes --]

You can use a usb to ethernet adapter to add more ethernet to a pi.  The ethernet on a raspberry 3 is actually just a usb to ethernet soldered right onto the board.  
------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M1ddedd17815304c72cc77b3a
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 898 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-11-10  3:55               ` adventuresin9
@ 2022-11-10  4:52                 ` fig
  2022-11-10 12:05                   ` hiro
  0 siblings, 1 reply; 15+ messages in thread
From: fig @ 2022-11-10  4:52 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 1072 bytes --]

i did think of this, but i was unsure of its compatibility with 9front. the
FQA only
lists two usb to ethernet adapters which did not look popular or generic
when i looked them up. i will buy the most popular one and hope it works.

On Wed, Nov 9, 2022 at 7:55 PM <adventuresin9@gmail.com> wrote:

> You can use a usb to ethernet adapter to add more ethernet to a pi.  The
> ethernet on a raspberry 3 is actually just a usb to ethernet soldered right
> onto the board.
> *9fans <https://9fans.topicbox.com/latest>* / 9fans / see discussions
> <https://9fans.topicbox.com/groups/9fans> + participants
> <https://9fans.topicbox.com/groups/9fans/members> + delivery options
> <https://9fans.topicbox.com/groups/9fans/subscription> Permalink
> <https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M1ddedd17815304c72cc77b3a>
>

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M409cc8dffabf275dc8ffd486
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 1548 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-11-10  4:52                 ` fig
@ 2022-11-10 12:05                   ` hiro
  0 siblings, 0 replies; 15+ messages in thread
From: hiro @ 2022-11-10 12:05 UTC (permalink / raw)
  To: 9fans

why not get a used apu2 instead.
it comes with 3 real ethernet ports

On 11/10/22, fig <type9freak@gmail.com> wrote:
> i did think of this, but i was unsure of its compatibility with 9front. the
> FQA only
> lists two usb to ethernet adapters which did not look popular or generic
> when i looked them up. i will buy the most popular one and hope it works.
>
> On Wed, Nov 9, 2022 at 7:55 PM <adventuresin9@gmail.com> wrote:
>
>> You can use a usb to ethernet adapter to add more ethernet to a pi.  The
>> ethernet on a raspberry 3 is actually just a usb to ethernet soldered
>> right
>> onto the board.
>> *9fans <https://9fans.topicbox.com/latest>* / 9fans / see discussions
>> <https://9fans.topicbox.com/groups/9fans> + participants
>> <https://9fans.topicbox.com/groups/9fans/members> + delivery options
>> <https://9fans.topicbox.com/groups/9fans/subscription> Permalink
>> <https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M1ddedd17815304c72cc77b3a>
>>

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M3923a7a1d4aadfd9c0de7ffc
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-10-30 17:04 [9fans] the practicality of plan 9 fig
                   ` (2 preceding siblings ...)
  2022-10-30 18:24 ` [9fans] " ori
@ 2022-12-18  1:30 ` Ethan Azariah
  2022-12-18 16:29   ` cinap_lenrek
  3 siblings, 1 reply; 15+ messages in thread
From: Ethan Azariah @ 2022-12-18  1:30 UTC (permalink / raw)
  To: 9fans

On Sun, Oct 30, 2022, at 5:04 PM, fig wrote:
>
> basic protocols like irc or torrent

wircrc is a multi-window irc client written in shell script. It's probably best used in a sub-rio to keep all its windows together. I'm not sure where to find it. If it's not in contrib, maybe ask cinap_lenrek. There's also a single-window shell script client, ircrc which is in 9front and probably contrib too.

9front has a bittorrent client. Its source is 1 C file.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M18cf167fae6a3d8f624c3ae7
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] the practicality of plan 9
  2022-12-18  1:30 ` Ethan Azariah
@ 2022-12-18 16:29   ` cinap_lenrek
  0 siblings, 0 replies; 15+ messages in thread
From: cinap_lenrek @ 2022-12-18 16:29 UTC (permalink / raw)
  To: 9fans

https://felloff.net/usr/cinap_lenrek/wircrc

--
cinap

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Td6c4be6d8502dbd0-M342927299fb96dc37f06043b
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2022-12-18 16:30 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-30 17:04 [9fans] the practicality of plan 9 fig
2022-10-30 17:41 ` sirjofri
2022-10-30 18:06 ` [9fans] " adventuresin9
2022-10-30 18:24 ` [9fans] " ori
2022-11-03 17:03   ` fig
2022-11-03 19:35     ` sirjofri
2022-11-08 23:07       ` fig
2022-11-09  3:20         ` Lucio De Re
2022-11-09  3:50           ` adventuresin9
2022-11-09 23:14             ` fig
2022-11-10  3:55               ` adventuresin9
2022-11-10  4:52                 ` fig
2022-11-10 12:05                   ` hiro
2022-12-18  1:30 ` Ethan Azariah
2022-12-18 16:29   ` cinap_lenrek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).