From 27d13175ccd378e4d3531176276475dd84af5fed Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 19 Jan 2009 13:09:16 +0100 Subject: Move some pages, remove others that are either out of date or whose content is duplicated somewhere else. --- grub.mdwn | 72 ++++++++++++ grub/tftp_boot.mdwn | 42 +++++++ hurd/libstore.mdwn | 6 +- hurd/running/debian/CrossInstall.mdwn | 2 +- hurd/running/debian/after_install.mdwn | 2 +- hurd/running/distrib.mdwn | 4 +- hurd/running/qemu.mdwn | 2 +- hurd/translator.mdwn | 124 +-------------------- hurd/translator/wishlist_1.mdwn | 129 ++++++++++++++++++++++ hurd/translator/wishlist_2.mdwn | 189 ++++++++++++++++++++++++++++++++ unsorted/ABITransitionStatus.mdwn | 9 -- unsorted/AdvancedGrubUsage.mdwn | 42 ------- unsorted/AptConfOffline.mdwn | 28 ----- unsorted/BootProcess.mdwn | 36 ------ unsorted/GNOME.mdwn | 11 -- unsorted/GrubNotes.mdwn | 70 ------------ unsorted/InstallNotes.mdwn | 2 +- unsorted/InstallTips.mdwn | 2 +- unsorted/LuisBustamanteHurdPage.mdwn | 11 -- unsorted/NewMachHistory.mdwn | 27 ----- unsorted/OskitMach.mdwn | 2 +- unsorted/PppDaemon.mdwn | 6 - unsorted/TranslatorExamples.mdwn | 61 ----------- unsorted/TranslatorPages.mdwn | 51 --------- unsorted/TranslatorWishList.mdwn | 193 --------------------------------- 25 files changed, 449 insertions(+), 674 deletions(-) create mode 100644 grub.mdwn create mode 100644 grub/tftp_boot.mdwn create mode 100644 hurd/translator/wishlist_1.mdwn create mode 100644 hurd/translator/wishlist_2.mdwn delete mode 100644 unsorted/ABITransitionStatus.mdwn delete mode 100644 unsorted/AdvancedGrubUsage.mdwn delete mode 100644 unsorted/AptConfOffline.mdwn delete mode 100644 unsorted/BootProcess.mdwn delete mode 100644 unsorted/GNOME.mdwn delete mode 100644 unsorted/GrubNotes.mdwn delete mode 100644 unsorted/LuisBustamanteHurdPage.mdwn delete mode 100644 unsorted/NewMachHistory.mdwn delete mode 100644 unsorted/PppDaemon.mdwn delete mode 100644 unsorted/TranslatorExamples.mdwn delete mode 100644 unsorted/TranslatorPages.mdwn delete mode 100644 unsorted/TranslatorWishList.mdwn diff --git a/grub.mdwn b/grub.mdwn new file mode 100644 index 00000000..a63ad181 --- /dev/null +++ b/grub.mdwn @@ -0,0 +1,72 @@ +# [GRUB](http://www.gnu.org/software/grub/) + +This section complements the [[InstallNotes]] with complete information regarding the GRUB boot loader. The syntax is different from Lilo's and so to scratch my own itch I'm creating this quick reference. The [Grub manual](http://www.gnu.org/software/grub/manual/grub.html) is another good reference. + +* update-grub is **Debian specific** and very nice. It will automatically create a /boot/grub/menu.lst file for the kernels in /boot/. It will also append a manually configured set for other partitions like the GNU/Hurd. +* grub-floppy is a **Debian specific** boot floppy creation script. +* mkbimage is a **Debian specific** boot disk image creation script. +* contains a Debian packaged makefile for creating CD & floppy images. Looks like it doesn't work properly. If you fix it, please send patches to the maintainer. +* essential GRUB commands & disk syntax + * root + * kernel + * module + * boot +* sample file + + title GNU/Linux + root (hd0,11) + kernel /boot/vmlinuz-2.4.18 root=/dev/hda12 ro + initrd /boot/initrd.img-2.4.18 + savedefault + + title GNU + root (hd0,15) + kernel /boot/oskit-mach root=device:hd0s16 -- + module /hurd/ext2fs.static \ + --multiboot-command-line=${kernel-command-line} \ + --host-priv-port=${host-port} \ + --device-master-port=${device-port} \ + --exec-server-task=${exec-task} \ + -T typed ${root} $(task-create) $(task-resume) + module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) + savedefault + + title DOS + rootnoverify (hd0,0) + chainloader +1 + +-- [[Main/GrantBow]] - 01 Oct 2002
-- [[Main/GrantBow]] - 22 Dec 2002 + +Another example, just as good, but a lot easier to read. The backslash at the end of each line is to "escape" the enter-key. So make sure there are no spaces following the backslashes! + + title GNU/Linux (Linux 2.4.18) + root (hd0,11) + kernel /boot/vmlinuz-2.4.18 root=/dev/hda12 ro + initrd /boot/initrd.img-2.4.18 + savedefault + + title GNUmach 1.3 + root (hd0,1) + kernel /boot/gnumach.gz root=device:hd0s2 + module /hurd/ext2fs.static --readonly \ + --multiboot-command-line=${kernel-command-line} \ + --host-priv-port=${host-port} \ + --device-master-port=${device-port} \ + --exec-server-task=${exec-task} \ + -T typed ${root} $(task-create) $(task-resume) + module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) + + title GNUmach 1.90 (CVS) + root (hd0,1) + kernel /boot/oskit-mach.gz root=device:hd0s2 -- + module /hurd/ext2fs.static --readonly \ + --multiboot-command-line=${kernel-command-line} \ + --host-priv-port=${host-port} \ + --device-master-port=${device-port} \ + --exec-server-task=${exec-task} \ + -T typed ${root} $(task-create) $(task-resume) + module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) + +Note the differences between GNUmach and OSKit-Mach. The latter **needs** the two dashes after the root specification! + +-- [[Main/JoachimNilsson]] - 09 Nov 2002 diff --git a/grub/tftp_boot.mdwn b/grub/tftp_boot.mdwn new file mode 100644 index 00000000..8e307b4f --- /dev/null +++ b/grub/tftp_boot.mdwn @@ -0,0 +1,42 @@ +## Advanced Grub + +[Grub](http://www.gnu.org/software/grub/) is a capable boot loader. This document is intended to capture some of its most interesting features and try to explain them a bit better than the texinfo documentation. + +### Debian Grub + +The Debian grub packages do not have networking enabled, so you have to apt-get the source, modify the debian/rules file to include --enable-network-card and dpkg-buildpackage to get a .deb of grub that supports TFTP. + +1. cd /usr/src/debian +2. apt-get source grub +3. cd grub-\_VERSION\_ +4. Add `--enable-tulip` or similar for your NIC to the `./configure` line of the `configure-stamp` target in the `debian/rules` file. +5. `dpkg-buildpackage` (as `root`) +6. `cd ..` +7. `dpkg -i grub*.deb` +8. cp /lib/grub/\_ARCH\_/\* /boot/grub/, e.g., _ARCH_ is `i386-pc` +9. Edit your `/boot/grub/menu.lst` (see below) +10. If your boot disk is `/dev/hda` ==> `grub-install (hd0)` + +### TFTP Boot + +Using trivial ftp to load a kernel is one of the best features of Grub. Here is how it is done. + +The `menu.lst` can look something like this: + + ifconfig --address=192.168.1.2 --server=192.168.1.1 + root (nd) + kernel /gnu/boot/oskit-mach.gz root=device:hd0s2 -- + root (hd0,1) + module /hurd/ext2fs.static \ + --multiboot-command-line=${kernel-command-line} \ + --host-priv-port=${host-port} \ + --device-master-port=${device-port} \ + --exec-server-task=${exec-task} \ + -T typed ${root} $(task-create) $(task-resume) + module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) + +**Note: Make sure there are NO spaces after the trailing backslases (\\)!!** + +For more information on GNUmach modules lines and installation setup, see [[Hurd/InstallNotes]] + +-- [[Main/JoachimNilsson]] - 13 Apr 2005 diff --git a/hurd/libstore.mdwn b/hurd/libstore.mdwn index ab649ebc..6b81691b 100644 --- a/hurd/libstore.mdwn +++ b/hurd/libstore.mdwn @@ -1,4 +1,5 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +Inc."]] [[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -31,3 +32,6 @@ device node below `/dev`... At you can find some effort to make some crypto store. + +At , another package +can be found. diff --git a/hurd/running/debian/CrossInstall.mdwn b/hurd/running/debian/CrossInstall.mdwn index 9a07424e..1cde150c 100644 --- a/hurd/running/debian/CrossInstall.mdwn +++ b/hurd/running/debian/CrossInstall.mdwn @@ -34,7 +34,7 @@ Now the program starts retrieving all the necessary base packages. ### Preparing to reboot -When all packages have been extracted we must prepare [[GrubNotes]] for the Hurd when we reboot. Add the below entry to your `/boot/grub/menu.lst` file to boot the Hurd in single user mode (-s). Single user mode is needed only for the two reboots when running the Native Install. +When all packages have been extracted we must prepare [[GRUB]] for the Hurd when we reboot. Add the below entry to your `/boot/grub/menu.lst` file to boot the Hurd in single user mode (-s). Single user mode is needed only for the two reboots when running the Native Install. title GNU (kernel GNUmach 1.3) root (hd0,2) diff --git a/hurd/running/debian/after_install.mdwn b/hurd/running/debian/after_install.mdwn index b795fd2b..4cdcaea9 100644 --- a/hurd/running/debian/after_install.mdwn +++ b/hurd/running/debian/after_install.mdwn @@ -35,7 +35,7 @@ In order to use DHCP, you need to install the `dhcp-client` package and run `dhc You surely want grub to have a nice menu entry able to boot GNU, instead of typing a boring arcane. There are Debian-specific scripts that may help -you. See the [[GrubNotes]] for this. +you. See [[GRUB]]'s page for this. # Setup `apt-get` diff --git a/hurd/running/distrib.mdwn b/hurd/running/distrib.mdwn index b0a6badd..935c0c2d 100644 --- a/hurd/running/distrib.mdwn +++ b/hurd/running/distrib.mdwn @@ -30,8 +30,8 @@
-
[[GrubNotes]]
-
A quick reference and explanation. There's also a topic for the new [[GrubConf]].
+
[[GRUB]]
+
A quick reference and explanation.
diff --git a/hurd/running/qemu.mdwn b/hurd/running/qemu.mdwn index 7e4816f5..f13ef5c8 100644 --- a/hurd/running/qemu.mdwn +++ b/hurd/running/qemu.mdwn @@ -23,7 +23,7 @@ volunteers and may not have been tested extensively. # What is Needed to create a QEMU image 1. First thing is to install [[/QEMU]]. -2. A [grub](http://www.gnu.org/software/grub/) boot disk for the floppy disk image needed for booting. The [0\.97 version](ftp://alpha.gnu.org/gnu/grub/grub-0.97-i386-pc.ext2fs) works fine. I downloaded it an renamed to `floppy.img`. Alternatively, the Debian grub-disk package (up till version 0.97-28) is fine as well. +2. A [[grub]] boot disk for the floppy disk image needed for booting. The [0\.97 version](ftp://alpha.gnu.org/gnu/grub/grub-0.97-i386-pc.ext2fs) works fine. I downloaded it an renamed to `floppy.img`. Alternatively, the Debian grub-disk package (up till version 0.97-28) is fine as well. 3. You will need a [Debian/Hurd installation CD](http://www.debian.org/ports/hurd/hurd-cd). K16 works fine. diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 0823f0db..0cfcc5fa 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -73,123 +73,7 @@ available. * ... -# Translator wishlist - -* [[devfs]] - -* FUSE(fuse.sourceforge.net/) compatilbility library. : just modify FUSE apps a and compile little to work as translator :-) - -* File Finder. (uses find, grep, a combination or a custom command (htdig, mp3 info) - * Files found will be available under one directory and then can be used like a normal directory - * usefull to generate Albums, Share only resulting files over the et, etc.. - * The filefinder can be scheduled or can be connected over some ipc like dbus to the VFS system if any to keep a watch for new files. - -* GNOKII, BitPim and openobex as translators - * grep through your SMSs! - * share your addressbook! - * "Attach" that funny SMS/MMS to your email. - * "svn commit" your joke collection :-D - -* Real Language Translator [[br]] - * cat /usr/translator/de-en/usr/share/doc/something.txt should take /usr/share/doc/something.txt , submit it to google's website and bring back results. - -* Mozilla Bookmarks = del.ici.ous - * Need more explanation ? ;-) - -* - * having a directory structure for a file can allow to "svn commit" the hnb document in a more "node-safe" manner, thus allowing multiple people to work on the same hnb document. - * This must be fairly easy as HNB can already export to XML and XMLfs already exists. - -* DavFS - * Just setup a 'WebDav share' as a directory. The implimentation of the protocol is already available in nautilus and konqueror. - -* Compiled form of your project - * you have your project in /somedir/project with source in /somedir/project/src .. /somedir/project/bin should always have the compiled version.. is it possible? - * The source has to have a MakeFile. - * creating /somedir/project/bin-somearch should aotomatically crosscompile - * Seems feasible for a small project. - -* Report generation FrameWork - an idea to be hugged by app developers..not kernel developers. - * You have financial data in some Spreadsheet like format in /yourFinance directory - * You add report templates to /yourFinance/repTemplates - * Once you save data in /yourFinance the next cat /yourFinance/reports/areportname will give you an uptodate report. - * This will be usefull for any purpose including serving by static page web servers, sharing over samba/nfs/ftp etc.! - * The advantage is any save to the spreadsheet will update the report.. not just from one software. - -* SVN (Subversion suite) - * like [[cvsfs]]. /svndir/version/version-no should automatically have subversion - * I think it is nice to write a generalised version control system framework library which will help in writing version control translators and other tools easily. - -* Flexi-acls - * First of all - Can this be done? : A translator bound to a directory must be able to access the contents of the directory which would have been accessible in the absence of the translator.. - * This will enable to wirte translators that can implement custom "Access Control Lists". Just imagine having advanced ACLs even if underlying FileSystem is dumb! Imagine changing the type of ACLs implemented with Just two commands - one to unattach previous translator and the next to attach a different ACL translator! The ACLs themselves may be stored in a different directory - -* The translator manager! - * Some translators will need to be inserted automatically - like for eg: hardware drivers .. - * Each hardware translator will pubish its capabilities. - * The "top" translator will query the capabilities of different hardware and match capabilities with the "slave" translators. That is it's only Job. - * The control is then handed over to the slave translator. - * The ranking not only looks who can handle the "most" capabilites of the hardware. If it finds that multiple translators can handle the same hardware, It will use other parameters to choose between them.. like may be the size in memory? The revision date? Stability (inferred from version number)? And to go to the extreme, the profiling data of the driver ;-P - * Advantage : The best driver wins! - -* An eg. Skip it if you understood the above :-): - * You have a driver that can handle VGA + SVGA + Super3d acceleration + Particle graphics + Works for nvidea card. - * You have a driver that can handle SVGA + VGA . - * You have a driver that can handle VGA. - * Case 1: Your card: A VGA card with some extra fonts.. - * First the VGA driver will be quireied .. ok can handle essential capability. - * Next SVGA driver: can handle but has extra module.. unnecassary weight . - * The Nvidia driver: can handle , but again unnecassary weight : ruled out. - * Winner : VGA driver: - * Case 2: Your card An SVGA card: - * First the VGA driver will be quireied .. ok can handle one essential capability. - * Next SVGA driver: can handle essential and one extra capability no extra weight.. - * The Nvidia driver: can handle , but unnecassary weight : ruled out. - * Winner : SVGA driver.. - * Case 3 : You have an VGA .. but no VGA driver .. then the SVGA driver would win. - -* Sound Server - * /ahsa - stands for Advanced HURD sound architecture :-) Just a temporary name .. for fun. - * /ahsa/out - directory wich will hold "plug"s where apllications come and join the server .. see below. - * /ahsa/out/mixer - main mixer - * /ahsa/out/nextfree - the file when "cat"ed gives the number of the next free plug - * /ahsa/plugins/ - info about available plugins - * /ahsa/out/[1..n]/ - dynamically generated directories for applications to plug on.. - * /ahsa/out/[1..n]/data this is where you should do a "cat somerawsoundfile>/ahsa/out/`cat /ahsa/nextfree`/data" - * /ahsa/out/[1..n]/plugins - the plugin stack .. volume is also a plugin.. - * /ahsa/out/[1..n]/plugins/[1..m]/ - echo "plugin param1 param2 param3" > /ahsa/out/[1..n]/plugins/`cat /ahsa/out/[1..n]/plugins/nextfree`/add - * /ahsa/out/[1..n]/plugins/[1..m]/params/{param1.. paramn} - * /ahsa/out/[1..n]/data.out - can be catted to get data processed through the server - * /ahsa/in - similar to /ahsa/out .. with except for an extra file to choose input devices. - * /ahsa/devs/{1..n} - devices detected .. can be dynamic .. there are usb soundcards and and midi devices. - * /ahsa/out/[1..n]/plugins/[1..m]/0/params/dev - * Dont get tempted for :/ahsa/out/[1..n]/params/{rate, channels, and other stuff} - * that goes into /ahsa/out/[1..n]/plugins/0/params if /ahsa/out/[1..n]/plugins/0/detected == "headerless audio" - * There are a lot more things I can continue about the "sound server" .. The Ideas simply dont seem to exhaust.. - * Some features/advantages - * set output's translator plugin as ordinary text -- have text to speech conversion done by sound server! - * Create and apply plugin presets by simply copying directories! - * Me getting dizzy thinking of the zillion more advantages. - * If you are really doing some ordinary output , all you need to do is "cat" data into next free "plug" and everything will be autodetected including the format of the data and sent to the final sound "merge"r - * Dizzy ... - -* /usr/share/menu !!!! extension for package management idea .. - * cat mymenuitem.menu >> /usr/share/menu/menu - * cat /usr/share/menu/debian/kde ... :-) - -* Spam/Malware Control - * /usr/antimalware/ - put your mail here.. it will automatically be scanned. when finished it will vanish from here .. - * /usr/antimalware/clean - ... and pop out from here - * /usr/antimalware/malware - or here. - -* NetDevice - * !JustImagine(tm)... settrans -ac /netdevices /hurd/netdevfs - [ host | net ] - * One can access device files remotely - * This could be acheived by allowing translators talk to one another over a network - * This will need translators to catch and handle ioctls (if there is such a thing in HURD). - * The device server which will listen to requests from the translators can be run even on a Linux machine!!! - * !JustImagine(tm)... accessing the crwriter/webcam on that GNU/Linux machine on the network using cdrecord of your local hurd machine! - * !JustImagine(tm)... running GNU/HURD on a minimalistic GNU/Linux(but with all the drivers) through a specially modified and optimised Qemu. The device server runs on the host machine, and the client translators access over the virtual network created by Qemu. You got most of the drivers for free! - -* Emacs File VFS - * I came to know from my Emacs loving friend that there are lots of VFS handlers in Emacs.. I was wondering if there can be translator which can tap into these Emacs VFS handlers. +# Translator Wishlists + + * [[wishlist_1]] + * [[wishlist_2]] diff --git a/hurd/translator/wishlist_1.mdwn b/hurd/translator/wishlist_1.mdwn new file mode 100644 index 00000000..6a4d591a --- /dev/null +++ b/hurd/translator/wishlist_1.mdwn @@ -0,0 +1,129 @@ +[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +* [[devfs]] + +* FUSE(fuse.sourceforge.net/) compatilbility library. : just modify FUSE apps a and compile little to work as translator :-) + +* File Finder. (uses find, grep, a combination or a custom command (htdig, mp3 info) + * Files found will be available under one directory and then can be used like a normal directory + * usefull to generate Albums, Share only resulting files over the et, etc.. + * The filefinder can be scheduled or can be connected over some ipc like dbus to the VFS system if any to keep a watch for new files. + +* GNOKII, BitPim and openobex as translators + * grep through your SMSs! + * share your addressbook! + * "Attach" that funny SMS/MMS to your email. + * "svn commit" your joke collection :-D + +* Real Language Translator [[br]] + * cat /usr/translator/de-en/usr/share/doc/something.txt should take /usr/share/doc/something.txt , submit it to google's website and bring back results. + +* Mozilla Bookmarks = del.ici.ous + * Need more explanation ? ;-) + +* + * having a directory structure for a file can allow to "svn commit" the hnb document in a more "node-safe" manner, thus allowing multiple people to work on the same hnb document. + * This must be fairly easy as HNB can already export to XML and XMLfs already exists. + +* DavFS + * Just setup a 'WebDav share' as a directory. The implimentation of the protocol is already available in nautilus and konqueror. + +* Compiled form of your project + * you have your project in /somedir/project with source in /somedir/project/src .. /somedir/project/bin should always have the compiled version.. is it possible? + * The source has to have a MakeFile. + * creating /somedir/project/bin-somearch should aotomatically crosscompile + * Seems feasible for a small project. + +* Report generation FrameWork - an idea to be hugged by app developers..not kernel developers. + * You have financial data in some Spreadsheet like format in /yourFinance directory + * You add report templates to /yourFinance/repTemplates + * Once you save data in /yourFinance the next cat /yourFinance/reports/areportname will give you an uptodate report. + * This will be usefull for any purpose including serving by static page web servers, sharing over samba/nfs/ftp etc.! + * The advantage is any save to the spreadsheet will update the report.. not just from one software. + +* SVN (Subversion suite) + * like [[cvsfs]]. /svndir/version/version-no should automatically have subversion + * I think it is nice to write a generalised version control system framework library which will help in writing version control translators and other tools easily. + +* Flexi-acls + * First of all - Can this be done? : A translator bound to a directory must be able to access the contents of the directory which would have been accessible in the absence of the translator.. + * This will enable to wirte translators that can implement custom "Access Control Lists". Just imagine having advanced ACLs even if underlying FileSystem is dumb! Imagine changing the type of ACLs implemented with Just two commands - one to unattach previous translator and the next to attach a different ACL translator! The ACLs themselves may be stored in a different directory + +* The translator manager! + * Some translators will need to be inserted automatically - like for eg: hardware drivers .. + * Each hardware translator will pubish its capabilities. + * The "top" translator will query the capabilities of different hardware and match capabilities with the "slave" translators. That is it's only Job. + * The control is then handed over to the slave translator. + * The ranking not only looks who can handle the "most" capabilites of the hardware. If it finds that multiple translators can handle the same hardware, It will use other parameters to choose between them.. like may be the size in memory? The revision date? Stability (inferred from version number)? And to go to the extreme, the profiling data of the driver ;-P + * Advantage : The best driver wins! + +* An eg. Skip it if you understood the above :-): + * You have a driver that can handle VGA + SVGA + Super3d acceleration + Particle graphics + Works for nvidea card. + * You have a driver that can handle SVGA + VGA . + * You have a driver that can handle VGA. + * Case 1: Your card: A VGA card with some extra fonts.. + * First the VGA driver will be quireied .. ok can handle essential capability. + * Next SVGA driver: can handle but has extra module.. unnecassary weight . + * The Nvidia driver: can handle , but again unnecassary weight : ruled out. + * Winner : VGA driver: + * Case 2: Your card An SVGA card: + * First the VGA driver will be quireied .. ok can handle one essential capability. + * Next SVGA driver: can handle essential and one extra capability no extra weight.. + * The Nvidia driver: can handle , but unnecassary weight : ruled out. + * Winner : SVGA driver.. + * Case 3 : You have an VGA .. but no VGA driver .. then the SVGA driver would win. + +* Sound Server + * /ahsa - stands for Advanced HURD sound architecture :-) Just a temporary name .. for fun. + * /ahsa/out - directory wich will hold "plug"s where apllications come and join the server .. see below. + * /ahsa/out/mixer - main mixer + * /ahsa/out/nextfree - the file when "cat"ed gives the number of the next free plug + * /ahsa/plugins/ - info about available plugins + * /ahsa/out/[1..n]/ - dynamically generated directories for applications to plug on.. + * /ahsa/out/[1..n]/data this is where you should do a "cat somerawsoundfile>/ahsa/out/`cat /ahsa/nextfree`/data" + * /ahsa/out/[1..n]/plugins - the plugin stack .. volume is also a plugin.. + * /ahsa/out/[1..n]/plugins/[1..m]/ - echo "plugin param1 param2 param3" > /ahsa/out/[1..n]/plugins/`cat /ahsa/out/[1..n]/plugins/nextfree`/add + * /ahsa/out/[1..n]/plugins/[1..m]/params/{param1.. paramn} + * /ahsa/out/[1..n]/data.out - can be catted to get data processed through the server + * /ahsa/in - similar to /ahsa/out .. with except for an extra file to choose input devices. + * /ahsa/devs/{1..n} - devices detected .. can be dynamic .. there are usb soundcards and and midi devices. + * /ahsa/out/[1..n]/plugins/[1..m]/0/params/dev + * Dont get tempted for :/ahsa/out/[1..n]/params/{rate, channels, and other stuff} + * that goes into /ahsa/out/[1..n]/plugins/0/params if /ahsa/out/[1..n]/plugins/0/detected == "headerless audio" + * There are a lot more things I can continue about the "sound server" .. The Ideas simply dont seem to exhaust.. + * Some features/advantages + * set output's translator plugin as ordinary text -- have text to speech conversion done by sound server! + * Create and apply plugin presets by simply copying directories! + * Me getting dizzy thinking of the zillion more advantages. + * If you are really doing some ordinary output , all you need to do is "cat" data into next free "plug" and everything will be autodetected including the format of the data and sent to the final sound "merge"r + * Dizzy ... + +* /usr/share/menu !!!! extension for package management idea .. + * cat mymenuitem.menu >> /usr/share/menu/menu + * cat /usr/share/menu/debian/kde ... :-) + +* Spam/Malware Control + * /usr/antimalware/ - put your mail here.. it will automatically be scanned. when finished it will vanish from here .. + * /usr/antimalware/clean - ... and pop out from here + * /usr/antimalware/malware - or here. + +* NetDevice + * !JustImagine(tm)... settrans -ac /netdevices /hurd/netdevfs - [ host | net ] + * One can access device files remotely + * This could be acheived by allowing translators talk to one another over a network + * This will need translators to catch and handle ioctls (if there is such a thing in HURD). + * The device server which will listen to requests from the translators can be run even on a Linux machine!!! + * !JustImagine(tm)... accessing the crwriter/webcam on that GNU/Linux machine on the network using cdrecord of your local hurd machine! + * !JustImagine(tm)... running GNU/HURD on a minimalistic GNU/Linux(but with all the drivers) through a specially modified and optimised Qemu. The device server runs on the host machine, and the client translators access over the virtual network created by Qemu. You got most of the drivers for free! + +* Emacs File VFS + * I came to know from my Emacs loving friend that there are lots of VFS handlers in Emacs.. I was wondering if there can be translator which can tap into these Emacs VFS handlers. diff --git a/hurd/translator/wishlist_2.mdwn b/hurd/translator/wishlist_2.mdwn new file mode 100644 index 00000000..3ea68999 --- /dev/null +++ b/hurd/translator/wishlist_2.mdwn @@ -0,0 +1,189 @@ +## Introduction + +The idea behind file system translators is a powerful concept which hasn't recieved much attention in the mainstream computing world. So here is a list of interesting translators I've been able to dream up. I'm sure there are many more ideas floating around out there, so add them to the list! + +The [ferris project](http://witme.sourceforge.net/libferris.web/features.html) has some great ideas and code in the area of userspace dynamic filesystems, as has the [FUSE project](http://fuse.sourceforge.net/). + +## Audio\_cdfs + +A translator which produces a directory of \*.wav files when you have an audio CD in the drive. + +## Ogg + +This translator could be a sub-directory of the Audio\_cdfs translator and it would translate the \*.wav files into Ogg Vorbis/MP3 format. + +## CDDB + +Of course it would be a lot nicer if the above two translators didn't name their files something worthless like track001.ogg. So we would want a translator which would hook up with a database on the web and produce meaningful file names. + +## Crypto + +A cryptographic/steganographic seem like a nice match with the concept of user-land file systems. I like the idea of something like `settrans -a /secure stegfs --mpeg file001.mpg` + +## Revision control + +All of the empty space on your drive is now being wasted. Why not have a revision control translator which tracks changes to your documents? See also [this guy](http://www.linuxjournal.com/article.php?sid=5976). And then you'd do something like `cd /time-machine/2003/sept/14/` to see what your system looked like on the 14th of septempber 2003. + +## CVSFS + +See [cvsFS for Linux](http://cvsfs.sourceforge.net/). This provides a package which presents the CVS contents as mountable file system. It allows to view the versioned files as like they were ordinary files on a disk. There is also a possibility to check in/out some files for editing. A read-only version has been written by Stefan Siegl and is available at [Berlios](http://cvs.berlios.de/cgi-bin/viewcvs.cgi/cvsfs4hurd/cvsfs/). + +## tar and gzip + +Rumor has it that they are on the way. Actually, a tar + gzip/bzip2 translator does exist (although it hasn't been used much...) : see [the Hurdextras project](http://savannah.nongnu.org/projects/hurdextras/) on Savannah. + +## ROM + +How about a translator which makes it look like you can write to read only media (like CDs), or change files which I don't have permission to change. This translator would make it seem like you could copy files to places where you normally couldn't. Think about combining this translator with the ftp translator and the tar and gzip translators. (cd /ftp/gnu.org/gnome.tar.gz/writes\_allowed; make install). It could be that unionfs does this very thing. + +## Super\_FIFO + +It's like a named pipe which is smart enough to start a process everytime something new tries to read from it. For example, let's say I have a script that reads in a JPEG image and spits out a smaller thumbnail \*.jpg to STDOUT. With a standard fifo (`mknod -p fifo`) this would almost works (`script big.jpg > fifo`). But what if there are two processes trying to read the fifo at once? Ick. And of course the standard way only works once without rerunning the command. I'm not quite sure what the syntax should look like, but I'm sure someone out there has a great idea waiting to happen. + +## Perl + +Perl is a wonderful language for hacking together something useful in a short amount of time. No concept is complete without being able to use it in a perl one-liner. And that goes for Hurd translators too. Right? + + #!/usr/bin/perl + use Hurd::translator; + + #file named "two" can produce an endless supply of twos, etc. (a la /dev/zero) + my $i=0; + for $filename ([zero one two three four]) + { + $libtrivfsread_codehash{$filename}= + sub{ $num_bytes=shift; my $data=$i; return chr($data) x $num_bytes; }; + #that's a hash of references to closures + $i++; + } + translator_startup(); + +A Perl translator has been started by [John Edwin Tobey](http://john-edwin-tobey.org/Hurd/) (pith). + +## Source code + +Here's a crazy thought. How about a translator for source code. You have a C source file like `hello.c` which is your normal everyday file. But there's a translator sitting underneath, so when you `cd hello.c` you get a directory with files like `main()` which represent the subroutines in `hello.c`. And of course you should be able to edit/remove those and have it modify the original source. + +## Libraries + +Here's an [idea](http://www.circlemud.org/~jelson/software/fusd/docs/node13.html) from the people making [userspace drivers in Linux](http://www.circlemud.org/~jelson/software/fusd/): + +* "One particularly interesting application of FUSD that we've found very useful is as a way to let regular user-space libraries export device file APIs. For example, imagine you had a library which factored large composite numbers. Typically, it might have a C interface--say, a function called `int *factorize(int bignum)`. With FUSD, it's possible to create a device file interface--say, a device called `/dev/factorize` to which clients can `write(2)` a big number, then `read(2)` back its factors. + +* This may sound strange, but device file APIs have at least three advantages over a typical library API. First, it becomes much more language independent--any language that can make system calls can access the factorization library. Second, the factorization code is running in a different address space; if it crashes, it won't crash or corrupt the caller. Third, and most interestingly, it is possible to use `select(2)` to wait for the factorization to complete. `select(2)` would make it easy for a client to factor a large number while remaining responsive to other events that might happen in the meantime. In other words, FUSD allows normal user-space libraries to integrate seamlessly with UNIX's existing, POSIX-standard event notification interface: `select(2)`." + +## Mail + +Am I off my rocker, or does an IMAP/POP translator sound like a good idea? It would make your remote mail servers look like local ones. Or what about a translator that makes a mbox format mail spool look like a directory. Can anyone think of a good use for an SMTP translator? + +## UUEncode + +How about a UUEncode translator for those places you can only store ASCII. Combine this with a NNTP translator and store your data in someone's Usenet archive. Or since, (as far as I know), there are no size limitations on file names in the Hurd, why not have a filesystem translator whose underlying store is a file name. (Now ls becomes cat). + +## Computation + +This is from the revenge of the command-line department. Make a directory translator whose contents are a result of the computation specified in the directory name. Here's an example... + + $ settrans -a /comp /hurd/computationfs + $ cd "/comp/3+4" + $ ls -l + total 0 + -rw-r--r-- 1 nobody users 0 Oct 16 11:41 7 + $ + $ cd "/comp/sqrt(2)" + $ ls -l + total 0 + -rw-r--r-- 1 nobody users 0 Oct 16 11:42 1.4142135623731 + $ + +...etc. Now think about your favorite GUI HTML editor and using File->Open on the following directory name, ``"/comp/for i in $( find / -name *.html ); do ln -s $i `basename $i`;done"`` Which would produce a directory listing with soft links to all of the \*.html files on your system. You could have all of the comforts of the shell from within that little File->Open dialog box. + +## Other + +Just found Wolfgang J�hrling's translator [wishlist](http://www.8ung.at/shell/trans.html). + +## Bochs + +A translator which works with [Bochs](http://bochs.sourceforge.net/) disk images would be nice. + +## Rollover + +A translator that uses a circular buffer to store log files. The translated node only contains the last N (mega,kilo)bytes. + +## Birthday + +A translator that provides an interface into the birthday program. + +You can cat your calendar, eg. bd/calendar/today bd/calendar/this-week or bd/calendar/this-month. + +And you could write new events into files located in bd/events/DATE/event-name. + +DATE is of the format the birthday expects DD/MM/YYYY. + +The contents of the file are any or none of the following birthday options: ann (An anniversary), bd (A birthday), ev (Some other event), wN (Warn N days in advance of date), toDATE (Event lasts until this DATE), forDAYS (Event runs for DAYS). + +You can optionally just edit the bd/birthdays file if you want to edit the configuration file by hand. It might make sense to write changes from bd/birthdays into ~/.birthdays. + + $ settrans -c bd /hurd/birthday -f ~/.birthdays + $ ls bd/ + birthdays calendar events + $ find bd -print + bd + bd/calendar + bd/calendar/daily + bd/calendar/this-week + bd/calendar/this-month + bd/events + bd/birthdays + $ + +## LVM + +A translator to access block devices from Linux's [Logical Volume Management](http://www.tldp.org/HOWTO/LVM-HOWTO/) would be an useful addition. + + # settrans -cap /dev/VolumeGroup0 /hurd/lvm /dev/PhysicalVolume0 /dev/PhysicalVolume1 ... + # ls /dev/VolumeGroup0/ + home + var + # settrans -cap /home /hurd/ext2fs /dev/VolumeGroup0/home + # settrans -cap /var /hurd/ext2fs /dev/VolumeGroup0/var + +Probably both [LVM2](http://sourceware.org/lvm2/) and the [Device-mapper](http://sourceware.org/dm/) need to be ported. + +## bridging translator + +A [bridging](http://bridge.sourceforge.net/faq.html) translator could improve the Hurd's networking facilities. + + # settrans -cap /dev/br0 /hurd/bridge -i eth0 -i eth1 ... + # settrans -cap /servers/socket/2 /hurd/pfinet -i /dev/br0 -a ... -g ... -m ... + +Perhaps Linux's bridging code and [utilities](http://bridge.sourceforge.net/) can be ported (or glued in) or code from one of the BSDs. + +## SSH translator + +Presenting remote file systems through SSH similar to what gnome-vfs does. + +## SMB translator + +Presenting remote file systems through Samba similar to what gnome-vfs does. Guiseppe Scrivano has worked on this and smbfs is available at [hurdextras](http://savannah.nongnu.org/cgi-bin/viewcvs/hurdextras/smbfs/). + +## Crontab translator + +Presenting a user's crontab in a filesystem where cron entries are files. + +## globlink + +Firmlink to a file according to a filename matching pattern. When a file goes away, the next file that is matched is automatically linked to. + + $ settrans -ac libfoo.so /hurd/globlink '/lib/libfoo*' + +## alphabetfs + +Organize a large group of files by their first letter. Present one subdirectory for each letter in the alphabet. + +## fsysoptsctl + +Send an fsysopts command to a set of translators. When you have a directory full of translators and you want to send each of them the same runtime option, this translator can do it for you. + + $ settrans -ac all /hurd/fsysoptsctl '/tmp/mystuff/*' + $ fsysopts all --update diff --git a/unsorted/ABITransitionStatus.mdwn b/unsorted/ABITransitionStatus.mdwn deleted file mode 100644 index 123e8f8c..00000000 --- a/unsorted/ABITransitionStatus.mdwn +++ /dev/null @@ -1,9 +0,0 @@ -Several transitions have occured recently. - -* [ABI Switch](http://lists.debian.org/debian-hurd/2002/debian-hurd-200204/msg00096.html) from April 17, 2002 - -* [Phase I accomplished](http://lists.debian.org/debian-hurd/2002/debian-hurd-200204/msg00157.html) from April 26, 2002 - -* [status of the ABI transition](http://lists.debian.org/debian-hurd/2002/debian-hurd-200205/msg00242.html) from May 15, 2002 - --- [[Main/GrantBow]] - 15 May 2002 diff --git a/unsorted/AdvancedGrubUsage.mdwn b/unsorted/AdvancedGrubUsage.mdwn deleted file mode 100644 index 8e307b4f..00000000 --- a/unsorted/AdvancedGrubUsage.mdwn +++ /dev/null @@ -1,42 +0,0 @@ -## Advanced Grub - -[Grub](http://www.gnu.org/software/grub/) is a capable boot loader. This document is intended to capture some of its most interesting features and try to explain them a bit better than the texinfo documentation. - -### Debian Grub - -The Debian grub packages do not have networking enabled, so you have to apt-get the source, modify the debian/rules file to include --enable-network-card and dpkg-buildpackage to get a .deb of grub that supports TFTP. - -1. cd /usr/src/debian -2. apt-get source grub -3. cd grub-\_VERSION\_ -4. Add `--enable-tulip` or similar for your NIC to the `./configure` line of the `configure-stamp` target in the `debian/rules` file. -5. `dpkg-buildpackage` (as `root`) -6. `cd ..` -7. `dpkg -i grub*.deb` -8. cp /lib/grub/\_ARCH\_/\* /boot/grub/, e.g., _ARCH_ is `i386-pc` -9. Edit your `/boot/grub/menu.lst` (see below) -10. If your boot disk is `/dev/hda` ==> `grub-install (hd0)` - -### TFTP Boot - -Using trivial ftp to load a kernel is one of the best features of Grub. Here is how it is done. - -The `menu.lst` can look something like this: - - ifconfig --address=192.168.1.2 --server=192.168.1.1 - root (nd) - kernel /gnu/boot/oskit-mach.gz root=device:hd0s2 -- - root (hd0,1) - module /hurd/ext2fs.static \ - --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - -**Note: Make sure there are NO spaces after the trailing backslases (\\)!!** - -For more information on GNUmach modules lines and installation setup, see [[Hurd/InstallNotes]] - --- [[Main/JoachimNilsson]] - 13 Apr 2005 diff --git a/unsorted/AptConfOffline.mdwn b/unsorted/AptConfOffline.mdwn deleted file mode 100644 index c4cc85be..00000000 --- a/unsorted/AptConfOffline.mdwn +++ /dev/null @@ -1,28 +0,0 @@ - APT - { - /* This file belongs in Debian GNU/Hurd's /etc/apt/apt.conf.offline - and will be used when running Debian GNU/Linux. This is only - required when the GNU/Hurd does not have network access. */ - - Architecture "hurd-i386"; - - Get::Download-Only "true"; - }; - - Dir - { - /* Use the disc for state information and redirect the status file from - the /var/lib/dpkg default - assumes Debian GNU/Hurd mounted on /misc/hurd and /var mounted underneath this if necessary */ - - // State::lists should be here, the lists subdirectory. - State "/misc/hurd/var/lib/apt/"; - State::status "/misc/hurd/var/lib/dpkg/status"; - - // Binary caches will be stored locally - Cache::archives "/misc/hurd/var/cache/apt/archives/"; - Cache "/tmp/"; - - // Location of the source list. - Etc "/misc/hurd/etc/apt/"; - }; diff --git a/unsorted/BootProcess.mdwn b/unsorted/BootProcess.mdwn deleted file mode 100644 index 17f7bba7..00000000 --- a/unsorted/BootProcess.mdwn +++ /dev/null @@ -1,36 +0,0 @@ -Describes the GNU/Hurd boot process. - -# Bootloader - -[GRUB](http://www.gnu.org/software/grub/) (GRand Unified Bootloader) is the default (and as far as I know the only supported ) bootloader for GNU/Hurd and is the initial process. - -GRUB can be used for booting multiple Operating Systems on a given machine. Device naming convention for GRUB is different than that of the Hurd. Where the first partition on the primary IDE drive in GNU/Hurd is hd0s1, in GRUB it is (hd0,0). In the case of GNU/Hurd, the first thing that GRUB loads is kernel image. - -Here is a copy of GNU/Hurd multi-user entry from menu.lst. The first two lines are primarily informational and are what get displayed on the GRUB boot menu. - - # Entry 2: 1st partition on first HDD - title GNU/Hurd (IDE 1st partition - hd0s1 multi-user) - root (hd0,0) - kernel /boot/gnumach.gz root=device:hd0s1 - module /hurd/ext2fs.static --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - -**_N.B. the escaped new lines above should end in only a back slash, no spaces!_** - -The line "root (hd0,0)" tells GRUB where to look for the root partition. Notice that the (hd0,0) is using GRUB naming conventions. - -The next line loads the gnumach kernel image itself. Notice here the root=device:hd0s1 argument. This is now using GNU/Hurd device naming convention, telling the Hurd where the root partition exists. - ----- - --- [[Main/BarryDeFreese]] - 29 May 2003 - -Minor formatting and edit check. - -On a side note. The actual description of the GNU/Hurd boot process is a good idea but keeping duplicated information to a bare minimum must be the guide line for a "book" like this. See other topics for more information on Grub configuration for instance. - --- [[Main/JoachimNilsson]] - 30 May 2003 diff --git a/unsorted/GNOME.mdwn b/unsorted/GNOME.mdwn deleted file mode 100644 index 1dbef091..00000000 --- a/unsorted/GNOME.mdwn +++ /dev/null @@ -1,11 +0,0 @@ -![gnome-hurd.png](http://people.debian.org/~mbanck/media/gnome-hurd.png) - -GNOME can now be ported with the new [[Pthreads]], but is still being worked on.The packages are at - -deb ./ - -The caveats: - -Some applications are not yet built, not even all the ones from gnome-core. 'apt-get install gnome-applets gnome-control-center gnome-icon-theme gnome-panel gnome-session metacity nautilus scrollkeeper' (along with the above APT source) should get you started. - -See also: [[Xfree86]]. diff --git a/unsorted/GrubNotes.mdwn b/unsorted/GrubNotes.mdwn deleted file mode 100644 index b0b1fdf5..00000000 --- a/unsorted/GrubNotes.mdwn +++ /dev/null @@ -1,70 +0,0 @@ -This section complements the [[InstallNotes]] with complete information regarding the GRUB boot loader. The syntax is different from Lilo's and so to scratch my own itch I'm creating this quick reference. The [Grub manual](http://www.gnu.org/software/grub/manual/grub.html) is another good reference. - -* update-grub is **Debian specific** and very nice. It will automatically create a /boot/grub/menu.lst file for the kernels in /boot/. It will also append a manually configured set for other partitions like the GNU/Hurd. -* grub-floppy is a **Debian specific** boot floppy creation script. -* mkbimage is a **Debian specific** boot disk image creation script. -* contains a Debian packaged makefile for creating CD & floppy images. Looks like it doesn't work properly. If you fix it, please send patches to the maintainer. -* essential GRUB commands & disk syntax - * root - * kernel - * module - * boot -* sample file - - title GNU/Linux - root (hd0,11) - kernel /boot/vmlinuz-2.4.18 root=/dev/hda12 ro - initrd /boot/initrd.img-2.4.18 - savedefault - - title GNU - root (hd0,15) - kernel /boot/oskit-mach root=device:hd0s16 -- - module /hurd/ext2fs.static \ - --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - savedefault - - title DOS - rootnoverify (hd0,0) - chainloader +1 - --- [[Main/GrantBow]] - 01 Oct 2002
-- [[Main/GrantBow]] - 22 Dec 2002 - -Another example, just as good, but a lot easier to read. The backslash at the end of each line is to "escape" the enter-key. So make sure there are no spaces following the backslashes! - - title GNU/Linux (Linux 2.4.18) - root (hd0,11) - kernel /boot/vmlinuz-2.4.18 root=/dev/hda12 ro - initrd /boot/initrd.img-2.4.18 - savedefault - - title GNUmach 1.3 - root (hd0,1) - kernel /boot/gnumach.gz root=device:hd0s2 - module /hurd/ext2fs.static --readonly \ - --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - - title GNUmach 1.90 (CVS) - root (hd0,1) - kernel /boot/oskit-mach.gz root=device:hd0s2 -- - module /hurd/ext2fs.static --readonly \ - --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - -Note the differences between GNUmach and OSKit-Mach. The latter **needs** the two dashes after the root specification! - --- [[Main/JoachimNilsson]] - 09 Nov 2002 diff --git a/unsorted/InstallNotes.mdwn b/unsorted/InstallNotes.mdwn index 49dcd53d..1cdfca9c 100644 --- a/unsorted/InstallNotes.mdwn +++ b/unsorted/InstallNotes.mdwn @@ -47,7 +47,7 @@ You can always install GRUB onto your hard drive at a later date. For instructions on using GRUB, see either the info documentation or the quick reference notes on this wiki: -* [[Distrib/GrubNotes]] - quick reference +* [[GRUB]] - quick reference ## 4. Cross Install - Cross Installing GNU diff --git a/unsorted/InstallTips.mdwn b/unsorted/InstallTips.mdwn index a735fbf7..c9f5bdc2 100644 --- a/unsorted/InstallTips.mdwn +++ b/unsorted/InstallTips.mdwn @@ -60,7 +60,7 @@ now mount the floppy and copy the files to your partition you may also wish to put my menu.lst file in your grub directory which can be obtained here you will need to edit it to include a -s at the end of the line starting with kernel. Be sure modify the partition numbers, my system is using the third partition of the second harddrive. -More detailed samples for grub config files can be found at the [[GrubNotes]] +More detailed samples for GRUB config files can be found at the [[GRUB]] page. To install grub reboot using the grub floppy and issue: diff --git a/unsorted/LuisBustamanteHurdPage.mdwn b/unsorted/LuisBustamanteHurdPage.mdwn deleted file mode 100644 index abbf1531..00000000 --- a/unsorted/LuisBustamanteHurdPage.mdwn +++ /dev/null @@ -1,11 +0,0 @@ -Nothing much to see right now, I'll add some stuff I'm working in the near future! :) - -Cheers, - --- [[Main/LuisBustamante]] - 16 May 2002 - -After making some trivial/incorrect patches (thanks Neal :) for building um-pppd with gcc 3.0.4 in Debian (see [\#147085](http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=147085&repeatmerged=yes)) this weekend I'll finally give it a try, I got an external modem... anyway serial drivers seem to be broken in GNUmach iirc, I won't get much more than 300b/s :). - -Keep Hurding! - --- [[Main/LuisBustamante]] - 17 May 2002 diff --git a/unsorted/NewMachHistory.mdwn b/unsorted/NewMachHistory.mdwn deleted file mode 100644 index 562d1cac..00000000 --- a/unsorted/NewMachHistory.mdwn +++ /dev/null @@ -1,27 +0,0 @@ -# Table of Contents - -%TOC% - -# Early beginnings - -GNUMach is based on Mach4 from University of Utah, which in turn is based on Mach3 from Carnegie-Mellon University. The last release of Mach4 was the [UK22 release](http://www.cs.utah.edu/flux/mach4-i386/html/mach4-UK22.html). - -The oskit-mach version of GNU Mach was presented in November 1999 by Roland McGrath. The purpose of the port was to get better hardware support through new drivers and platform code available in the OSKit. - -On May 27 2002, after the Gnumach 1.3 release, Roland McGrath merged OSKit-Mach onto the HEAD of CVS making it the Gnumach 2.x mainline. - -# Status of the project - -GNU Mach 1.3 was released in May 2002, and features advanced boot script support, support for large disks (>= 10GB) and an improved console. - -GNU Mach is used as the default microkernel in the GNU/Hurd system. It is compatible with other popular Mach distributions. The device drivers for block devices and network cards are taken from Linux 2.0.x kernel versions, and so a broad range of common hardware is supported. - -However, the Linux device drivers have been improved greatly since the 2.0.x version, and a new version of GNU Mach based on the OSKit library is being worked on, which uses newer drivers and in general has cleaner machine specific support code. - ----- - -Copyright (C) 2001 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA - -Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. - --- [[Main/JoachimNilsson]] - 24 Oct 2002 diff --git a/unsorted/OskitMach.mdwn b/unsorted/OskitMach.mdwn index c28f2d89..b5b92d68 100644 --- a/unsorted/OskitMach.mdwn +++ b/unsorted/OskitMach.mdwn @@ -37,7 +37,7 @@ First you need to get the latest OSKit release and, preferrably, the latest CVS ## Starting -You start Oskit-Mach almost the same way as the old 1.x version of GNUmach. Using [[Hurd/GrubNotes]] an entry can look like this: +You start Oskit-Mach almost the same way as the old 1.x version of GNUmach. Using [[GRUB]] an entry can look like this: title GNUmach 1.90 (CVS) root (hd0,1) diff --git a/unsorted/PppDaemon.mdwn b/unsorted/PppDaemon.mdwn deleted file mode 100644 index f667d449..00000000 --- a/unsorted/PppDaemon.mdwn +++ /dev/null @@ -1,6 +0,0 @@ -There is no PPP solution present for the Hurd. - -* Filed Debian [um-ppp bug](http://bugs.debian.org/cgi-bin/bugreport.cgi?archive=no\&bug=147085) -* Clemmitt [asked about um-pppd](http://mail.gnu.org/pipermail/help-hurd/2002-October/006664.html) in this thread of 9 posts beginning Oct 10, 2002. - --- [[Main/GrantBow]] - 20 Oct 2002 diff --git a/unsorted/TranslatorExamples.mdwn b/unsorted/TranslatorExamples.mdwn deleted file mode 100644 index 0c2e5741..00000000 --- a/unsorted/TranslatorExamples.mdwn +++ /dev/null @@ -1,61 +0,0 @@ -## Introduction - -Translators are probably the most known feature of the Hurd, the first thing you should show when doing a demo. - -## run - -Couldn't manage to compile it, but allows you to do nice things with eg. fortune. - -## ftpfs - -hurd:~# settrans -c ftp /hurd/ftpfs 128.101.80.131:/ - -hurd:~# cd ftp - -hurd:~/ftp# ls - -debian debian-archive lost+found - -hurd:~/ftp# cd debian - -hurd:~/ftp/debian# ls - -README README.mirrors.txt doc ls-lR.patch.gz - -README.CD-manufacture README.non-US indices pool - -README.html README.pgp ls-lR project - -README.mirrors.html dists ls-lR.gz tools - -hurd:~/ftp/debian# cp README ~ - -hurd:~/ftp/debian# - -You have to specify the server address with its IP, or your computer will buy a farm or something. - -## ftpfs and hostmux - -currently (28/02/2004) not working, but should be. - -hurd:~# settrans -c ftp /hurd/hostmux /hurd/ftpfs / - -hurd:~# cd ftp - -hurd:~/ftp# cd ftp.debian.org - --bash: cd: ftp.debian.org: Computer bought the farm - -hurd:~/ftp# host ftp.debian.org - -ftp.debian.org A 128.101.80.131 - -ftp.debian.org A 208.185.25.38 - -hurd:~/ftp# cd 128.101.80.131 - --bash: cd: 128.101.80.131: Computer bought the farm - -## Articles about translators - -* [The GNU Hurd - Translators by Gael le Mignot](http://kilobug.free.fr/hurd/pres-en/html/node8.html) diff --git a/unsorted/TranslatorPages.mdwn b/unsorted/TranslatorPages.mdwn deleted file mode 100644 index 8e954521..00000000 --- a/unsorted/TranslatorPages.mdwn +++ /dev/null @@ -1,51 +0,0 @@ -
-
[[NeighborHurd]]
-
A concept possible with microkernels.
-
[[InteractiveTranslators]]
-
Translators that interact with user
-
[[TranslatorExamples]]
-
Examples of what you can do with translators
-
[[TranslatorWishList]]
-
Interesting file translator ideas
-
- -Here are the translators that currently exist: - -* [[AuthTranslator]] -* [[CrashTranslator]] -* [[ExecTranslator]] -* [[ExtTwofsTranslator]] - (actually named ext2fs) Ext2 filesystems, also ext2fs.static -* [[FifoTranslator]] - also [[NewfifoTranslator]] (actually named new-fifo) -* [[FirmlinkTranslator]] -* [[FtpfsTranslator]] - ftp as a filesystem -* [[FwdTranslator]] -* [[HelloTranslator]] - also [[HellomtTranslator]] (actually named hello-mt) -* [[HostmuxTranslator]] -* [[IfsockTranslator]] -* [[InitTranslator]] -* [[IsofsTranslator]] -* [[KbdTranslator]] -* [[MachdefpagerTranslator]] - (actually named mach-defpager) -* [[hurd/translator/magic]] -* [[MouseTranslator]] -* [[NfsTranslator]] -* [[NullTranslator]] -* [[PasswordTranslator]] -* [[PfinetTranslator]] - also [[PflocalTranslator]] -* [[ProcTranslator]] -* [[SmbfsTranslator]] -* [[StoreioTranslator]] -* [[StreamioTranslator]] -* [[SymlinkTranslator]] -* [[TermTranslator]] -* [[TmpfsTranslator]] -* [[UfsTranslator]] - also ufs.static -* [[UsermuxTranslator]] - -Here are the contributed translators: - -* [[CryptTranslator]] - - -This is an old list and might need some updating, please check if you have a Hurd system that this list is accurate. - --- [[Main/GrantBow]] - 03 Mar 2004 diff --git a/unsorted/TranslatorWishList.mdwn b/unsorted/TranslatorWishList.mdwn deleted file mode 100644 index 38bd87d9..00000000 --- a/unsorted/TranslatorWishList.mdwn +++ /dev/null @@ -1,193 +0,0 @@ -## Introduction - -The idea behind file system translators is a powerful concept which hasn't recieved much attention in the mainstream computing world. So here is a list of interesting translators I've been able to dream up. I'm sure there are many more ideas floating around out there, so add them to the list! - -The [ferris project](http://witme.sourceforge.net/libferris.web/features.html) has some great ideas and code in the area of userspace dynamic filesystems, as has the [FUSE project](http://fuse.sourceforge.net/). - -## Audio\_cdfs - -A translator which produces a directory of \*.wav files when you have an audio CD in the drive. - -## Ogg - -This translator could be a sub-directory of the Audio\_cdfs translator and it would translate the \*.wav files into Ogg Vorbis/MP3 format. - -## CDDB - -Of course it would be a lot nicer if the above two translators didn't name their files something worthless like track001.ogg. So we would want a translator which would hook up with a database on the web and produce meaningful file names. - -## Crypto - -A cryptographic/steganographic seem like a nice match with the concept of user-land file systems. I like the idea of something like `settrans -a /secure stegfs --mpeg file001.mpg` - -## Revision control - -All of the empty space on your drive is now being wasted. Why not have a revision control translator which tracks changes to your documents? See also [this guy](http://www.linuxjournal.com/article.php?sid=5976). And then you'd do something like `cd /time-machine/2003/sept/14/` to see what your system looked like on the 14th of septempber 2003. - -## CVSFS - -See [cvsFS for Linux](http://cvsfs.sourceforge.net/). This provides a package which presents the CVS contents as mountable file system. It allows to view the versioned files as like they were ordinary files on a disk. There is also a possibility to check in/out some files for editing. A read-only version has been written by Stefan Siegl and is available at [Berlios](http://cvs.berlios.de/cgi-bin/viewcvs.cgi/cvsfs4hurd/cvsfs/). - -## tar and gzip - -Rumor has it that they are on the way. Actually, a tar + gzip/bzip2 translator does exist (although it hasn't been used much...) : see [the Hurdextras project](http://savannah.nongnu.org/projects/hurdextras/) on Savannah. - -## ROM - -How about a translator which makes it look like you can write to read only media (like CDs), or change files which I don't have permission to change. This translator would make it seem like you could copy files to places where you normally couldn't. Think about combining this translator with the ftp translator and the tar and gzip translators. (cd /ftp/gnu.org/gnome.tar.gz/writes\_allowed; make install). It could be that unionfs does this very thing. - -## Super\_FIFO - -It's like a named pipe which is smart enough to start a process everytime something new tries to read from it. For example, let's say I have a script that reads in a JPEG image and spits out a smaller thumbnail \*.jpg to STDOUT. With a standard fifo (`mknod -p fifo`) this would almost works (`script big.jpg > fifo`). But what if there are two processes trying to read the fifo at once? Ick. And of course the standard way only works once without rerunning the command. I'm not quite sure what the syntax should look like, but I'm sure someone out there has a great idea waiting to happen. - -## Perl - -Perl is a wonderful language for hacking together something useful in a short amount of time. No concept is complete without being able to use it in a perl one-liner. And that goes for Hurd translators too. Right? - - #!/usr/bin/perl - use Hurd::translator; - - #file named "two" can produce an endless supply of twos, etc. (a la /dev/zero) - my $i=0; - for $filename ([zero one two three four]) - { - $libtrivfsread_codehash{$filename}= - sub{ $num_bytes=shift; my $data=$i; return chr($data) x $num_bytes; }; - #that's a hash of references to closures - $i++; - } - translator_startup(); - -A Perl translator has been started by [John Edwin Tobey](http://john-edwin-tobey.org/Hurd/) (pith). - -## Source code - -Here's a crazy thought. How about a translator for source code. You have a C source file like `hello.c` which is your normal everyday file. But there's a translator sitting underneath, so when you `cd hello.c` you get a directory with files like `main()` which represent the subroutines in `hello.c`. And of course you should be able to edit/remove those and have it modify the original source. - -## Libraries - -Here's an [idea](http://www.circlemud.org/~jelson/software/fusd/docs/node13.html) from the people making [userspace drivers in Linux](http://www.circlemud.org/~jelson/software/fusd/): - -* "One particularly interesting application of FUSD that we've found very useful is as a way to let regular user-space libraries export device file APIs. For example, imagine you had a library which factored large composite numbers. Typically, it might have a C interface--say, a function called `int *factorize(int bignum)`. With FUSD, it's possible to create a device file interface--say, a device called `/dev/factorize` to which clients can `write(2)` a big number, then `read(2)` back its factors. - -* This may sound strange, but device file APIs have at least three advantages over a typical library API. First, it becomes much more language independent--any language that can make system calls can access the factorization library. Second, the factorization code is running in a different address space; if it crashes, it won't crash or corrupt the caller. Third, and most interestingly, it is possible to use `select(2)` to wait for the factorization to complete. `select(2)` would make it easy for a client to factor a large number while remaining responsive to other events that might happen in the meantime. In other words, FUSD allows normal user-space libraries to integrate seamlessly with UNIX's existing, POSIX-standard event notification interface: `select(2)`." - -## Mail - -Am I off my rocker, or does an IMAP/POP translator sound like a good idea? It would make your remote mail servers look like local ones. Or what about a translator that makes a mbox format mail spool look like a directory. Can anyone think of a good use for an SMTP translator? - -## UUEncode - -How about a UUEncode translator for those places you can only store ASCII. Combine this with a NNTP translator and store your data in someone's Usenet archive. Or since, (as far as I know), there are no size limitations on file names in the Hurd, why not have a filesystem translator whose underlying store is a file name. (Now ls becomes cat). - -## Computation - -This is from the revenge of the command-line department. Make a directory translator whose contents are a result of the computation specified in the directory name. Here's an example... - - $ settrans -a /comp /hurd/computationfs - $ cd "/comp/3+4" - $ ls -l - total 0 - -rw-r--r-- 1 nobody users 0 Oct 16 11:41 7 - $ - $ cd "/comp/sqrt(2)" - $ ls -l - total 0 - -rw-r--r-- 1 nobody users 0 Oct 16 11:42 1.4142135623731 - $ - -...etc. Now think about your favorite GUI HTML editor and using File->Open on the following directory name, ``"/comp/for i in $( find / -name *.html ); do ln -s $i `basename $i`;done"`` Which would produce a directory listing with soft links to all of the \*.html files on your system. You could have all of the comforts of the shell from within that little File->Open dialog box. - -## Other - -Just found Wolfgang J�hrling's translator [wishlist](http://www.8ung.at/shell/trans.html). - -## Bochs - -A translator which works with [Bochs](http://bochs.sourceforge.net/) disk images would be nice. - -## Rollover - -A translator that uses a circular buffer to store log files. The translated node only contains the last N (mega,kilo)bytes. - -## Birthday - -A translator that provides an interface into the birthday program. - -You can cat your calendar, eg. bd/calendar/today bd/calendar/this-week or bd/calendar/this-month. - -And you could write new events into files located in bd/events/DATE/event-name. - -DATE is of the format the birthday expects DD/MM/YYYY. - -The contents of the file are any or none of the following birthday options: ann (An anniversary), bd (A birthday), ev (Some other event), wN (Warn N days in advance of date), toDATE (Event lasts until this DATE), forDAYS (Event runs for DAYS). - -You can optionally just edit the bd/birthdays file if you want to edit the configuration file by hand. It might make sense to write changes from bd/birthdays into ~/.birthdays. - - $ settrans -c bd /hurd/birthday -f ~/.birthdays - $ ls bd/ - birthdays calendar events - $ find bd -print - bd - bd/calendar - bd/calendar/daily - bd/calendar/this-week - bd/calendar/this-month - bd/events - bd/birthdays - $ - -## LVM - -A translator to access block devices from Linux's [Logical Volume Management](http://www.tldp.org/HOWTO/LVM-HOWTO/) would be an useful addition. - - # settrans -cap /dev/VolumeGroup0 /hurd/lvm /dev/PhysicalVolume0 /dev/PhysicalVolume1 ... - # ls /dev/VolumeGroup0/ - home - var - # settrans -cap /home /hurd/ext2fs /dev/VolumeGroup0/home - # settrans -cap /var /hurd/ext2fs /dev/VolumeGroup0/var - -Probably both [LVM2](http://sourceware.org/lvm2/) and the [Device-mapper](http://sourceware.org/dm/) need to be ported. - -## bridging translator - -A [bridging](http://bridge.sourceforge.net/faq.html) translator could improve the Hurd's networking facilities. - - # settrans -cap /dev/br0 /hurd/bridge -i eth0 -i eth1 ... - # settrans -cap /servers/socket/2 /hurd/pfinet -i /dev/br0 -a ... -g ... -m ... - -Perhaps Linux's bridging code and [utilities](http://bridge.sourceforge.net/) can be ported (or glued in) or code from one of the BSDs. - -## SSH translator - -Presenting remote file systems through SSH similar to what gnome-vfs does. - -## SMB translator - -Presenting remote file systems through Samba similar to what gnome-vfs does. Guiseppe Scrivano has worked on this and smbfs is available at [hurdextras](http://savannah.nongnu.org/cgi-bin/viewcvs/hurdextras/smbfs/). - -## Crontab translator - -Presenting a user's crontab in a filesystem where cron entries are files. - -## globlink - -Firmlink to a file according to a filename matching pattern. When a file goes away, the next file that is matched is automatically linked to. - - $ settrans -ac libfoo.so /hurd/globlink '/lib/libfoo*' - -## alphabetfs - -Organize a large group of files by their first letter. Present one subdirectory for each letter in the alphabet. - -## fsysoptsctl - -Send an fsysopts command to a set of translators. When you have a directory full of translators and you want to send each of them the same runtime option, this translator can do it for you. - - $ settrans -ac all /hurd/fsysoptsctl '/tmp/mystuff/*' - $ fsysopts all --update - ----- - --- [[Main/GregBuchholz]] - updated 17 Oct 2003 -- cgit v1.2.3