[9fans] novel userspace paradigms introduced by plan 9

2011-07-02 Thread Robert Seaton
Hello, 9fans!

I'm a GSoC student working on Plan 9 From Gentoo, a Gentoo project
to create a liveCD that comprises of a Gentoo base-system and a Plan
9-inspired userspace, instead of the typical GNU userspace.

However, I'm new to Plan 9, and I'm wondering if veteran 9'ers have
any suggestions for novel userspace concepts intro'd by Plan 9 that
should be included/documented or that still need to be ported to Linux
from Plan 9. These ideas don't necessarily need to be unique to Plan
9, as long as they are different from the typical GNU/Linux fare.

Some of the things I have discovered so far:
* Drawing windows on the screen via rio and mouse button 2
* Mouse chording
* Sending things via plumber
* Majority of text can be edited (i.e. old commands in the shell, etc)

Thanks,
robb



Re: [9fans] novel userspace paradigms introduced by plan 9

2011-07-02 Thread Jacob Todd
Private namespaces.


Re: [9fans] novel userspace paradigms introduced by plan 9

2011-07-02 Thread dexen deVries
On Saturday 02 July 2011 18:15:17 Robert Seaton wrote:
 (...)
 Some of the things I have discovered so far:
 * Sending things via plumber
 (...)


you've made me realize i've been using plumber-like stuff before.

back on KDE 3.5, there was that `dcop' thingie that i've employed for plumbing 
actions and selected text. it worked, it made my day every day back then. dcop 
had both ease of use and natural introspection.


pity dcop is dead now, and dbus can't even deliver the eulogy :-(



disclaimer: i'm not a plan 9 person for any viable value of `p9 person'


-- 
dexen deVries

 (...) I never use more than 800Mb of RAM. I am running Linux,
 a browser and a terminal.
rjbond3rd in http://news.ycombinator.com/item?id=2692529



Re: [9fans] novel userspace paradigms introduced by plan 9

2011-07-02 Thread Jack Johnson
On Sat, Jul 2, 2011 at 8:29 AM, dexen deVries dexen.devr...@gmail.com wrote:
 disclaimer: i'm not a plan 9 person for any viable value of `p9 person'

I'm in the same boat, but I aspire to be in the other boat. :)

-Jack



[9fans] To p9 or not to p9? (was: novel userspace paradigms introduced by plan 9)

2011-07-02 Thread dexen deVries
On Saturday 02 July 2011 19:24:07 Jack Johnson wrote:
 On Sat, Jul 2, 2011 at 8:29 AM, dexen deVries dexen.devr...@gmail.com 
wrote:
  disclaimer: i'm not a plan 9 person for any viable value of `p9 person'
 
 I'm in the same boat, but I aspire to be in the other boat. :)

i'm with you there ;-)


plan 9 seems to be where the action is those days. and i mean both the 
software ecosystem, the people that push it forward, and the mindset itself.


-- 
dexen deVries

 (...) I never use more than 800Mb of RAM. I am running Linux,
 a browser and a terminal.
rjbond3rd in http://news.ycombinator.com/item?id=2692529



Re: [9fans] novel userspace paradigms introduced by plan 9

2011-07-02 Thread Eli Cohen
I have used gentoo extensively and plan9 for a few years now as well, and
this concept of namespaces for processes is a confusing but interesting
concept.  maybe you could use grsec to limit the access to gentoo's file
system at a per-process level.  This would be somewhat similar to what
plan9 does, but you'd have to also find a good way to bind a directory
elsewhere in the tree at a per-process level, unified with what was already
there (aka, hopefully NOT like mount -o bind).  This is only the tip of the
iceberg; plan9 does this per-process filesystem namespacing to set up a good
environment for a system which adheres to the orginal unix philosophies
such as, everything has a file to represent it.  linux does this well for
data on the disk, device nodes, and whatever gets put in /proc.  it does not
do this, generally, for something like an email message.  a good plan9
program, however, is likely to do this.
as an example of the power of this concept, `% topng  /dev/screen 
screenshot.png' will use the relatively simple program topng to convert the
*file* /dev/screen into the *file* screenshot.png.
One major difference is X11.  In plan9, the system handles the graphics more
directly.  network export of windows is handled differently.  it might be
interesting to make a rio for linux which draws directly to /dev/fb0.  Or it
might be better to convert /dev/fb0 to a /dev/screen on linux, even in
userspace, and then more or less use rio for plan9.  performance might be an
issue, but plan9 people are still waiting on 3d graphics if they even care
enough to wait...

-Eli

On Sat, Jul 2, 2011 at 10:24 AM, Jack Johnson knapj...@gmail.com wrote:

 On Sat, Jul 2, 2011 at 8:29 AM, dexen deVries dexen.devr...@gmail.com
 wrote:
  disclaimer: i'm not a plan 9 person for any viable value of `p9 person'

 I'm in the same boat, but I aspire to be in the other boat. :)

 -Jack




Re: [9fans] novel userspace paradigms introduced by plan 9

2011-07-02 Thread dexen deVries
On Saturday 02 July 2011 20:23:02 Eli Cohen wrote:
 I have used gentoo extensively and plan9 for a few years now as well, and
 this concept of namespaces for processes is a confusing but interesting
 concept. 

linux'c `clone()' syscall (the underpinnings of fork()) actually do accept 
CLONE_NEWNS, CLONE_NEWNET, CLONE_VM and other flags, pretty close to p9's. 
there's also chroot() that moves an inch into the right direction.

however, due to security reasons (the SUID bit comes to mind, but must be 
other ones too), all that -- and mount() and mount(MS_BIND, ...) -- are 
restricted to superuser only; what a shame


maybe it is be possible to create a SUID-less Linux distro, based on factotum 
perhaps, that'd allow everybody access to those syscalls and options.



 One major difference is X11.  In plan9, the system handles the graphics
 more directly. 

afaik, x11 is considered an afterthought, bolted onto POSIX systems, and thus 
not integrated all that well. you can take a `screenshot' of textual console 
with the `cat' command, FWIW.



-- 
dexen deVries

 (...) I never use more than 800Mb of RAM. I am running Linux,
 a browser and a terminal.
rjbond3rd in http://news.ycombinator.com/item?id=2692529



Re: [9fans] novel userspace paradigms introduced by plan 9

2011-07-02 Thread simon softnet
Plan 9 is good because it is a system designed with such principles in mind
from the start.
I don't see any meaning in Linux adopting some set of plan 9
commands...vanity..

On Sat, Jul 2, 2011 at 8:36 PM, dexen deVries dexen.devr...@gmail.comwrote:

 On Saturday 02 July 2011 20:23:02 Eli Cohen wrote:
  I have used gentoo extensively and plan9 for a few years now as well, and
  this concept of namespaces for processes is a confusing but interesting
  concept.

 linux'c `clone()' syscall (the underpinnings of fork()) actually do accept
 CLONE_NEWNS, CLONE_NEWNET, CLONE_VM and other flags, pretty close to p9's.
 there's also chroot() that moves an inch into the right direction.

 however, due to security reasons (the SUID bit comes to mind, but must be
 other ones too), all that -- and mount() and mount(MS_BIND, ...) -- are
 restricted to superuser only; what a shame


 maybe it is be possible to create a SUID-less Linux distro, based on
 factotum
 perhaps, that'd allow everybody access to those syscalls and options.



  One major difference is X11.  In plan9, the system handles the graphics
  more directly.

 afaik, x11 is considered an afterthought, bolted onto POSIX systems, and
 thus
 not integrated all that well. you can take a `screenshot' of textual
 console
 with the `cat' command, FWIW.



 --
 dexen deVries

  (...) I never use more than 800Mb of RAM. I am running Linux,
  a browser and a terminal.
 rjbond3rd in http://news.ycombinator.com/item?id=2692529




Re: [9fans] novel userspace paradigms introduced by plan 9

2011-07-02 Thread Lyndon Nerenberg (VE6BBM/VE7TFX)
 I don't see any meaning in Linux adopting some set of plan 9
 commands...

Have you read the source code for their cat(1) ???