Difference between revisions of "Xfce"
m (Pulseaudio configuration for xfce4) |
m (Corrected 3-headings to 5-headings to keep constitent with other headings.) |
||
Line 258: | Line 258: | ||
=== Sound === | === Sound === | ||
− | === Pulseaudio === | + | ===== Pulseaudio ===== |
Sync-update the complete gstreamer group since xfce4 uses gstreamer as sound backend. The xfce mixer applet will be able to control volume (after setting device and master control). | Sync-update the complete gstreamer group since xfce4 uses gstreamer as sound backend. The xfce mixer applet will be able to control volume (after setting device and master control). | ||
Line 264: | Line 264: | ||
pacman -Syu gstreamer0.10-plugins | pacman -Syu gstreamer0.10-plugins | ||
− | ==== How do I get xfce4-mixer and OSS4 to work together? ==== | + | ===== How do I get xfce4-mixer and OSS4 to work together? ===== |
Xfce 4.6 uses gstreamer as the backend to control volume, so first you have to make gstreamer cooperate with xfce4-mixer. | Xfce 4.6 uses gstreamer as the backend to control volume, so first you have to make gstreamer cooperate with xfce4-mixer. | ||
Line 294: | Line 294: | ||
Other LINKS: [http://www.4front-tech.com/forum/ OSS forum] | Other LINKS: [http://www.4front-tech.com/forum/ OSS forum] | ||
− | ==== Change volume with keyboard volume buttons ==== | + | ===== Change volume with keyboard volume buttons ===== |
Go to | Go to |
Revision as of 22:50, 3 July 2011
Template:Article summary text Template:Article summary text Template:Article summary heading Template:Article summary text Template:Article summary end
From Xfce - About:
- Xfce embodies the traditional UNIX philosophy of modularity and re-usability. It consists of a number of components that provide the full functionality one can expect of a modern desktop environment. They are packaged separately and you can pick among the available packages to create the optimal personal working environment.
Contents
- 1 What is Xfce?
- 2 Features
- 3 Installation
- 4 Running Xfce
- 5 Tips
- 5.1 Panel
- 5.2 Desktop
- 5.3 XFWM4
- 5.4 Commands for the settings manager
- 5.5 Session
- 5.6 How to add themes to XFCE
- 5.7 Cursors
- 5.8 Fonts
- 5.9 Sound
- 5.10 Screenshots
- 5.11 Change mount options
- 6 Troubleshooting
- 7 Related Articles
- 8 External Resources
What is Xfce?
Xfce is a Desktop Environment, like GNOME or KDE. It contains a suite of apps like a root window app, window manager, file manager, panel, etc. Xfce is written using the GTK2 toolkit, and contains its own development environment (libraries, daemons, etc), similar to other big DEs.
Features
- Lighter on resources than the other major DEs (KDE, GNOME).
- Most settings are exposed via a GUI, Xfce doesn't try to hide stuff from the user.
- Xfwm has an optional built-in compositor which allows for true transparency and all the benefits of GPU acceleration (minimizes tearing, etc.).
- It works great with multiple monitors.
- Xfce4 is stable, mature software.
Installation
Xfce is somewhat modular. That means there is no need for you to run every part, you can pick and choose some of them. Because of this, Xfce has some separate Arch packages.
Installing Xfce
To install the base Xfce system, run:
# pacman -S xfce4
Pacman will ask you to select the packages to install, you probably want to get them all by simply pressing enter.
# pacman -S xfwm4 xfce4-panel xfdesktop thunar xfce4-session xfce4-settings xfce4-appfinder xfce-utils xfconf
If you want extras, like panel plugins, run this:
# pacman -S xfce4-goodies
Like before, pacman will ask you which packages you want to install.
If you wish to admire 'Tips and Tricks' on login, install the fortune-mod package:
# pacman -S fortune-mod
In order to get the xfce4-mixer to work with alsa, you need to install gstreamer0.10-base-plugins. (See below for help with OSS.)
# pacman -S gstreamer0.10-base-plugins
Installing and configuring the Daemons
Install D-Bus:
# pacman -S dbus
Install Gamin (the successor of FAM). It is configured to automatically run in the background by default, do not add it to rc.conf.
# pacman -S gamin
Running Xfce
Automatically at boot time
See Display Manager to install and configure a Display Manager. Be sure to configure it properly for PolicyKit.
Manually
You can execute:
$ startxfce4
from the console, or configure xinitrc and use xinit or startx.
If you have not created a ~/.xinitrc yet, do so with:
$ cp /etc/skel/.xinitrc ~/.xinitrc
and add the following line:
exec ck-launch-session dbus-launch --exit-with-session startxfce4
Example:
#!/bin/sh # # ~/.xinitrc # # Executed by startx (run your window manager from here) # exec gnome-session # exec startkde # exec startxfce4 # ...or the Window Manager of your choice exec ck-launch-session dbus-launch --exit-with-session startxfce4
dbus-launch
starts a dbus-daemon instance to provide communication with PolicyKit. ck-launch-session
starts a clean consolekit session needed by Xfce for power management, automounting, shutting down/rebooting etc. ConsoleKit/PolicyKit capable display managers such as gdm do this for you automatically. Notice dbus-launch must be placed after ck-launch-session, or there will be problems when mounting disks.
Shutting down, rebooting, and automounting from within Xfce
- Make sure that dbus is enabled in the DAEMONS array in /etc/rc.conf.
- Make sure you are a member of the power group for shutting down and rebooting.
- Make sure you are a member of the storage group for automounting.
- Make sure that you are using
exec ck-launch-session dbus-launch --exit-with-session startxfce4
in ~/.xinitrc or a ConsoleKit/PolicyKit capable display manager, such as GDM or SLiM. (see above)
Tips
Panel
How to customize xfce panel background
Edit ~/.gtkrc-2.0. Note that you must place the image in the same directory as the configuration, which is ~/. You can not specify the path to the image, or it won't work.
style "panel-background" { bg_pixmap[NORMAL] = "foo.bar" bg_pixmap[PRELIGHT] = "foo.bar" bg_pixmap[ACTIVE] = "foo.bar" bg_pixmap[SELECTED] = "foo.bar" bg_pixmap[INSENSITIVE] = "foo.bar" } widget_class "*Panel*" style "panel-background"
The "Ubuntu System Panel" (Gnome) panel applet has similar features to those found in its KDE v4.2 equivalent. It can be added to an Xfce panel via the 'XfApplet' panel applet, which allows Gnome applets to be used in Xfce.
It is available in the AUR
Method 1
With the built-in menu editor, you cannot remove menu entries from the System menu. Here’s how to hide them:
- Open Terminal (Xfce menu > System > Terminal) and go to the /usr/share/applications folder:
$ cd /usr/share/applications
- This folder should be full of .desktop files. To see a list type:
$ ls
- Add NoDisplay=true to the .desktop file. For example, if you want to hide Firefox, type in the terminal:
$ sudo echo "NoDisplay=true" >> firefox.desktop
This command appends the text NoDisplay=true to the end of the .desktop file and saves the file
Method 2
Another method is to copy the entire contents of the global applications directory over to your local applications directory, and then proceed to modify and/or disable unwanted .desktop entries. This will survive application updates that overwrite changes under /usr/share/applications/.
- In a terminal, copy everything from /usr/share/applications to ~/.local/share/applications/:
$ cp /usr/share/applications/* ~/.local/share/applications/
- For any entry you wish to hide from the menu, add the NoDisplay=true option:
$ echo "NoDisplay=true" >> ~/.local/share/applications/foo.desktop
You can also edit the application's category by editing the .desktop file with a text editor and modifying the Categories= line.
I've found some shortcuts that show in the category “Other” in this directory: ~/.local/share/applications/wine/.
Desktop
Why doesn't my desktop refresh?
Xfce 4.6 uses FAM (File Alteration Monitor) or gamin (FAM's successor) to get notification when a file or directory changes. If you decide to use FAM, don't forget to add 'fam' to the list of DAEMONS in /etc/rc.conf. This step is not necessary for gamin.
NOTE: After recent updates, FAM may have issues opening some mounts, such as sshfs. Use gamin if this is the case.
Use a transparent background for desktop icon titles
To change the default white background of desktop icon titles to something more suitable, edit the .gtkrc-2.0 file in your home directory (or create the file if needed) and add the following:
style "xfdesktop-icon-view" { XfdesktopIconView::label-alpha = 10 base[NORMAL] = "#000000" base[SELECTED] = "#71B9FF" base[ACTIVE] = "#71FFAD" fg[NORMAL] = "#ffffff" fg[SELECTED] = "#71B9FF" fg[ACTIVE] = "#71FFAD" } widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"
Hide selected partitions on the desktop
If you wish to prevent certain partitions or drives appearing on the desktop, you can create a udev rule, for example Template:Filename:
KERNEL=="sda1", ENV{UDISKS_PRESENTATION_HIDE}="1" KERNEL=="sda2", ENV{UDISKS_PRESENTATION_HIDE}="1"
Would show all partitions with the exception of sda1 and sda2 on your desktop.
xfconf-query -c xfce4-desktop -v --create -p /desktop-icons/style -t int -s 0
XFWM4
How to enable the compositor in Xfce 4.6
Xfce 4.6 comes with a builtin compositor adding the option for fancy window effects, shadows and transparency and so on. It can be enabled in the Window Manager Tweaks and works on the fly. No additional settings are needed in your /etc/xorg.conf. To enable and adjust settings, go to:
Menu --> Settings --> Window Manager Tweaks
Disable window roll-up
xfconf-query -c xfwm4 -p /general/mousewheel_rollup -s false
Commands for the settings manager
There is no official documentation for the commands executed. One must look at .desktop files /usr/share/applications/ folder. For the people who like to know exactly what is happening, here is a handy list to save the effort:
xfce-setting-show backdrop xfce-setting-show display xfce-setting-show keyboard xfce4-menueditor xfce-setting-show sound xfce-setting-show mouse xfce-setting-show session xfce-setting-show xfce-setting-show splash xfce-setting-show ui xfce-setting-show xfwm4 xfce-setting-show wmtweaks xfce-setting-show workspaces xfce-setting-show printing_system xfce4-appfinder xfce4-autostart-editor xfce4-panel -c
To review all the available setting manager commands run the following in a terminal:
$ grep xfce-setting-show /usr/share/applications/xfce*settings*
Session
Customizing Startup Applications
This includes getting necessary environment variables into the GUI runtime.
- Copy the file /etc/xdg/xfce4/xinitrc to ~/.config/xfce4/
- Edit this file. For example, you can add something like this somehwere in the middle:
source $HOME/.bashrc # start rxvt-unicode server urxvtd -q -o -f
Switch between users
It is possible to switch between X sessions thanks to xfswitch-plugin . It adds an icon to the Xfce panel, and requires gdm to work at the moment.
xfswitch-plugin is available through AUR
Modify XML settings files directly
It may be useful, especially when upgrading, to manually edit .xml files in the ~/.config/xfce4/xfconf/ folder. For application keyboard shortcuts for example, the file is ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml. It's faster to copy and paste the XML keys that you want rather than using the GUI.
How to add themes to XFCE
1. Go to xfce-look.org and click "Themes" in the left navbar. Look around for a theme you want and click "Download".
2. Go to the directory where you downloaded the tarball/file and extract it using Squeeze/Xarchiver/CLI.
3. Move the extracted folder to /usr/share/themes (for all users) or ~/.themes (for just you). Inside /usr/share/themes/abc, there is a folder that you create called xfwm4 that will contain whatever files that is included with that theme.
4. GTK theme is available here:
Menu --> Settings --> Appearance
You select your xfwm theme in:
Menu --> Settings --> Window Manager
Cursors
By default, X uses a plain black cursor. If you have alternative X cursor themes installed, Xfce can find them with:
Menu --> Settings --> Mouse --> Theme
To install new cursor themes, install Template:Package Official or another Template:Package Official package, or see X11 Cursors.
Fonts
If you find the standard fonts rather thick and or slightly out of focus open Settings>Appearence click on the Fonts tab and under Hinting: change to Full
You could also try using a custom DPI setting.
Sound
Pulseaudio
Sync-update the complete gstreamer group since xfce4 uses gstreamer as sound backend. The xfce mixer applet will be able to control volume (after setting device and master control).
pacman -Syu gstreamer0.10-plugins
How do I get xfce4-mixer and OSS4 to work together?
Xfce 4.6 uses gstreamer as the backend to control volume, so first you have to make gstreamer cooperate with xfce4-mixer.
pacman -S xfce4-mixer gstreamer0.10-base-plugins
(Optional) Second, try to install gstreamer0.10-good-plugins, gstreamer0.10-bad-plugins
pacman -S gstreamer0.10-good-plugins gstreamer0.10-bad-plugins
login and logout, or just remove the mixer plugin and add it again. If it doesn't work at all, then you have to compile gstreamer0.10-good-plugins yourself. and can
Download the PKGBUILD and other files needed from ABS or here, edit the PKGBUILD, add --enable-oss.
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --enable-oss \ --disable-static --enable-experimental \ --disable-schemas-install \ --disable-hal \ --with-package-name="GStreamer Good Plugins (Archlinux)" \ --with-package-origin="http://www.archlinux.org/"
and then run makepkg -i.
makepkg -i
Still not working? Try tis package in AUR gstreamer0.10-good-plugins-ossv4, modify the pkgver to the newest in the PKGBUILD, and it should work.
Other LINKS: OSS forum
Change volume with keyboard volume buttons
Go to
Settings --> Keyboard
Click the "Application Shortcuts" tab and add click the "Add" button. Add the following by entering the command, then pressing the corresponding button at the next window:
ALSA
For the raise volume button:
amixer set Master 5%+
For the lower volume button:
amixer set Master 5%-
For the mute button:
amixer set Master toggle
You can also run these commands to set the above commands to the standard XF86Audio keys:
xfconf-query -c xfce4-keyboard-shortcuts -p /commands/custom/XF86AudioRaiseVolume -n -t string -s "amixer set Master 5%+" xfconf-query -c xfce4-keyboard-shortcuts -p /commands/custom/XF86AudioLowerVolume -n -t string -s "amixer set Master 5%-" xfconf-query -c xfce4-keyboard-shortcuts -p /commands/custom/XF86AudioMute -n -t string -s "amixer set Master toggle"
If Template:Codeline does not work, try the PCM channel (Template:Codeline) instead.
The channel must have a "mute" option for the toggle command to work. To check whether or not your Master channel supports toggling mute, run Template:Codeline in a terminal and look for the double M's (MM) under the Master channel. If they are not present, then it does not support the mute option. If, for example, you had to change the toggle button to use the PCM channel, make sure to also set the PCM channel as the Mixer Track under Xfce Mixer properties.
OSS
Use one of these scripts: [http://www.opensound.com/wiki/index.php/Tips_And_Tricks#Using_multimedia_keys_with_OSS ]
If using ossvol (recommended), add:
ossvol -i 1
for the volume up button
ossvol -d 1
for the volume down button
ossvol -t
for the mute/unmute button
Screenshots
Using print-screen key
A simple way is to use a command-line screenshot utility:
# pacman -S scrot
Then
XFCE Menu --> Settings --> Keyboard >>> Application Shortcuts.
Add the "scrot" command to use the "PrintScreen" key.
All screenshots will be placed in your home folder with unique names like
"2009-02-19-063052_1280x1024_scrot.png".
Screenshooter
There is also an a screenshot plugin for the Xfce panel, which can be used instead of scrot, that is available in extra:
# pacman -S xfce4-screenshooter
You can add a keyboard binding for it using the command
xfce4-screenshooter -f
instead of "scrot". You'll get a dialog window after pressing "Print" where you can copy the image to the clipboard or save it.
Change mount options
A common problem when automounting USB sticks formatted with fat filesystem is the inability to properly show characters as umlauts, ñ, ß, etc. This may be solved changing the default iocharset to utf8, which is easily done adding a line to /etc/xdg/xfce4/mount.rc:
[vfat] uid=<auto> shortname=winnt utf8=true # FreeBSD specific option longnames=true
Note that when using utf-8, the system will distinct between upper- and lowercases, potentially corrupting your files. Be careful.
It is also recommendable to mount vfat devices with the flush option, so that when copying to usb sticks data flushes more often, thus making thunar's progress bar to stays up until things are on the disk.
[vfat] flush=true
Removable Devices
If you want an icon appearing on your desktop and in thunar when you plug in external devices, make sure gvfs is installed:
# pacman -S --needed gvfs
You could also need to install gvfs-afc (read this discussion):
# pacman -S gvfs-afc
It is also a good idea to install thunar-volman (included in the xfce4-goodies group):
# pacman -S thunar-volman
Terminal tango color theme
Open with your favorite editor
~/.config/Terminal/terminalrc
And add(replace) this lines:
ColorForeground=White ColorBackground=#323232323232 ColorPalette1=#2e2e34343636 ColorPalette2=#cccc00000000 ColorPalette3=#4e4e9a9a0606 ColorPalette4=#c4c4a0a00000 ColorPalette5=#34346565a4a4 ColorPalette6=#757550507b7b ColorPalette7=#060698989a9a ColorPalette8=#d3d3d7d7cfcf ColorPalette9=#555557575353 ColorPalette10=#efef29292929 ColorPalette11=#8a8ae2e23434 ColorPalette12=#fcfce9e94f4f ColorPalette13=#72729f9fcfcf ColorPalette14=#adad7f7fa8a8 ColorPalette15=#3434e2e2e2e2 ColorPalette16=#eeeeeeeeecec
Troubleshooting
Keyboard shortcuts aren't working
Under Xfce 4.6 there is a problem where the user's keyboard shortcuts will intermittently not work. This is usually the case when the settings helper is either not running or has been started improperly due to a conflict. This bug has been fixed in Xfce 4.8, which replaced 4.6 in the main repositories.
A workaround is to disable xfce4-settings-helper-autostart from autostarting in a user's session. The settings helper daemon will start upon loading an Xfce session, anyways. The following two steps seem to have resolved this issue.
Remove or rename the global autostart .desktop file:
mv /etc/xdg/autostart/xfce4-settings-helper-autostart.desktop /etc/xdg/autostart/xfce4-settings-helper-autostart.desktop.disabled
Remove or rename the local autostart .desktop file:
mv ~/.config/autostart/xfce4-settings-helper-autostart.desktop ~/.config/autostart/xfce4-settings-helper-autostart.desktop.disabled
After logging out and logging back in, your shortcut keys should be working fine now.
Thunar does not display any thumbnail
Thunar relies on Tumbler to generate thumbnails. You can install Tumbler by issuing
pacman -S tumbler
More details in Thunar's page.
Restore default settings
If for any reason you need to revert back to the default settings, try renaming ~/.config/xfce4-session/ and ~/.config/xfce4/
$ mv ~/.config/xfce4-session/ ~/.config/xfce4-session-bak $ mv ~/.config/xfce4/ ~/.config/xfce4-bak
Logout and login for changes to take effect.
Related Articles
External Resources
- http://docs.xfce.org/ - The complete documentation.
- Xfce-Look - Themes, wallpapers, and more.
- Xfce Wikia - How to edit the auto generated menu with the menu editor
- Xfce Wiki