FQA INDEX | FQA 0 - Introduction To Plan 9

9FRONT FREQUENTLY QUESTIONED ANSWERS

html | pdf | troff

ACHTUNG! 9front dash1 manual is written by and for 9front users.

Those who can do, those who can’t write and those who can’t write make ezines.

— Sape Mullender

ACHTUNG! Information provided by this document is UNOFFICIAL and may be outdated or just plain WRONG. Use your brain. NO REFUNDS.

_sl’s info is incorrect.

— anth_x

ACHTUNG! 9front is absolutely and unalterably opposed to racism, sexism, homophobia, transphobia, nationalism, ethnocentrism, religious fundamentalism, and oppressive and coercive power structures of all kinds.

Nobody wants 2 take the weight - The responsibility

— Prince,

Avalanche

ACHTUNG! Don’t read too much into what you find here.

Unless this publication states otherwise, masculine nouns and pronouns do not

refer exclusively to men.

— FM34-60 COUNTERINTELLIGENCE

0 - Introduction to Plan 9

0.1 - What is Plan 9?

0.1.1 - Plan 9 is not UNIX

0.1.1.1 - Plan 9 is not plan9port

0.1.1.2 - Plan 9 is not Inferno

0.1.2 - Plan 9 is not a product

0.1.3 - Plan 9 is not for you

0.2 - Why Plan 9?

0.2.1 - What do people like about Plan 9?

0.2.1.1 - What do you use Plan 9 for?

0.2.2 - What do people hate about Plan 9?

0.2.2.1 - What is not in Plan 9

0.2.3 - Why did Plan 9’s creators give up on Plan 9?

0.2.3.1 - Why did Plan 9’s users give up on Plan 9?

0.2.3.2 - Why did CIA give up on Plan 9?

0.2.3.3 - Why did Rob give up on releasing tracks by The Residents, Wire, Lou Reed, and Debby Harry on the Plan 9 CD-ROM?

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

0.2.4.1 - Richard Stallman hates the Plan Nine license (circa 2000)

0.2.4.2 - Theo de Raadt hates the Plan 9 license (circa 2003)

0.2.4.3 - Everyone hates the Plan 9 license (circa 2014)

0.2.4.4 - PRAISE FOR 9FRONT’S BOLD ACTION, RE: LICENSING

0.2.4.5 - Everyone loves the Plan 9 license (circa 2021)

0.2.4.6 - Plan 9 is a registered trademark of SouthSuite Inc.

0.3 - Further Reading

0.3.1 - Plan 9 papers

0.3.2 - Man pages

0.3.3 - Web pages

0.3.4 - Books

1 - Introduction to 9front

1.1 - What is 9front?

1.1.1 - Cirno

1.2 - On what systems does 9front run?

1.3 - Why might I want to use 9front?

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

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

1.3.1 - New Features

1.3.1.1 - New Programs

1.3.1.2 - New Hardware Support

1.4 - Is 9front really free?

1.5 - How can I help support 9front?

1.6 - Who maintains 9front?

1.7 - When is the next release of 9front?

1.8 - What is included with 9front?

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

1.10 - Why is/isn’t ProductX included?

1.11 - Fine, where can I get 9front?

1.11.1 - Mirrors

1.11.1.1 - 9front.iso

1.11.1.2 - git repository

2 - Getting to know 9front

2.1 - Web Pages

2.2 - Mailing Lists

2.2.1 - Mailing List Archives

2.2.1.1 - Unofficial Web Archives

2.2.2 - Other useful mailing lists

2.2.2.1 - Starfleet General Order 1

2.3 - Manual Pages

2.3.2 - How do I write my own manual page?

2.4 - Reporting Bugs

2.4.1 - Your bug report SUCKS

2.4.2 - How do I get more useful info for developers?

2.4.2.1 - Take a photo of the panic screen

2.4.2.2 - Make a stack trace of a crashed process

2.4.2.3 - Make a process snapshot

2.5 - Sending Fixes

2.5.1 - How do I write good patches?

2.5.2 - How do I send in my patches?

3 - Hardware

3.1 - Selecting Hardware

3.2 - Known Working Hardware

3.2.0 - Input Devices

3.2.0.1 - Mice

3.2.0.1.1 - IBM/Lenovo

3.2.0.2 - Keyboards

3.2.0.2.1 - IBM/Lenovo

3.2.0.2.2 - TEX Electronics

3.2.0.2.3 - MNT Research GmbH

3.2.1 - Audio

3.2.2 - Graphics

3.2.2.1 - AGP

3.2.2.2 - Integrated

3.2.2.3 - PCI Express

3.2.3 - Networking

3.2.3.1 - Ethernet

3.2.3.1.1 - Integrated

3.2.3.1.2 - USB

3.2.3.1.3 - PCMCIA

3.2.3.2 - WiFi

3.2.3.2.1 - Bridge (external)

3.2.3.2.2 - Mini-PCI

3.2.3.2.3 - Mini-PCI Express

3.2.3.2.3.1 - iwl

3.2.3.2.3.2 - wpi

3.2.3.2.3.3 - rt2860

3.2.3.2.4 - PCI

3.2.3.2.5 - PCMCIA

3.2.4 - Tablet Digitizers

3.2.4.1 - Serial

3.2.4.1.1 - Integrated

3.2.4.2 - USB

3.2.4.2.1 - Integrated

3.2.4.2.2 - External

3.2.5 - Desktop and Laptop Systems

3.3 - Virtual Machines

3.3.1 - Qemu

3.3.1.1 - Installation

3.3.1.2 - Post-Installation Booting

3.3.1.2.1 - Multiboot

3.3.1.4 - Networking

3.3.1.4.1 - Linux VDE

3.3.1.4.2 - OpenBSD TAP

3.3.1.4.3 - Windows TAP

3.3.1.4.4 - Linux TAP

3.3.1.5 - Audio

3.3.1.6 - Graphics

3.3.2 - Virtualbox

3.3.2.1 - Ethernet

3.3.2.2 - Audio

3.3.2.3 - Graphics

3.3.2.4 - Known Working Versions

3.3.3 - Virtio

3.3.4 - bhyve

4 - 9front Installation Guide

4.1 - Pre-installation Checklist

4.2 - Creating bootable 9front install media

4.2.1 - ISO image

4.2.1.1 - Creating on Plan 9

4.2.2 - USB drive

4.2.2.1 - Creating on Plan 9

4.2.2.2 - Creating on Linux

4.2.2.3 - Bootargs

4.3 - Performing a simple install

4.3.1 - boot

4.3.2 - bootargs

4.3.3 - user

4.3.4 - vgasize, monitor, mouseport

4.3.4.1 - Changing screen resolution

4.3.5 - inst/start

4.3.6 - configfs

4.3.6.1 - cwfs no-dump configuration

4.3.7 - partdisk

4.3.8 - prepdisk

4.3.9 - mountfs

4.3.10 - configdist

4.3.11 - confignet

4.3.11.1 - dhcp

4.3.11.2 - manual

4.3.12 - mountdist

4.3.13 - copydist

4.3.14 - sysname

4.3.15 - tzsetup

4.3.16 - bootsetup

4.3.17 - finish

4.4 - Encrypted Partitions

5 - Building the System from Source

5.1 - Why should I build my system from source?

5.2 - Building 9front from source

5.2.1 - Update sources

5.2.1.1 - hgrc

5.2.1.2 - git

5.2.2 - Building from source

5.2.2.1 - Cross compiling

5.3 - Building an ISO

5.4 - Common Problems when Compiling and Building

5.4.1 - Upgrading compilers

6 - Networking

6.1 - Before we go any further

6.2 - Network configuration

6.2.1 - Host name

6.2.2 - Identifying and setting up your network interfaces

6.2.2.1 - WiFi

6.2.2.1.1 - Interfaces

6.2.2.1.1.1 - wavelan

6.2.2.1.1.2 - wavelanpci

6.2.2.1.1.3 - iwl

6.2.2.1.1.4 - rt2860

6.2.2.1.1.5 - wpi

6.2.2.1.2 - WPA

6.2.2.1.3 - WiFi Roaming

6.2.2.1.4 - WiFi Debug

6.2.3 - IP address

6.2.4 - Default gateway

6.2.5 - DNS Resolution

6.2.5.1 - Caching DNS server

6.2.5.2 - DNS authoritative name server

6.2.5.2.1 - Troubleshooting DNS authoritative name server

6.2.6 - Network-wide configuration

6.2.7 - Activating the changes

6.2.7.1 - NIC

6.2.7.2 - cs

6.2.7.3 - dns

6.2.8 - Verifying network settings

6.2.8.1 - Checking routes

6.2.8.1.1 - Adding static routes

6.2.9 - Setting up your 9front box as a forwarding gateway

6.2.10 - Setting up aliases on an interface

6.3 - How do I filter and firewall with 9front?

6.4 - Dynamic Host Configuration Protocol (DHCP)

6.4.1 - DHCP client

6.4.2 - DHCP server

6.5 - PPP

6.6 - Setting up a network bridge in 9front

6.7 - How do I boot from the network?

6.7.1 - How do I tcp boot?

6.7.1.1 - Passing arguments to ipconfig at the bootargs prompt

6.7.2 - How do I boot using PXE?

7 - System Management

7.1 - Plan 9 Services Overview

7.1.1 - What is the kernel?

7.1.2 - What is the file server?

7.1.3 - What is the auth server?

7.1.4 - What is the cpu server?

7.1.5 - What is a terminal?

7.2 - Kernel configuration and maintenance

7.2.1 - How do I mount the 9fat partition?

7.2.2 - How do I modify plan9.ini?

7.2.3 - Kernel configuration file

7.2.4 - Kernel drivers

7.2.5 - How do I install a new kernel?

7.3 - Fileserver configuration and maintenance

7.3.1 - Adding users

7.3.2 - Configuring nvram

7.3.3 - Setting up a listener for network connections

7.3.3.1 - Stop cwfs from allowing user none to attach without authentication

7.3.3.1.1 - notes on user none

7.3.4 - Mounting a file system from userspace

7.3.5 - dump

7.3.5.1 - manually trigger the dump

7.4 - Auth server configuration and maintenance

7.4.1 - Configuring an auth server

7.4.1.1 - Avoiding an ndb entry for the auth server

7.4.2 - Adding users

7.4.3 - secstored

7.4.3.1 - Adding users to secstore

7.4.3.2 - Converting from p9sk1 to dp9ik

7.5 - Cpu server configuration and maintenance

7.5.1 - Configuring a cpu server

7.6 - Terminal configuration and maintenance

7.6.1 - Configuring a terminal

7.6.2 - Configuring a Terminal to Accept cpu Connections

7.6.3 - UTC Timesync

7.7 - Mail server configuration and maintenance

7.7.0 - tcp25

7.7.1 - smtpd.conf

7.7.2 - rewrite

7.7.3 - names.local

7.7.4 - remotemail

7.7.5 - SMTP over TLS

7.7.6 - IMAP4 over TLS

7.7.7 - Spam Filtering

7.7.7.1 - ratfs

7.7.7.2 - scanmail

7.7.8 - Troubleshooting the mail server

7.7.9 - Setting up a mailing list

7.7.9.1 - mlmgr

7.8 - Web server configuration and maintenance

7.8.1 - ip/httpd

7.8.2 - rc-httpd

7.9 - TLS certificates

7.9.1 - ACME protocol

8 - Using 9front

8.1 - rc

8.1.1 - Prompts

8.1.2 - /env

8.2 - rio

8.2.1 - The Pop-up Menu

8.2.2 - Window control

8.2.3 - Text in rio windows

8.2.4 - Scrolling

8.2.5 - Mouse Chording

8.2.6 - Keyboard Shortcuts

8.2.6.1 - No, really, keyboard shortcuts (and virtual desktops for free)

8.2.7 - Color scheme

8.2.8 - Why is rio like this?

8.2.9 - tips

8.2.9.1 - Taking a screenshot

8.2.9.2 - Prevent console messages from overwriting the screen

8.3 - Text Editors

8.3.1 - sam

8.3.1.1 - Scrolling

8.3.1.2 - Mouse Chording

8.3.1.3 - Why does sam have a separate snarf buffer from rio?

8.3.1.4 - Keyboard Shortcuts

8.3.2 - acme

8.4 - Internet

8.4.1 - Mail

8.4.1.1 - upasfs

8.4.1.1.1 - Reading gmail via IMAP

8.4.1.1.2 - Sending mail with gmail

8.4.1.1.3 - Reading mailboxes on remote Plan 9 file systems

8.4.1.2 - nedmail

8.4.1.2.1 - mother

8.4.1.2.2 - Nail

8.4.1.3 - nupas

8.4.2 - NNTP

8.4.3 - IRC

8.4.3.1 - ircrc

8.4.3.2 - irc7

8.4.3.3 - ircs

8.4.3.4 - wircrc

8.4.4 - FTP

8.4.5 - HTTP

8.4.5.1 - mothra

8.4.5.2 - abaco

8.4.5.3 - hget

8.4.5.4 - charon

8.4.5.5 - i

8.4.5.6 - NetSurf

8.4.6 - SSH

8.4.6.1 - ssh

8.4.6.1.1 - sshfs

8.4.6.1.2 - sshnet

8.4.6.5.1 - Mounting a remote u9fs share over SSH

8.4.7 - secstore

8.4.8 - drawterm

8.4.8.1 - Connect to Plan 9 from a mobile device

8.4.8.2 - drawterm behind firewalls

8.4.9 - Peer to Peer (P2P)

8.4.9.1 - Tinc

8.4.9.2 - Torrents

8.4.9.2.1 - ip/torrent

8.4.9.2.2 - torrent

8.4.10 - Remote Administration

8.4.10.1 - VNC

8.4.10.1.1 - vnc and vncs

8.4.10.2 - RDP

8.4.10.2.1 - rd

8.5 - Audio

8.6 - External Media

8.6.1 - Mount an ISO9660 CD-ROM

8.6.2 - Burn a CD-ROM

8.6.3 - Mount a FAT formatted USB device

8.7 - Emulation

8.7.1 - Linux Emulation

8.7.2 - Nintendo

8.7.3 - Sega

8.7.4 - Commodore

8.7.5 - PC

8.7.5.1 - Virtualization Using vmx(1)

8.7.5.1.1 Block Devices

8.7.5.1.2 Ethernet

8.7.5.1.3 OpenBSD

8.7.5.1.4 Linux

8.7.5.1.5 Windows NT

8.8 - Additional Software

8.8.1 - 9front sources server

8.8.2 - 9front contrib

8.8.3 - Other public 9p servers

8.8.4 - Advanced Namespace Tools for Plan 9

8.8.5 - Even More Additional Software

8.8.6 - Community Maintained Link For Additional Software

8.9 - Bootstrapping architectures not included on the ISO

8.9.1 - amd64

8.9.2 - Raspberry Pi

8.9.3 - arm64

8.10 - ACPI

8.10.1 - Enabling ACPI

8.12 - Revision Control

8.12.1 - cvs

8.12.2 - git

8.12.3 - Mercurial

8.12.4 - svn

8.13 - Video

8.13.1 - treason

8.13.2 - camv

8.14 - Keyboard Input

8.14.1 - Keyboard Maps

8.14.2 - Ktrans

8.14.2.1 - Japanese

8.14.2.2 - Chinese Pinyin

9 - Troubleshooting

9.1 - First

9.2 - Booting

9.2.2 - Break into a shell

9.2.3 - Editing plan9.ini

9.2.4 - Boot media not recognized

9.2.5 - I moved my hard drive between ports

9.3 - Graphics

9.3.1 - Rio fails to start

9.3.2 - VESA BIOS does not contain a valid mode

9.4 - Networking

9.4.1 - Networking is not working

9.4.2 - Cannot resolve domain names

9.4.3 - /mnt/web/clone does not exist

9.4.4 - PCMCIA WiFi stopped working after reboot

9.5 - USB

9.5.1 - Devices not recognized or not working

9.5.2 - System freezes after showing memory sizes

9.6 - auth

9.99999999999999999999999999999999999999 - GIVE UP

Appendix

B - Bounties

G - GSOC

J - Junk

L - Languages

T - TODO

Z - Getting Started With 9front




FQA INDEX | FQA 0 - Introduction To Plan 9