Featured Xfce based DVD/IMG installer. Made note of uniprocessors. Increased headings...
[ikiwiki.git] / varialus / index.mdwn
1 # et
2 # Anisoptera
3 *The following is an unpaid personal wiki page. The views and opinions expressed herein do not necessarily reflect those of the DragonFly BSD mascot nor its management.*
4
5 ## Featured
6
7 **Install Xfce 4.6 via Custom Xfce based DVD/IMG Installer**
8
9 There is a new [Xfce based DVD/IMG installer](http://island.quantumachine.net/~swildner/LiveDVD/x86_64/) which is built by [one of](http://leaf.dragonflybsd.org/mailarchive/users/2012-07/msg00123.html) the [DragonFly BSD team members](http://www.dragonflybsd.org/team/). As far as I can tell it is functionally identical to the official GUI installer except that it includes the Xfce 4.6 desktop environment rather than the FVWM window manager. Please help test it out so that we can hopefully get it included in the next stable release! Version 20120826-2055 may not work with uniprocessors, but this should be fixed in the next build.
10
11 ## Tidbits
12 * **Hammer** is hands down the best file system currently in existence. It has block level deduplication, it is supported out of the box by operating system with great underpinnings, and it runs great on regular hardware.
13 * **DragonFly BSD** is an awesome operating system for many reasons other than that it's the only OS with Hammer, but Hammer is why I'm making the switch. DragonFly's default GUI configuration is a bit rough around the edges for everyday use. But it's nothing that a little ironing can't fix.
14 * **[Xfce](http://xfce.org/)** is a lightweight yet feature rich desktop environment. It has maintains an excellent balance between [innovation and compatibility](http://lwn.net/Articles/430598/).
15 * **[Dissonance](https://bitbucket.org/varialus/dissonance)** is my fork of Apache Harmony, which is a clean room implementation of Java with a permissive license. Sun and now Oracle refuse to license the TCK, a tool used to validate Java compatibility, for use with Harmony. As a result of the dissonance caused by this refusal to cooperate with the community, Apache retired Harmony and resigned from the Java Community Process Executive Committee. I would have preferred for Apache and the community to have instead just written their own TCK, but I don't know what effects the dissonance had on their organization and it was their decision to make, so I can't blame them. It's unfortunate that such a great project has been effectively abandoned, and so it it is with that in mind that I call on the community to support Dissonance; make your own TCK and make it so much better so as to make passing Oracle's TCK effectively meaningless.
16 * **[Jython](http://www.jython.org/)** is Python written in Java. It's not included in DragonFly BSD by default, but it's a great tool and I use it.
17 * **ee** is roughly equivalent to **nano**. They are both easy to use command line text editors. The exit option will ask you whether you want to save. You can get to the exit confirmation by pressing Ctrl-[ and selecting 'a) leave editor'.
18 * **pkgin** is roughly equivalent to **apt-get**. They are both fairly straightforward command line package management utilities.
19
20 ## Reminders
21 * If NetworkManager Applet is installed, use it to override an unreliable DNS server rather than editing /etc/resolv.conf directly. Observed in NetworkManager 0.8.1 on Debian Squeeze.
22 * In DragonFly BSD the command *shutdown -p now* will shutdown and turn off your computer. Using the -h switch instead of -p will shutdown and halt the computer but not turn it off. In Debian and probably other Linux distributions, the command *shutdown -h now* will shutdown and turn off your computer. The -p switch isn't available, but there may be a way to shutdown and halt without turning off your computer.
23
24 ## Issues
25 * Varialus should ensure that these issues are properly logged. Yes, I know that they should be properly logged and I intend to eventually get them all logged. In the mean time hopefully my notes will help someone still trying to find the answers to life's persistent questions.
26 * The installer should offer the Xfce desktop environment as a supported option. Observed in DragonFly 3.0.2. See workaround below.
27 * The installer should set the keyboard layout before any typing is required. Observed in DragonFly 3.0.2.
28 * The installer should set the keyboard layout for the GUI. Observed in DragonFly 3.0.2. See workaround below.
29 * The installer should set the keyboard layout for the encryption password prompt. Observed in DragonFly 3.0.2.
30 * The installer should configure the keyboard within the GUI to be able to use the caps lock key. Observed in DragonFly 3.0.2. See workaround below.
31 * When encrypting the swap partition, the installer should configure the boot loader to generate a random key each time the system is booted so that the password doesn't have to be typed twice when the system is booted. Observed in DragonFly 3.0.2.
32 * When configuring the system from the installer, if the system just finished installing with encryption, the hard drive should stay unlocked so that the user doesn't have to type in his password again. Observed in DragonFly 3.0.2.
33 * When configuring the system from the installer, if the system is encrypted but was not just barely installed, the user should only have to type in his password once, not twice. Observed in DragonFly 3.0.2.
34 * When creating a user password in the installer, the password should not be written to a plain text installation log. Observed in DragonFly BSD 3.0.2.
35 * When installing from a USB device onto a USB device, the installer should ensure that installed media is named such that when booted without the USB installer, the installed device name doesn't change. Observed in DragonFly 3.0.2.
36 * When installing onto a 3TB+ hard drive, the default partition table should be able to handle that size. Observed in DragonFly 3.0.2. Fixed and tested in snapshot on 8/14/2012. See workaround below.
37 * After selecting to install using all of a 3TB+ hard drive that already has an MS-DOS/MBR partition table on it, the installer should overwrite the partition table with an adequate partition table such as GPT. Observed in snapshot on 8/14/2012.
38 * The default shell provided by the installer should list valid auto completion options after typing a partial command and then pressing tab two or more times. Observed in DragonFly 3.0.2.
39 * ->Excepting the bullet point, this syntax should center text in this wiki.<- Observed on 8/25/2012.
40 * The following errors should not occur when quitting from the GUI.
41
42         waiting for X server to shut down xterm: fatal IO error 35 (Resource temporarily unavailable) or KillClient on X server ":0.0"
43         xterm:  fatal IO error 35 (Resource temporarily unavailable) or KillClient on X server "0.0"
44         failed to unset mtrr: Device not configured
45         
46         
47         xauth: (argv):1:  bad display name "myhostname.mysubdomain.mytld:0" in "remove" command
48
49     Observed in DragonFly BSD 3.0.2 64-bit on VirtualBox 4.1.20 in Debian Squeeze.
50
51 ## Workarounds
52 **Enable the Caps Lock Key within the GUI**
53
54 Edit the file /etc/X11/xorg.conf.
55
56     ee /etc/X11/xorg.conf
57
58 Delete the ctrl:nocaps XkbOptions option from the InputDevice section with the identifier Keyboard0 of the xorg.conf file. Or comment it out by prefixing the line with the # symbol.
59
60     Section "InputDevice"
61         Identifier  "Keyboard0"
62         Driver      "kbd"
63         #Option      "XkbOptions" "ctrl:nocaps"
64     EndSection
65
66 Observed in DragonFly BSD 3.0.2.
67
68 **Install Non-GUI on 3TB+ Hard Drive**
69
70 *WARNING:* This workaround includes instructions which will delete all data from a hard drive.
71
72 Delete the partition table from the hard drive. There are various tools with which to do this, one particularly easy to use tool is the [GParted Live CD/USB](http://gparted.sourceforge.net/livecd.php).
73
74 Install from a [snapshot version of DragonFly](http://avalon.dragonflybsd.org/snapshots/). Be aware that snapshot versions are less thoroughly tested than stable releases.
75
76 Tested in snapshot on 8/14/2012.
77
78 **Install Xfce 4.6**
79
80 *WARNING:* This workaround is not yet complete. Contributions are welcome.
81
82 The following testing is being done with a root account and no user account. Additional testing with a regular user account will be done later.
83
84 *DragonFly BSD 3.1-DEVELOPMENT Non-GUI Instructions*
85
86 Summary
87
88 * Install XOrg if it's not already installed.
89 * Ensure that mouse works.
90 * Get the xfce4 meta-package make file.
91 * Install binary files listed in xfce4 meta-package make file.
92
93 These instructions are currently a mess. They're currently just a rough outline of how I got it working. I'll go through and clean it up later.
94
95 Get a list of which packages would be included if Xfce was installed from source. If you haven't already done so, [create and update the pkgsrc tree](http://www.dragonflybsd.org/docs/howtos/HowToPkgsrc/#index2h2). Running make pkgsrc-create failed for me when I ran it in my virtual machine with 2 GB, but succeeded when I ran it with 3171 MB.
96
97     cd /usr/
98     make pkgsrc-create
99     make pkgsrc-update
100     cd /usr/pkgsrc/meta-pkgs/xfce4
101     pkgin update
102     pkgin in `cat Makefile | grep -E "xfce4.*mk" | sed -e 's/.include.*\/xf/xf/g' -e 's/\/.*/ /g' | tr -d "\n"`
103     pkg_radd modular-xorg
104     ls /dev/
105
106 Log into another console window by pressing Ctrl-Alt-F2 or in VirtualBox, Alt-F2.
107
108     man moused
109
110 Scroll down until you find where it mentions mouse dev names.
111
112     ee /etc/X11/xorg.conf
113
114 Comment out the /dev/sysmouse line by putting a # in front of it. Add the following line.
115
116     Option "Device" "/dev/psm0"
117
118 Except replace psm0 with whichever mouse you've got listed in /dev. Then save the file.
119
120     startxfce4
121
122 *DragonFly BSD 3.0.2 GUI Instructions*
123
124 I got the message Error Code 1 while creating and updating my pkgsrc tree. I haven't yet looked into it further.
125
126 Get a list of which packages would be included if Xfce was installed from source. If you haven't already done so, [create and update the pkgsrc tree](http://www.dragonflybsd.org/docs/howtos/HowToPkgsrc/#index2h2).
127
128     cd /usr/
129     make pkgsrc-create
130     make pkgsrc-update
131
132 Get a list of which packages would be included if Xfce was installed from source. The pkgsrc tree was maybe already created by default on this version of DragonFly BSD. If it has not already been created, you'd first want to [create it](http://www.dragonflybsd.org/docs/howtos/HowToPkgsrc/#index2h2) before continuing. Update the pkgsrc tree.
133
134     cd /usr/
135     make pkgsrc-update
136
137 *Notes*
138
139 * [XFCE based LiveDVD/IMG](http://leaf.dragonflybsd.org/mailarchive/users/2012-07/msg00123.html)
140 * [Installing a Desktop Environment: Xfce4](http://www.dragonflybsd.org/docs/how_to_get_to_the_desktop/#index11h3)
141 * [Desktop Environments: Xfce](http://www.dragonflybsd.org/docs/newhandbook/X/#index9h3)
142 * [Longest DragonFly BSD Review: Running Xfce in DragonFlyBSD 3.0.1](http://insidesocal.com/click/2012/04/review-dragonflybsd-301----the-5.html)
143 * [Instructions via Google Translate](http://www.google.com/translate_c?langpair=en&u=http://dragonflybsd.fr/index.php?page=Installation+de+Xfce4)
144 * [Installing pkgsrc](http://www.dragonflybsd.org/docs/howtos/HowToPkgsrc/#index2h2)
145
146     pkgin search xfce
147
148 **Install Xfce 4.8**
149
150 *WARNING:* This workaround is not yet complete. Contributions are welcome.
151
152 * [Choosing between portability and innovation](http://lwn.net/Articles/430598/)
153 * [Xfce 4.8 on BSD flavors](http://gezeiten.org/post/2011/01/Xfce-4.8-on-BSD-flavors)
154 * [Xfce 4.8 tour](http://xfce.org/about/tour48)
155
156 **Install Xfce 4.10**
157
158 *WARNING:* This workaround is not yet complete. Contributions are welcome.
159
160 * [Xfce 4.10 released](http://www.xfce.org/about/news/?post=1335571200)
161 * [Xfce 4.10 tour](http://xfce.org/about/tour)
162
163 **Set the GUI Keyboard Layout**
164
165 Edit the file /etc/X11/xorg.conf.
166
167     ee /etc/X11/xorg.conf
168
169 Set the XkbVariant option to your keyboard variant.
170
171     Section "InputDevice"
172         Identifier  "Keyboard0"
173         Driver      "kbd"
174         Option      "XkbVariant" "dvorak"
175     EndSection
176
177 Valid keyboard options can be found by searching through /usr/pkg/share/X11/xkb/symbols/ for example to find references to the dvorak keyboard layout, run the following command.
178
179     grep --color -n -r dvorak /usr/pkg/share/X11/xkb/symbols
180
181 If too many lines scroll by, you can use your arrow buttons to scroll back within the non-graphical console screen by pressing the Scroll Lock button on your keyboard.
182
183 Tested in DragonFly 3.0.2.