Diff for /wikisrc/users/jdf.mdwn between versions 1.6 and 1.11

version 1.6, 2012/07/06 22:47:31 version 1.11, 2013/02/27 00:02:45
Line 1 Line 1
 [[!toc ]]  **Contents**
 # jdf's wiki page  
 This is just my wiki page where I want to write down my goals, project ideas, running projects and what I generally want to do.  
 # project ideas  
 These project ideas are not sufficient for the [[projects]], perhaps only my own stupid ideas, but what I would like to see for NetBSD. Some of them might be redundant with the official ones, but these are the ones I might personally take care of one day.  
 * zfs -- there was an attempt to port zfs to NetBSD, but it stalled. Somebody to take care of zfs being imported to NetBSD, and running smooth, would be *very* nice.  
 * HAMMER -- I don't know much about it (see DragonFly BSD), but from what you can read, it seems very nice. Looking at the current state of Oracle and zfs, it might be better to care for HAMMER than zfs. On the other hand, zfs is very stable and widely distributed.  
 * unionfs -- there are some bugs with union I would like to see fixed. Imagine running a live CD by having a root read-only, and then simply mounting a tmpfs writable upon that.  
 * raidfs -- once unionfs is fixed, it could be possible to integrate a mirror, perhaps some redundancy checks with unionfs to have a flexible raid on vnode basis, not depending on the underlying filesystem or device.  
 * userwiki -- I know this is a controversary topic... So no matter how and where, but having a place where users can contribute content in an ordered way (i.e., not on a mailing list), would be nice. See below for advocacy.  
 * NetBSD derivates/distributions -- provide prepackaged NetBSD distributions for several applications, see below  
 Providing a more unified, complete system:  
 * binary updates -- imho this is being worked on, but I don't remember who it was. Like the freebsd-update tool from FreeBSD, an easy way to update NetBSD base system from binary. Currently, you have to unpack manually and run [[!template id=man section="8" name="etcupdate"]], or use [[!template id=man name="sysinst" section="8"]] for this purpose. Running something that fetches the necessary updates and updates these files would be nice.  
 * disk utility -- a tool for unified disk editing, and not having to use [[!template id=man name="disklabel" section="8"]], [[!template id=man name="gpt" section="8"]], [[!template id=man name="fdisk" section="8"]], and [[!template id=man name="dkctl" section="8"]] separately, which can be very confusing, would be very nice. This shouldn't be too difficult. The functionality and the code is there, you just had to think of a usage, rewrite the frontend, and provide a compatibility mode for the old tools. Perhaps gpart is what I'm looking for, but I didn't dive into it.  
 * automatic NetBSD installation -- important for larger setups, where you want to automatically install NetBSD. Essentially, it should just be a small script setting up a ramdisk, downloading tarballs from a configurable source, partition disks (no hassle - just take the whole disk), make filesystems, extract tars, run installboot, execute manual scripts to be downloaded somewhere (e.g. if the user wants to setup network configuration or root password)  
 * a tool to change values in rc.conf, and enable/disable services. Currently, there's a bunch of scripts to check, then edit rc.conf, etc. Tom Rhodes from FreeBSD had ideas towards this (together with fscd), to build a more unified rc on top of current BSD's rc, just as an add-on. I'd really like to see that real, and for NetBSD, some time.  
   [[!toc levels=2 ]]
 I won't be working on this, as I'm not really into such low-level things:  # jdf's wiki page
 * run NetBSD in a web browser. There was a project which ran Linux in a web browser. If it's possible, NetBSD should run in a web browser, too.  
 # My personal interests  
 I'm not into pkgsrc, but for the easy packages I use regularly, I try to help updating them.  
 * fixing small userland bugs  
 * caring for [[!template id=pkg categ0ry="sysutils" name="fscd"]] (a daemon to check service run state)  
 * writing mkdumpdisk - a tool to backup the system, including restore  
 * caring for [[!template id=pkg category="www" name="opera"]] being up-to-date  
 * caring for [[!template id=pkg category="devel" name="fossil"]] being up-to-date  
 * keeping the events site up-to-date  
 # NetBSD derivates  
 Currently, NetBSD is a very generic operating system, leaving almost all choices up to the user. While some consider this a strength, and it definetly is for people who know what they're doing, it's an obstacle for people who then have to setup *everything* by hand.  
 It shouldn't be much work to just package distribution sets that already include a list of packages it installs and several preconfigured configuration files, maybe also some additional wrapper scripts.  
 Technically, this could also be integrated to pkgsrc as well. You just have to package everything you want (dependencies, files, etc.) into one package, and then depend on this single package. The finalized derivate would then just depend on this single package, and maybe contain all needed files already on the CD itself, as well as some configuration files for /etc.  
 * NetBSD serve -- a compilation of tools and scripts that are useful for using NetBSD as a server. Maybe there could be even more flavours like this, packaged into single pkgsrc packages, which contain preconfigured "appliances" like an ldap package, a webserver package, etc., everything with a sane configuration default.  Note: This is not what I'm really working on, it's just a place to gather some 
 * NetBSD develop -- just a compilation of some desktop tools. Telling somebody what he has to do to get a graphical environment with NetBSD (light-desktop) is annoying, so just have a distribution where light-desktop and maybe some other tools are preinstalled. I think 'develop' might be a good description of the targeted audience, as then you can choose a fairly tight set of packages to put in: light-desktop, vim, several VCSs, etc.  notes I took about some topics.
 * NetBSD secure -- there was this teenie book, "Little Brother" from Cory Doctorow. There, they had an operating system that was actually only on a CD, and encrypted the whole hard disk, and everything ran on the hard disk. Imagine you had the same for NetBSD... A base system (Jibbed would be sufficient), which has some small wrapper scripts trying to decrypt a hard disk, and if it succeeds, mounts this as its /usr/pkg or so. You could have a completely virgin OS (the CD, which is read-only), and a completely encrypted hard disk, which carries everything variable. Updates of the base system would be just burning a new CD... I know there are close projects already done in Linux, but they all assume an USB flash drive.  
   ## Guide migration
 # Advocacy  I'm currently trying to migrate the NetBSD guide to the wiki. The relevant
   files are these ones:
 Imho, NetBSD currently doesn't have a good visibility in the Open Source community. These are my observations (if I knew solutions, I would write or apply them ;-):   * ap-ack
    * ap-biblio
    * ap-contrib
    * ap-xml
    * appendix
    * bluetooth
    * boot
    * build
    * carp
    * ccd
    * cgd
    * chap-exinst
    * chap-intro
    * cons
    * dns
    * edit
    * fetch
    * index
    * inetd
    * inst-media
    * inst
    * kernel
    * linux
    * lvm
    * mail
    * misc
    * net-intro
    * net-practice
    * net-services
    * pam
    * preface
    * print
    * rc
    * rf
    * rmmedia
    * tuning
    * updating
    * upgrading
    * veriexec
    * x
   Already done:
    * audio
   directory can do so.
   ## NetBSD flavoured
   people who then have to setup *everything* by hand.
   just minor sysinst modifications.
   It shouldn't be much work to just package distribution sets that already
   include a list of packages it installs and several preconfigured configuration
   files, maybe also some additional wrapper scripts.
   provide a list of packages you consider necessary.
   My original attempt was to create a range of distributions for different 
   least the following tools on board:
    * vim
    * pkgin
    * git
    * fossil
    * subversion
    * some other important VCSes
    * light-desktop (i.e., LXDE)
    * screen (tmux is in base)
    * some sane X terminal emulators
    * a browser (Firefox?!)
    * a mailer (Thunderbird? Claws-mail?)
    * emacs (maybe too large?)
    * perl
    * python
    * mplayer (when it's possible to pack it up)
    * pdf viewer
    * preconfigured bozohttpd running on localhost showing documentation
   ## NetBSD documentation
   In [this 
   markdown browser.
   small script which regularly updates the documentation.
   ## NetBSD website
   homepage with a bit important information, but all the essential technical 
   ## NetBSD community and marketing
   not used for marketing purposes.
   with a modern Linux.
   hooks in CVS or Subversion).
   The same holds for many other decisions.
   the website, maintaining packages, maintaining documentation, organising events, 
   rather consumers than contributors.
   many topics which don't require a developer status.
   I think breaking with the old habits and providing more community involvement 
   ## NetBSD current
   with compiling things on your own, etc. ...
   the current version where tmux was imported? Etc.
 * I have seen several smaller software projects which provide compiled binaries on their website, in many cases there was just a reference to "look into your system's package management, it's already there." For nearly all of them, the package is in pkgsrc, but the website doesn't reference it.  Tracking these changes more centrally, and providing a nice way to install and 
 * Though NetBSD is represented at most of the larger Open Source events, the advocacy material could be updated. In central Europe, there are already new flyers, badges as giveaways, T-Shirts and badges to sell, but there could be more. If you have ideas, write to netbsd-advocacy (at) NetBSD (dot) org.  track a current installation would be a great benefit for NetBSD.
 * There are many nice projects within NetBSD, but they aren't very visibile from the outside. [[!template id=man name="rump" section="3"]]? [[!template id=man name="npf" section="3"]]? The new [[!template id=man name="apropos" section="1"]]? All the prestigous projects are often kept silent, commited, used, but most people outside the NetBSD community (and especially *BSD) know about them.  
 * For contributors with "minor" interests like writing small articles, correcting manpages, and providing other types of small patches, it seems extraordinarily difficult to get things done. A user-commitable wiki, and some methods to improve developer-contributor communication, might help here.  

Removed from v.1.6  
changed lines
  Added in v.1.11
