-- Leo's gemini proxy

-- Connecting to 9til.de:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini

FQA INDEX | FQA 0 - Introduction To Plan 9 | FQA 2 - Getting To Know 9front


FQA INDEX

FQA 0 - Introduction To Plan 9

FQA 2 - Getting To Know 9front


FQA 1 - Introduction to 9front


[‡ 9frontsystem]


[‡ 9frontsystem]


1.1 - What is 9front?


Plan9front (or 9front) is a fork of the Plan 9 from Bell Labs operating system. The project was started to remedy a perceived lack of devoted development resources inside Bell Labs,[citation needed] and has accumulated various fixes and improvements.


Plan 9 from Bell Labs

fixes

improvements.


This FQA specifically covers only the most recent release of 9front.


1.1.1 - Cirno


[‡ cirno]


[‡ cirno]


At some point, Cirno became associated with 9front. Details are sketchy.


Pro


Cirno


• girl


• has magical powers


• associated with 9


• upsets kfx


• she is known to be the strongest


Alternatives


[‡ tuttleglenda]


[‡ tuttleglenda]


[‡ grumpycatno]


[‡ grumpycatno]


1.2 - On what systems does 9front run?


9front runs on the following platforms:


• 386


• amd64


• arm


• arm64


• mips


Read: FQA 3.2 - Selecting Hardware


fqa3.gmi


1.3 - Why might I want to use 9front?


It is very likely that you do not.


New users frequently want to know whether 9front is superior to some other free UNIX-like operating system. Consider: The question is largely unanswerable. What are your criteria? Why are you even using computers in the first place? Exploring these questions and the implications that derive therefrom may help you sharpen your perceptions and eventually come to some sort of conclusion about which operating system you prefer to use for daily tasks.


Ultimately, whether or not 9front is for you is a question only you can answer.


1.3.0 - Why might I not want to use 9front?


Hold up. Before you get too excited, consider the following possibilities:


• You just realized you don’t want to use Plan 9 at all.


• You don’t like the people who use and/or work on 9front.


• You don’t like 9front’s propaganda.


• You prefer less functionality from your obscure OS, and/or you prefer to ignore 9front’s public commit history and complain later because nobody informed you about bug fixes and new programs.


• You have technical objections to specific changes 9front made to the original Bell Labs code.


• You’re not sure right now, but you’ll know it when you see it.


Okay, carry on.


1.3.0.1 - Why did 9front stop making fun of Nazis?


[‡ pipe]


[‡ pipe]


Because you asked us to.


• People complained it was done in poor taste.


• People reliably interpret any depiction of a thing as an endorsement of same.


• We’re tired of explaining this shit to people who just call us liars anyway. (To be fair, look at the world around us today. Why cloud the issue?) I’m through explainin the shit —Ice T


https://www.youtube.com/watch?v=4FWCSBpG5q8


• Cognitive dissonance.


Read: Appendix L - Ruby


appendixl.gmi


[‡ wreckastow]


[‡ wreckastow]


1.3.1 - New Features


The following list is not exhaustive:


• /shr, global mountpoint device shr(3)


http://man.9front.org/3/shr


• /mnt is provided by mntgen(4)


http://man.9front.org/4/mntgen


• #A, audio drivers for sb16, intel hd audio and ac97 (both playback and recording supported!) audio(3)


http://man.9front.org/3/audio


• New BIOS based boot loader 9boot(8) featuring a console and support for FAT/ISO/PXE and being small (<8K)


http://man.9front.org/8/9boot


• New EFI based boot loader efi


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/boot/efi


• Made kernel compliant to multiboot specification so it can be booted by qemu or grub directly.


• Interruptable kernel qlocks (eqlock)


• Defered clunks (closeproc) for cached mounts


• New rc based boot(8) allows breaking into a shell at any time


http://man.9front.org/8/boot


• Default file system is an improved cwfs(4) (cwfs64x)


http://man.9front.org/4/cwfs


• New screen fonts: dejavu, germgoth, vga


• No central replica; source updates are done with hg (1) (Mercurial)


http://man.9front.org/1/hg


• Keyboard events with /dev/kbd. Read: kbdfs (8) and rio (4)


http://man.9front.org/8/kbdfs

http://man.9front.org/4/rio


• /lib/rob and other new corpuses, suitable as fodder for fortune(1) and other rhetorical programs


https://code.9front.org/hg/plan9front/file/9ad06889a5d1/lib/rob

http://man.9front.org/1/fortune


• New listen(8) -p maxprocs option


http://man.9front.org/8/listen


• Always available network aan(8) support in cpu(1) and rcpu(1)


http://man.9front.org/8/aan

http://man.9front.org/1/cpu

http://man.9front.org/1/rcpu


• MSI (message signalled interrupts), avoids problems with broken MP tables. Read: icanhasmsi (8)


http://man.9front.org/8/icanhasmsi


• Legacy free ACPI support (aml interpreter libaml, mp interrupt routing, scram)


• Added rio(1) -b option (black window backgrounds) and look menu option


http://man.9front.org/1/rio


• USB CD-ROM boot/install


• USB drive boot


drive boot


• Improved USB mouse support


• Support for USB ptp cameras


• Stable-across-machines USB device names


• VGA initialization done by interpreting the VESA BIOS with realemu(8), working VESA screen blanking.


http://man.9front.org/8/realemu


• /dev/kbd and clipboard charset support for vnc(1)


http://man.9front.org/1/vnc


• New webfs(4) with HTTP1.1 and Keep-Alive support.


http://man.9front.org/4/webfs


• Qemu/KVM virtio block device and ethernet drivers. Read: FQA 4.5.1.3 - Virtio


fqa4.gmi


• Mouse wheel and chording support in sam(1)


http://man.9front.org/1/sam


• Elliptic curve cryptography ec(2)


http://man.9front.org/2/ec


• Working interrupt key (Del) in console


• WiFi support with wpa/wpa2


• SSE support


• System-wide support for internationalized domain names


• Unicode support in vt(1)


http://man.9front.org/1/vt


• pc64, kernel for amd64


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/9/pc64/


• Numerous ciphers added and improvements made to libsec


http://man.9front.org/2/pushtls


• New dpi9k authentication protocol


1.3.1.1 - New Programs


• " and "" (print, repeat previous command)


• alarm(1) — timeouts in rc scripts


http://man.9front.org/1/alarm


• atari(1) — 2600 emulator


http://man.9front.org/1/atari


• audio(1) — mp3, ogg, flac, µlaw, wav


http://man.9front.org/1/audio


• blit(1) — Blit terminal emulator


http://man.9front.org/1/blit


• bullshit(1) — print out a stream of bullshit


http://man.9front.org/1/bullshit


• cifsd(8) — CIFS/SMB server


http://man.9front.org/8/cifsd


• cryptsetup (8) — prepare an AES-encrypted partition to be used with the fs(3) device


http://man.9front.org/8/cryptsetup

http://man.9front.org/3/fs


• derp(1) — find changes between directories


http://man.9front.org/1/derp


• dtracy(1) — dynamic tracing language (like dtrace)


http://man.9front.org/1/dtracy


• feminize(1) — replace sexist remarks


http://code.9front.org/hg/plan9front/file/1f9d7811d546/rc/bin/feminize


• fplot(1)


http://man.9front.org/1/fplot


• New games: doom, glendy, linden, mandel, mines, mole, packet, v8e


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/games/doom

http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/games/glendy.c

https://code.9front.org/hg/plan9front/file/38dcaeaa222c/sys/src/games/linden.c

http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/games/mandel.c

http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/games/mines

http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/games/mole.c

http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/games/packet.c

https://code.9front.org/hg/plan9front/file/38dcaeaa222c/sys/src/games/v8e


• hg(1) and hgfs(4) (Mercurial)


http://man.9front.org/1/hg

http://man.9front.org/4/hgfs


• hget(1) — rewritten in rc, now uses webfs


http://man.9front.org/1/hget


• hjfs(4) — new, experimental fs


http://man.9front.org/4/hjfs


• hpost(1) — extract and post HTML forms


http://man.9front.org/1/hget


• hold(1) — simple text editor


http://man.9front.org/1/hold


• icanhasmsi (8) — print MSI configuration


http://man.9front.org/8/icanhasmsi


• ipserv(8) — proxy servers socksd and hproxy


http://man.9front.org/8/ipserv


• ircrc(1) — IRC client


http://man.9front.org/1/ircrc


• memory(1) — check memory usage


http://man.9front.org/1/memory


• mothra(1) — Tom Duff’s web browser, now uses webfs


http://man.9front.org/1/mothra


• netaudit(8) — network configuration checker


http://man.9front.org/8/netaudit


• newt(1) — Usenet client


http://man.9front.org/1/newt


• nietzsche(1) — print out Nietzsche quote


http://man.9front.org/1/nietzsche


• nintendo(1) — Nintendo emulators: gb, gba, nes, snes


http://man.9front.org/1/nintendo


• page(1) — zoom and enhance!


http://man.9front.org/1/page


• paint(1) — drawing program


http://man.9front.org/1/paint


• play(1) — audio player


http://man.9front.org/1/play


• pstree(1) — print tree-like map of current processes and sub-processes


http://man.9front.org/1/ps


• ptrap(4) — plumber(4) filter


http://man.9front.org/4/ptrap


• rc-httpd(8) — HTTP server


http://man.9front.org/8/rc-httpd


• rcpu (1) — replacement for legacy cpu (1) client, uses dp9ik


http://man.9front.org/1/rcpu

http://man.9front.org/1/cpu


• resize(1) — fast but low quality image resampler


http://man.9front.org/1/resample


• rotate(1) — rotate or mirror a picture


http://man.9front.org/1/rotate


• scram(8) — ACPI and APM shutdown


http://man.9front.org/8/fshalt


• sega(1) — Sega Megadrive/Genesis emulator: md


http://man.9front.org/1/sega


• ssam(1) — stream interface to sam


http://man.9front.org/1/ssam


• ssh(1) — SSH2 client


http://man.9front.org/1/ssh


• sshnet(4) — re-implementation of sshnet for SSH2


http://man.9front.org/4/sshnet


• sysinfo(1) — print hardware report


http://man.9front.org/1/sysinfo


• sysupdate(1) — update the local hg repository



• theo(1) — print out insults from Theo de Raadt


http://man.9front.org/1/fortune


• tput(1) — measure read throughput


http://man.9front.org/1/tput


• troll(1) — automated trolling


http://man.9front.org/1/fortune


• tap(1) — follow the pipes of a process


http://man.9front.org/1/tap


• tif(1) — tiff decoder


http://man.9front.org/1/jpg


• tinc(8) — mesh peer to peer VPN


http://man.9front.org/8/tinc


• tojpg(1) — jpeg encoder


http://man.9front.org/1/jpg


• totif(1) — tiff encoder


http://man.9front.org/1/jpg


• torrent(1) — bittorrent client


http://man.9front.org/1/torrent


• walk(1) — recursively walk descending directories


http://man.9front.org/1/walk


1.3.1.1.1 - Why do some new program names begin with hj?


Message-ID: <775b8d190603072010v282cd1afl8677895d3407d914@mail.gmail.com>


Date: Wed,  8 Mar 2006 15:10:14 +1100


From: "Bruce Ellis" <bruce.ellis@gmail.com>


To: "Fans of the OS Plan 9 from Bell Labs" <9fans@cse.psu.edu>


Subject: Re: [9fans] structure allocation.


In-Reply-To: <225d545abee6717eec8ffe272836f235@collyer.net>


MIME-Version: 1.0


Content-Type: text/plain; charset=ISO-8859-1


Content-Transfer-Encoding: quoted-printable


Content-Disposition: inline


References: <440E3FBE.20209@lanl.gov>


<225d545abee6717eec8ffe272836f235@collyer.net>


Topicbox-Message-UUID: 0e6c2144-ead1-11e9-9d60-3106f5b1d025


i still like hjdicks  it is obscure enough that no-one would think it’s


a feature (or guess it).  it was required because we had a large


slab of 3rd-party code that assumed it could read packets off the


wire (assuming correct endian) and do no marshaling.


pack

looks like a feature.


i was there when it happened (after a nice italian meal).


ken asked "Do i really have to do this?"


P: Yes, there’s buckets of code that rely on it.


K: *some expression of disbelief*


P: well hj are just dicks


done deal


it also turned out to be important for inferno on machines with


greater than 32 bit alignment requirements.  the 64 bit mips


is an example.  took but a recompile with hjdicks in the right


place (it takes an optional alignment parameter).  same with


the ps2 which has 128 bit issues.


thanks for telling me that it has been changed.


brucee


On 3/8/06, geoff@collyer.net <geoff@collyer.net> wrote:


> I was implicitly referring to C compilers.  Heck, Pascal had packed


> data in the early 1970s, possibly even the late 1960s.


1.3.1.2 - New Hardware Support


Audio


• AC97 — /sys/src/9/pc/audioac97.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/9/pc/audioac97.c


• Intel HDA — /sys/src/9/pc/audiohda.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/9/pc/audiohda.c


• SB 16/ESS — /sys/src/9/pc/audiosb16.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/9/pc/audiosb16.c


• Countless new variants (VID/DID) added to existing drivers.


Ethernet


• ADMtek Pegasus — /sys/src/cmd/nusb/ether/aue.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/cmd/nusb/ether/aue.c


• Broadcom BCM57xx — /sys/src/9/pc/etherbcm.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/9/pc/etherbcm.c


• Realtek RTL8150 — /sys/src/cmd/nusb/ether/url.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/cmd/nusb/ether/url.c


• Countless new variants (VID/DID) added to existing drivers.


WiFi


• Intel Centrino Advanced-N 6205 (iwl-6005)


• Intel Centrino Ultimate-N (iwl-6000)


• Intel Centrino Wireless-N 100


• Intel WiFi Link 1000/4965/5100/5300/5350 AGN


• Intel PRO Wireless 3945ABG (wpi-3945abg)


• Intel Wireless AC 8260/8265


• Intel Wireless AC 9260


• Ralink RT2860/RT3090


Tablets


• Wacom serial tablets WACF004, WACF008


/sys/src/cmd/aux/wacom.c, /sys/src/cmd/aux/tablet.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/cmd/aux/wacom.c

http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/cmd/aux/tablet.c


• USB tablets supported by USB subsystem


Video


• AMD Geode LX driver


/sys/src/cmd/aux/vga/geode.c /sys/src/9/pc/vgageode.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/cmd/aux/vga/geode.c

http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/9/pc/vgageode.c


• Intel GM915, GM965, Sandy Bridge, Ivy Bridge, and Haswell driver


/sys/src/cmd/aux/vga/igfx.c /sys/src/9/pc/vgaigfx.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/cmd/aux/vga/igfx.c

http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/9/pc/vgaigfx.c


SD Card


• Ricoh — /sys/src/9/pc/pmmc.c


http://code.9front.org/hg/plan9front/file/1f9d7811d546/sys/src/9/pc/pmmc.c


Read: FQA 3.2 - Known Working Hardware for a list of complete machines known to work.


fqa3.gmi


[‡ ibmintel]


[‡ ibmintel]


1.4 - Is 9front really free?


Yes.


Read: FQA 0.2.4 - What is the deal with Plan 9’s weird license?


fqa0.gmi


1.5 - How can I help support 9front?


We are greatly indebted to the people and organizations that have contributed to the 9front project. That said, the topic is complicated: The main developers refuse to accept donations (except when they do accept donations), and the people who do offer to make donations often disappear without further explanation or make strange demands that nobody feels like capitulating to. This complex, fluid, and at times contentious dynamic can best be navigated by joining #cat-v on freenode and asking strangers how to donate to the project.


When this fails, donations that help pay for the hosting of 9front.org and cat-v.org (including fqa.9front.org, the document you are reading right now) can be made at: http://patreon.com/stanleylieber.


http://patreon.com/stanleylieber


1.6 - Who maintains 9front?


9front is maintained by an East German intelligence officer who never sleeps but instead logs periods of inactivity staring straight into the soulless eyes of games/catclock. Occasional contributions are made by a diverse team of malcontents that is spread somewhat thinly across many different timezones and Internet providers. Most of them have dayjobs and in fact are not concerned with your demands. (Subsidized or not).


somewhat thinly


1.7 - When is the next release of 9front?


Soon.


The 9front team makes new releases on a regular, but unscheduled, basis. More information on the development cycle can be found on the 9front mailing list.


9front mailing list.


1.8 - What is included with 9front?


Some useful programs included with the operating system are:


• 2600 — Atari 2600 emulator.


2600


• acid — Programmable symbolic debugger.


http://doc.cat-v.org/plan_9/4th_edition/papers/acidpaper


• acme — Text editor, window system, mail client and more.


http://doc.cat-v.org/plan_9/4th_edition/papers/acme/


• ape — ANSI/POSIX environment.


http://doc.cat-v.org/plan_9/4th_edition/papers/ape


• cwfs64x — Cached-worm file server based on the original Ken’s fs.


http://man.9front.org/4/cwfs


• doom — Science fiction horror-themed first-person shooter video game by id Software.


http://en.wikipedia.org/wiki/Doom_(video_game)


• gs — Aladdin Ghostscript (PostScript and PDF language interpreter).


http://man.9front.org/1/gs


• hjfs — A new, experimental fs.


http://man.9front.org/4/hjfs


• mercurial — Distributed source control management tool.


mercurial


• mk — Tool for describing and maintaining dependencies between files.


http://doc.cat-v.org/plan_9/4th_edition/papers/mk


• mothra — Web browser by Tom Duff.


http://man.9front.org/1/mothra


• newt — NNTP client.


http://man.9front.org/1/newt


• nintendo — Nintendo Game Boy, NES, SNES and GBA emulators.


nintendo


• paint — Drawing program.


http://man.9front.org/1/paint


• page — FAX, image, graphic, PostScript, PDF, epub, cbz viewer.


http://man.9front.org/1/page


• play — Flac, ogg, mp3, sun, wav player.


http://man.9front.org/1/play


• plumber — Mechanism for inter-process communication.


http://doc.cat-v.org/plan_9/4th_edition/papers/plumb


• python 2.5.1 — Interpreted programming language. (needed for mercurial)


python 2.5.1


• rc — Shell by Tom Duff.


http://doc.cat-v.org/plan_9/4th_edition/papers/rc


• rc-httpd — Web server written in rc.


http://man.9front.org/8/rc-httpd


• rio — Rectangle multiplexer/window system.


http://man.9front.org/1/rio


• sam — Text editor.


http://doc.cat-v.org/plan_9/4th_edition/papers/sam/


• sega — Megadrive/Genesis emulator.


sega


• torrent — BitTorrent client.


http://man.9front.org/1/torrent


• troff — Text processor/typesetter.


http://doc.cat-v.org/plan_9/4th_edition/papers/troff/


• upas — A simpler approach to network mail.


http://doc.cat-v.org/bell_labs/upas_mail_system/


1.9 - Can I use 9front as a desktop system?


This question is often asked in exactly this manner—with no explanation of what the asker means by "desktop". The only person who can answer that question is you, as it depends on what your needs and expectations are.


Read: FQA 1.3 - Why might I want to use 9front?


fqa1.gmi


1.10 - Why is/isn’t ProductX included?


Two potential reasons:


• Nobody wanted it.


• Nobody wrote the code.


Many "features" and programs are missing from Plan 9 for a very good reason: They are terrible ideas expressed as terrible software. Other features are missing simply because no one has yet written the code to implement them. It is left as an exercise for the reader to determine which is which, and to apply the appropriate remedy.


Read: FQA 8.8 - Additional Software


fqa8.gmi


1.11 - Fine, where can I get 9front?


[‡ meganinefront]


If you simply cannot be dissuaded from trying 9front for yourself, obtain installation media from the mirrors mentioned in the following section.


[‡ meganinefront]


1.11.1 - Mirrors


1.11.1.1 - 9front.iso


http://9front.org/iso/


http://r-36.net/9front/


http://felloff.net/usr/cinap_lenrek/9front.torrent


1.11.1.2 - Mercurial repository


https://code.9front.org/hg/plan9front (official)


https://code.9front.org/hg/plan9front (official)


Good luck, you may need it.


[‡ reactorcat]


[‡ reactorcat]


FQA INDEX | FQA 0 - Introduction To Plan 9 | FQA 2 - Getting To Know 9front


FQA INDEX

FQA 0 - Introduction To Plan 9

FQA 2 - Getting To Know 9front

-- Response ended

-- Page fetched on Sat May 18 23:11:06 2024