Difference between revisions of "GNOME tips"

From ArchWiki
Jump to: navigation, search
m (" don't " -> " do not ")
(Add 'start application with another languags' as the default one.)
(44 intermediate revisions by 25 users not shown)
Line 1: Line 1:
[[Category:Desktop environments (English)]]
+
[[Category:GNOME]]
{{i18n|GNOME Tips}}
+
[[it:GNOME Tips]]
 +
[[nl:GNOME Tips]]
 +
[[ru:GNOME Tips]]
 +
[[zh-CN:GNOME Tips]]
 
{{out of date}}
 
{{out of date}}
{{Merge|Gnome}}
+
{{Merge|GNOME}}
  
==gnome-system-tools==
+
== Configuration tips ==
  
You may have noticed the GNOME admin tools (''System → Administration'') are not included in the gnome groups. You will need the {{Codeline|gnome-system-tools}} package which is installed in a discrete step:
+
=== Add/edit GDM eessions ===
  
{{cli|# pacman -S gnome-system-tools}}
+
Each session is a {{ic|.desktop}} file located at {{ic|/usr/share/xsessions/}}.
  
As mentioned above, this and other helpful info can be found on the [[GNOME Tips]] wiki page which you should read through.
+
'''To add a new session:'''
  
{{Note|Using {{Codeline|gnome-system-tools}} on older GNOME versions may require you to insert your user to the group {{Codeline|stb-admin}}, otherwise you may encounter the ''"The configuration could not be loaded. You are not allowed to access the system configuration."'' error message. This should not be necessary any more, as version 2.28 of {{Codeline|gnome-system-tools}} does not need the {{Codeline|stb-admin}} group; in fact, upgrading from a previous version will remove this group.}}
+
1. Copy an existing {{ic|.desktop}} file to use as a template for a new session:
 +
$ cd /usr/share/xsessions
 +
# cp gnome.desktop other.desktop
 +
2. Modify the template {{ic|*.desktop}} file to open the required window manager:
 +
# nano other.desktop
  
For normal users to use system tools, package {{Codeline|gksu}} is needed:
+
Alternatively, you can open the new session in KDM which will create the *.desktop file. Then return to using GDM and the new session will be available.
  
{{cli|# pacman -S gksu}}
+
=== GDM appearance ===
  
To configure gksu to use [[Sudo]] rather than [[Su]], use this command:
+
You can use {{AUR|gdm3setup}} from the [[Arch User Repository|AUR]].
  
{{cli|$ sudo gconftool-2 -s /apps/gksu/sudo-mode -t bool true}}
+
==== GDM wallpaper ====
  
Make sure you have already configured [[Sudo]] properly.
+
{{Accuracy|1=these scripts were recovered from [https://wiki.archlinux.org/index.php?title=GNOME&diff=161398&oldid=prev] and may require testing.}}
  
==XDG User Directories==
+
These scripts assist in setting up the GDM wallpaper and are an addition to [[GNOME#Login screen]]. Place these files in a suitable location and make them executable. An example of running these scripts appears below.
Many Linux distributions such as Ubuntu or Linux Mint set up your default user directories such as your downloads directory, music directory, documents directory, and so on. This also gives these directories special identifying icons. To set XDG user directories up, run this command:
+
{{cli|# pacman -S xdg-user-dirs}}
+
  
The default user directory settings are stored in {{filename|/etc/xdg/user-dirs.defaults}}. You can edit it to change the default settings for where you want users to have their directories with this:
+
{{hc|/usr/local/bin/prep-gdm-vars|<nowiki>
{{Tip|You do not have to edit this file if you only want to set up XDG User Directories for one user or you accept the default settings.}}
+
#  This script must be run using '.' or 'source'
{{cli|# nano /etc/xdg/user-dirs.defaults}}
+
$(dbus-launch | sed "s/^/export /")
 +
</nowiki>}}
  
Run this as a normal user to set up your directories:
+
{{hc|/usr/local/bin/show-avail-gdm-bkgd|2=
{{cli|$ xdg-user-dirs-update}}
+
#!/bin/bash
 +
#  Usage:  show-avail-gdm-bkgd  [folder]
 +
#  Specify any folder within /usr/share/backgrounds.
 +
#  If you omit the folder, you'll be shown available choices.
 +
file_part="/usr/share/backgrounds/"
 +
if ! [ $1 ]; then
 +
  echo -en \\n  Please specify one of these directories:\\n\\n\\040
 +
  ls $file_part; echo; exit 1; fi
 +
ls ${file_part}/$1
 +
}}
  
This command creates the directories needed and sets them up so GNOME knows that is where those types of files should go by default. The folders also have special icons depending on what folder your configuration file tells GNOME they are.
+
{{hc|/usr/local/bin/revise-gdm-bkgd|<nowiki>
 +
#!/bin/bash
 +
#  Usage:  revise-gdm-bkgd gnome/filename.jpg
 +
#  Specify any file path within /usr/share/backgrounds.
 +
org_part="org.gnome.desktop.background picture-uri"
 +
file_full="/usr/share/backgrounds/$1"
 +
# Trap when argument is: missing, a mere directory, a bad filename.
 +
if ( ! [ $1 ] || [ -d $file_full ] ); then
 +
  echo -en \\n Specify a file. Use this example:
 +
  echo -e \ \ revise-gdm-bkgd \ gnome/TwoWings.jpg\\n; exit 1; fi
 +
if ! [ -r $file_full ]; then
 +
  echo -e \\n Specifed file does not exist or is not readable.\\n; exit 2; fi
 +
GSETTINGS_BACKEND=dconf gsettings set $org_part "file://${file_full}"
 +
</nowiki>}}
  
To edit your user directories configuration file later, know that it is located in {{filename|~/.config/user-dirs.dirs}}. You can edit it by running the following command or by using your favorite text editor:
+
Here is a session showing how a user might change the GDM wallpaper using the scripts listed above. It starts with a normal user's terminal and assumes he is able to open a bash session as root. The root user then opens a session as "gdm" and changes the wallpaper.
{{cli|$ nano ~/.config/user-dirs.dirs}}
+
 
+
==Configuration Tips==
+
===Add/Edit GDM Sessions===
+
 
+
Each session is a {{Filename|*.desktop}} file located at /usr/share/xsessions.
+
 
+
'''To add a new session:'''
+
 
+
1. Copy an existing {{Filename|*.desktop}} file to use as a template for a new session:
+
$ cd /usr/share/xsessions
+
$ sudo cp gnome.desktop other.desktop
+
2. Modify the template {{Filename|*.desktop}} file to open the required window manager:
+
$ sudo nano other.desktop
+
 
+
Alternatively, you can open the new session in KDM which will create the *.desktop file. Then return to using GDM and the new session will be available.
+
  
===GDM appearance===
+
# xhost +
 +
access control disabled, clients can connect from any host
 +
# su - gdm -s /bin/bash
 +
 +
'''-bash-4.2$''' . prep-gdm-vars  #  Must use . to execute this script!
 +
access control disabled, clients can connect from any host
 +
 +
'''-bash-4.2$''' show-avail-gdm-bkgd gnome
 +
Aqua.jpg            FreshFlower.jpg  Spaceflare-nova.jpg      Terraform-green.jpg  YellowFlower.jpg
 +
Blinds.jpg          Garden.jpg      Spaceflare-supernova.jpg  Terraform-orange.jpg
 +
BlueMarbleWest.jpg  GreenMeadow.jpg  SundownDunes.jpg          TwoWings.jpg
 +
FootFall.png        Spaceflare.jpg  Terraform-blue.jpg        Wood.jpg
 +
 +
'''-bash-4.2$''' revise-gdm-bkgd gnome/GreenMeadow.jpg
 +
 +
'''-bash-4.2$''' logout
 +
 +
# logout
  
You can change background image, gtk/icon theme by hands (as described at [[Gnome_2.28_Changes#Configuring_gdm_2.28]]), or you can use {{Package AUR|gdm2setup}} from the [[AUR]].
+
Script {{ic|revise-gdm-bkgd}} may also be used to change your normal user background from the command prompt. Admittedly, the script name does not quite fit when used for that purpose.
  
===Slow Performance===
+
=== Default applications ===
Due to an improper coded GNOME drawing library, some actions in GNOME can slow the system. If the theme icons are in SVG format, they make the system slower. A very fast improvement is to either use icons in PNG format or to convert the used icons into the PNG format.
+
  
===Default applications===
 
 
You may want to configure system-wide default applications and file associations. This is extremely useful when you have some KDE applications installed, but still prefer a GNOME ones to be launched by default.
 
You may want to configure system-wide default applications and file associations. This is extremely useful when you have some KDE applications installed, but still prefer a GNOME ones to be launched by default.
  
To do that you can install {{Package AUR|gnome-defaults-list}} from [[AUR]]. It will place your configuration file at {{Filename|/etc/gnome/defaults.list}}.
+
To do that you can install {{AUR|gnome-defaults-list}} from the [[Arch User Repository|AUR]]. It will place your configuration file at {{ic|/etc/gnome/defaults.list}}.
  
If you want to do everything manually, create {{Filename|/usr/share/applications/defaults.list}} with the following format:
+
If you want to do everything manually, create {{ic|/usr/share/applications/defaults.list}} with the following format:
 +
{{bc|1=
 
  [Default Applications]
 
  [Default Applications]
 
  application/pdf=evince.desktop
 
  application/pdf=evince.desktop
 
  image/jpeg=eog.desktop
 
  image/jpeg=eog.desktop
 
  ...
 
  ...
 +
}}
  
===Enable Volume Control as tray notification===
+
=== Fonts seem skewed ===
Some users will have noticed that there is no volume control by default. It either can be added as a object to the panel or as a notification icon in the systray. To do the last one you have to replace gnome-media with gnome-media-pulse. This will install the volume control manager developed by Redhat and used in Distributions such as Ubuntu or Fedora.
+
  
# pacman -S gnome-media-pulse
+
You can alter the DPI of your fonts in GNOME with right-click on the desktop > ''Change desktop background > Fonts > Details > Resolution''.
  
===Fonts Seem Skewed===
+
=== Change the default background color, opacity, etc. ===
You can alter the DPI of your fonts in Gnome with right-click on the desktop ''&rarr; Change desktop background &rarr; Fonts &rarr; Details &rarr; Resolution''
+
  
===Enable smooth Fonts===
 
To have a nice and readable font configuration all you have to do is to click again with right-click on the desktop ''&rarr; Fonts &rarr; Details''.
 
Here you can set Subpixel (LCD) for Antialiasing and a low Hinting to have a optimal configuration. See [[Font Configuration]] for more information.
 
 
===Change the Default Background Image===
 
The default background is that zoomed in picture of a green leaf.  It appears for newly created users, but more importantly, this is the image shown when the screen is locked.  As of 25-Apr-2009, you can find this image here
 
/usr/share/pixmaps/backgrounds/gnome/background-default.jpg
 
To change it, simply copy your favorite image to this location (as root) and rename it.
 
 
===Change the Default Background Color, Opacity, etc.===
 
 
The default background color is green. You might want to change it if you're using a transparent PNG as background.
 
The default background color is green. You might want to change it if you're using a transparent PNG as background.
 
  $ sudo gconf-editor
 
  $ sudo gconf-editor
Go to ''File &rarr; New Defaults Window'' and edit the keys
+
Go to ''File > New Defaults Window'' and edit the keys
 
  /desktop/gnome/background/primary_color
 
  /desktop/gnome/background/primary_color
 
and
 
and
Line 99: Line 116:
 
You can also find keys for opacity, shading style, etc.
 
You can also find keys for opacity, shading style, etc.
  
===Make Shell Windows Open to a A Larger Size===
+
=== Disable confirmation window when closing gnome-terminal ===
Once you add a launcher for your gnome-terminal, you can modify it such that the terminal is larger than the standard.
+
Right-click the launcher ''&rarr; Properties''.  Now under the "Command" section, add the following
+
Command: gnome-terminal --geometry 105x25+100+20
+
  
===Disable confirmation window when closing gnome-terminal===
+
The terminal always prompts a confirmation window when trying to close the window while one is logged in as root. To avoid this confirmation start '''gconf-editor''' and disable '''confirmation_window_close''' variable in '''/apps/gnome-terminal/global'''. Please note that although this setting is not set via dconf-editor it also works in the GNOME Shell.
The terminal always prompts a confirmation window when trying to close the window while one is logged in as root. To avoid this confirmation start '''gconf-editor''' and disable '''confirmation_window_close''' variable in '''/apps/gnome-terminal/global'''. Please note that although this setting is not set via dconf-editor it also works in the Gnome Shell.
+
  
==Misc Tips==
+
=== Start application with another language ===
===Screen Lock===
+
 
#Make sure that dbus is running (probably a good idea to add it to the daemons array in rc.conf).
+
If you want to start an application with another language as the system's default one, you can change the application's desktop file in ''~/.local/share/applications'''' for yourself or in '''/usr/share/applications''' for everyone like shown below.
#Install xscreensaver<pre># pacman -S xscreensaver</pre>
+
 
#Go to Desktop -> Preferences -> Screensaver
+
Find the desktop file of the application which you want to start with another language. Go to the'''Exec''' row: (here for Empathy):
#Enable one or more screensavers
+
 
#Lock Screen will now start your screensaver and require your password to stop it.
+
Exec=empathy %f
 +
 
 +
and change it to:
 +
 
 +
Exec='''env LANG=de_DE.UTF-8''' empathy %f
 +
 
 +
From now on that application will start with the chosen language.
 +
 
 +
== Miscellaneous tips ==
 +
 
 +
=== Screen lock ===
 +
 
 +
# Make sure that dbus is running (probably a good idea to add it to the daemons array in {{ic|/etc/rc.conf}}).
 +
# [[pacman|Install]] {{pkg|xscreensaver}}.
 +
# Go to ''Desktop > Preferences > Screensaver''
 +
# Enable one or more screensavers
 +
# Lock Screen will now start your screensaver and require your password to stop it.
 +
 
 +
'''or''' you can install {{Pkg|gnome-screensaver}}.
  
'''or''' you can install gnome-screensaver:
 
# pacman -S gnome-screensaver
 
 
Also you can find [http://ubuntuforums.org/showthread.php?t=195557 here] how to replace gnome-screensaver with xscreensaver.
 
Also you can find [http://ubuntuforums.org/showthread.php?t=195557 here] how to replace gnome-screensaver with xscreensaver.
  
===Nautilus Tips===
+
=== Nautilus tips ===
Get a certain path in spatial view? Just press:
+
Control + L
+
  
====Change Browser Mode (Spatial View)====
+
Get a certain path in spatial view? Just press {{ic|Ctrl+l}}.
#Start gconf-editor
+
 
#Browse to apps/nautilus/preferences
+
==== Change browser mode (spatial view) ====
#Change the value  of "always_use_browser" (it's a yes/no value and should be visible as a checkbox or say "false", for the later change the value to "true")
+
 
 +
# Start gconf-editor
 +
# Browse to ''apps/nautilus/preferences''
 +
# Change the value  of "always_use_browser" (it's a yes/no value and should be visible as a checkbox or say "false", for the later change the value to "true")
 
Or you can do this through the preferences:
 
Or you can do this through the preferences:
#In a Nautilus window go to Edit>>Preferences
+
# In a Nautilus window go to ''Edit > Preferences''
#Change to the Behaviour tab
+
# Change to the Behaviour tab
#Check (or uncheck) Always Open in Browser Windows
+
# Check (or uncheck) ''Always Open in Browser Windows''
  
====Music Information Columns in List View (bitrate etc.)====
+
==== Music information columns in list view (bit rate, etc.) ====
Nautilus lacks the abillity to display metadata for music files in list view mode. A Python script was written to add columns for:
+
*Artist
+
*Album
+
*Track Title
+
*Bitrate
+
  
First, install the requirements.
+
Nautilus lacks the ability to display metadata for music files in list view mode. A Python script was written to add columns for:
sudo pacman -S mutagen
+
* Artist
 +
* Album
 +
* Track Title
 +
* Bit Rate
  
And, from AUR, [[http://aur.archlinux.org/packages.php?ID=8295 python-nautilus]]
+
First, [[pacman|install]] the {{Pkg|mutagen}} and {{AUR|python-nautilus-git}}.
wget http://aur.archlinux.org/packages/python-nautilus/python-nautilus.tar.gz
+
 
tar -zxvf python-nautilus.tar.gz
+
Now, create a directory called ''python-extensions'' in {{ic|~/.nautilus}}. Place the following script, named {{ic|bsc.py}}, in this newly created folder. You may download the script here: [[http://stefanwilkens.eu/bsc.py bsc.py]] (please drop --[[User:Stefanwilkens|stefanwilkens]] a line if this goes down)
cd python-nautilus
+
makepkg
+
sudo pacman -U *.pkg.tar.gz
+
  
Now, create a directory called ''python-extensions'' in ''~/.nautilus''. Place the following script, named bsc.py, in this newly created folder. You may download the script here: [[http://stefanwilkens.eu/bsc.py bsc.py]] (please drop --[[User:Stefanwilkens|stefanwilkens]] a line if this goes down)<br>
 
 
Mirror: [[http://kclkcl.webege.com/files/bsc.py bsc.py]]
 
Mirror: [[http://kclkcl.webege.com/files/bsc.py bsc.py]]
  
[http://ubuntuforums.org/showthread.php?t=878683 bas-v2.py] adds fixes and more media support (link at bottom of 4th post).<br>
+
[http://ubuntuforums.org/showthread.php?t=878683 bas-v2.py] adds fixes and more media support (link at bottom of 4th post).
 +
 
 
Mirror: [http://www.rnstech.com/mirror/bsc-v2.py bsc-v2.py]
 
Mirror: [http://www.rnstech.com/mirror/bsc-v2.py bsc-v2.py]
  
 
Restart nautilus. You can now configure this new functionallity in Edit -> Preferences -> List Columns
 
Restart nautilus. You can now configure this new functionallity in Edit -> Preferences -> List Columns
  
====Stop Nautilus drawing the desktop====
+
==== Thumbnails ====
You need to open the ''gconf-editor'':
+
apps>nautilus>preferences untick "show_desktop"
+
 
+
In breezy you also need to go to:
+
desktop>gnome>background and untick "draw_background"
+
  
====Thumbnails====
 
 
You will need a tool for creating thumbnails, such as ffmpegthumbnailer. Make sure the necessary codecs are installed.
 
You will need a tool for creating thumbnails, such as ffmpegthumbnailer. Make sure the necessary codecs are installed.
  
Line 173: Line 192:
 
You can replace 'video@mpeg' in that line with any filetype that ffmpeg can open - just right-click > Properties on a file in Nautilus and look at the bit in brackets in the 'Type:' field (don't forget to replace the forward slash with an @ symbol). Some common filetypes are video@mpeg, video@x-matroska, video@x-ms-wmv, video@x-flv, video@x-msvideo, video@mp4; which are usually .mpg, .mkv, .wmv, .flv, .avi, .mp4 respectively.
 
You can replace 'video@mpeg' in that line with any filetype that ffmpeg can open - just right-click > Properties on a file in Nautilus and look at the bit in brackets in the 'Type:' field (don't forget to replace the forward slash with an @ symbol). Some common filetypes are video@mpeg, video@x-matroska, video@x-ms-wmv, video@x-flv, video@x-msvideo, video@mp4; which are usually .mpg, .mkv, .wmv, .flv, .avi, .mp4 respectively.
  
====Turn off Authentication needed to mount internal drive in Nautilus====
+
==== Turn off Authentication needed to mount internal drive in Nautilus ====
 +
 
 
In Ubuntu and other distros you are allowed to mount internal drives by clicking on them without the need for entering a password.
 
In Ubuntu and other distros you are allowed to mount internal drives by clicking on them without the need for entering a password.
To get this behaviour in stock gnome edit the following file.
+
To get this behaviour in stock GNOME, just create the following JavaScript rule:
sudo nano /usr/share/polkit-1/actions/org.freedesktop.udisks.policy
+
{{hc|/etc/polkit-1/rules.d/10-auth.rules|2=
 +
polkit.addRule(function(action, subject) {
 +
              if (action.id="org.freedesktop.udisks2.filesystem-mount-system" && subject.isInGroup("storage")) {
 +
                      return polkit.Result.YES;
 +
                  }
 +
              }
 +
          );
 +
}}
 +
Note: this adds very broad permissions. To only add the same permissions for internal filesystems as for external filesystems, use https://gist.github.com/grawity/3886114#file-udisks2-allow-mount-internal-js
 +
 
 +
Older Polkit versions will require the following file in [[PolicyKit]] Local Authority instead:
 +
{{hc|/etc/polkit-1/localauthority/50-local.d/50-filesystem-mount-system-internal.pkla|2=
 +
[Mount a system-internal device]
 +
Identity=*
 +
Action=org.freedesktop.udisks2.filesystem-mount-system
 +
ResultActive=yes
 +
}}
 +
 
 +
=== Speed up panel autohide ===
  
Find the entry named:
+
==== panel_show_delay / panel_hide_delay ====
<action id="org.freedesktop.udisks.filesystem-mount-system-internal">
+
Within that block, change the value:
+
<allow_active>auth_admin_keep</allow_active>
+
to
+
<allow_active>yes</allow_active>
+
  
===Speed Up Panel Autohide===
 
====panel_show_delay / panel_hide_delay====
 
 
If you find that your panels are taking too long to appear/disappear when using the Panel Autohide feature, try this;
 
If you find that your panels are taking too long to appear/disappear when using the Panel Autohide feature, try this;
 
# Start gconf-editor
 
# Start gconf-editor
# Browse to /apps/panel/global
+
# Browse to ''/apps/panel/global''
# Set panel_hide_delay and panel_show_delay to more sensible (integer) values. Note that these values represent milliseconds!
+
# Set ''panel_hide_delay'' and ''panel_show_delay'' to more sensible (integer) values. Note that these values represent milliseconds!
  
 
The default panel_hide_delay of 500 works well in most cases, but the panel_show_delay default of 500 is horribly slow. After experimenting, a panel_show_delay between 100-200 seems much better.
 
The default panel_hide_delay of 500 works well in most cases, but the panel_show_delay default of 500 is horribly slow. After experimenting, a panel_show_delay between 100-200 seems much better.
  
====Panel animation_speed====
+
==== Panel animation_speed ====
  
Now that the panel show/hide delay has the panels beginning to appear in a reasonable length of time, why does it take the panel so long to actually pop up? There is one more setting you need to add/change to make the panel behavior crisp. The setting: '''animation_speed'''  This setting can be applied globally or on a per-panel basis just like the panel_show_delay and panel_hide_delay. The official description is:
+
Now that the panel show/hide delay has the panels beginning to appear in a reasonable length of time, why does it take the panel so long to actually pop up? There is one more setting you need to add/change to make the panel behavior crisp. The setting {{ic|animation_speed}}: ihis setting can be applied globally or on a per-panel basis just like the {{ic|panel_show_delay}} and {{ic|panel_hide_delay}}. The official description is:
  
 
The speed in which panel animations should occur. Possible values are slow, medium and fast. This key is only relevant if the enable_animations key is true.  
 
The speed in which panel animations should occur. Possible values are slow, medium and fast. This key is only relevant if the enable_animations key is true.  
Line 202: Line 233:
 
To apply globally, just add or change the animation_speed key as a (string) value in:
 
To apply globally, just add or change the animation_speed key as a (string) value in:
  
* /apps/panel/global
+
* ''/apps/panel/global''
  
 
To apply the setting on a per-panel basis, just add/change the key in, for example:
 
To apply the setting on a per-panel basis, just add/change the key in, for example:
  
* /apps/panel/toplevels/bottom_panel_screen0/  (usually the default name for the bottom panel)
+
* ''/apps/panel/toplevels/bottom_panel_screen0/'' (usually the default name for the bottom panel)
* /apps/panel/toplevels/panel_0/  (usually the default name for the first additional panel)
+
* ''/apps/panel/toplevels/panel_0/'' (usually the default name for the first additional panel)
  
'''Note:''' the key panel_amination_speed is deprecated, use: animation_speed.
+
{Note|The key {{ic|panel_amination_speed}} is deprecated, use: {{ic|animation_speed}}.}}
  
===GNOME Menu Tips===
+
=== GNOME menu tips ===
====Speed Tweak====
+
You can remove the delay in GNOME menus by running this command:
+
echo "gtk-menu-popup-delay = 0" >> ~/.gtkrc-2.0
+
  
Or just add "<code>gtk-menu-popup-delay = 0</code>" to .gtkrc-2.0
+
==== Speed tweak ====
  
However, this setting is reported to crash banshee, and possibly other programs.
+
You can remove the delay in GNOME menus by appending "{{ic|1=gtk-menu-popup-delay = 0}}" to {{ic|~/.gtkrc-2.0}}.
  
====Menu Editing====
+
However, this setting is reported to crash Banshee, and possibly other programs.
Most Gnome users complain about the menu. Changing menu entries system-wide or for one or several users alone is poorly documented.
+
  
=====User menus=====
+
==== Menu editing ====
Older versions of Gnome (i.e. 2.22 or earlier) have a menu editor in which you can de-select menu entires, but not add new menu entries. Right-click on the menu panel and select Edit Menus. Unchecking the box next to a entry will prevent it from displaying.
+
  
To add new menu entries, create a .desktop file in the $XDG_DATA_HOME/applications directory (most likely $HOME/.local/share). A sample .desktop file can be seen below, or take a look at [http://library.gnome.org/admin/system-admin-guide/stable/menustructure-desktopentry.html.en the Gnome documentation].
+
Most GNOME users complain about the menu. Changing menu entries system-wide or for one or several users alone is poorly documented.
  
Or install Alacarte, which makes it easy to create, change and remove menu entries with a GUI. Do this with:
+
===== User menus =====
# pacman -S alacarte
+
  
=====Group menus, System menus=====
+
Older versions of GNOME (i.e. 2.22 or earlier) have a menu editor in which you can de-select menu entires, but not add new menu entries. Right-click on the menu panel and select Edit Menus. Unchecking the box next to a entry will prevent it from displaying.
You will find common gnome menu entries as 'appname.desktop' objects inside one of the $XDG_DATA_DIRS/applications directories (most likely /usr/share/applications). To add new menu items for all users, create an 'appname.desktop' file in one of those directories.
+
 
 +
To add new menu entries, create a .desktop file in the $XDG_DATA_HOME/applications directory (most likely {{ic|$HOME/.local/share}}). A sample .desktop file can be seen below, or take a look at [http://library.gnome.org/admin/system-admin-guide/stable/menustructure-desktopentry.html.en the GNOME documentation].
 +
 
 +
Or install [https://www.archlinux.org/packages/?sort=&q=alacarte&maintainer=&last_update=&flagged=&limit=50 Alacarte], which makes it easy to create, change and remove menu entries with a GUI.
 +
 
 +
===== Group menus, System menus =====
 +
 
 +
You will find common GNOME menu entries as 'appname.desktop' objects inside one of the {{ic|$XDG_DATA_DIRS/applications}} directories (most likely {{ic|/usr/share/applications}}). To add new menu items for all users, create an 'appname.desktop' file in one of those directories.
 
* Edit one of them to fit your needs for a new application, then save it.
 
* Edit one of them to fit your needs for a new application, then save it.
 
* Save it as a menu entry for all users <br> Most often, you will set this files permissions to 644 (root: rw group: r others: r), so all users can see it.
 
* Save it as a menu entry for all users <br> Most often, you will set this files permissions to 644 (root: rw group: r others: r), so all users can see it.
Line 239: Line 271:
 
Here is an example how a Scite menu entry definition file could look:
 
Here is an example how a Scite menu entry definition file could look:
  
<pre>
+
{{bc|1=
 
[Desktop Entry]
 
[Desktop Entry]
 
Encoding=UTF-8
 
Encoding=UTF-8
Line 250: Line 282:
 
Categories=GNOME;Application;Development;
 
Categories=GNOME;Application;Development;
 
StartupNotify=true
 
StartupNotify=true
</pre>
+
}}
  
====Change the Gnome Foot Icon to an Arch Icon====
+
==== Change the GNOME foot icon to an Arch icon ====
{{Note|Thanks to arkham who posted this method in [[http://bbs.archlinux.org/viewtopic.php?id=74881 this forum post]] which I have typed up here.}}
+
  
*Download [[http://img23.imageshack.us/img23/9679/starthere.png this Arch icon]] (filename is {{Filename|starthere.png}})
+
{{Note|1=Thanks to arkham who posted this method in [https://bbs.archlinux.org/viewtopic.php?id=74881 this forum post].}}
*Alternatively get the artwork package using "pacman -S archlinux-artwork", this puts all artwork in the /usr/share/archlinux directory, and resize your desired logo to 24x24px
+
 
*Figure out which icon set you're using (right-click desktop>Change Background Image>Theme>Customize>Icon). For example, Crux, *GNOME, High Contrast, High Contrast Inverse, Mist, etc.)
+
* Download [http://img23.imageshack.us/img23/9679/starthere.png this Arch icon] (filename is {{ic|starthere.png}})
*Now make a backup of your current gnome icon in the correct directory.  In the example below, I'm using the GNOME icons but adjust the directory structure accordingly for your icon set:
+
* Alternatively get the artwork package by installing {{AUR|archlinux-artwork}}, this puts all artwork in the {{ic|/usr/share/archlinux}} directory, and resize your desired logo to 24x24px
 +
* Figure out which icon set you are using (right-click desktop > ''Change Background Image > Theme > Customize > Icon''). For example, Crux, *GNOME, High Contrast, High Contrast Inverse, Mist, etc.)
 +
* Now make a backup of your current GNOME icon in the correct directory.  In the example below, I am using the GNOME icons but adjust the directory structure accordingly for your icon set:
 
  # mv /usr/share/icons/gnome/24x24/places/start-here.png /usr/share/icons/gnome/24x24/places/start-here.png-virgin
 
  # mv /usr/share/icons/gnome/24x24/places/start-here.png /usr/share/icons/gnome/24x24/places/start-here.png-virgin
*Copy {{Filename|starthere.png}} you just downloaded to the same directory renaming it start-here.png
+
* Copy {{ic|starthere.png}} you just downloaded to the same directory renaming it start-here.png
 
  # cp /path/to/starthere.png /usr/share/icons/gnome/24x24/places/start-here.png
 
  # cp /path/to/starthere.png /usr/share/icons/gnome/24x24/places/start-here.png
*Restart your gnome-panels and the new Arch logo should be displayed
+
* Restart your gnome-panels and the new Arch logo should be displayed
 
  $ pkill gnome-panel
 
  $ pkill gnome-panel
'''Note: '''To get this to work (gnome 2.28) I had to delete the icon-theme.cache file in /usr/share/icons/gnome
 
  
====Change the Gnome Foot Icon to an Arch Icon (without root access)====
+
==== Change the GNOME foot icon to an Arch icon (without root access) ====
*Figure out which icon set you're using (right-click desktop>Change Background Image>Theme>Customize>Icon). For example, Crux, *GNOME, High Contrast, High Contrast Inverse, Mist, etc.)
+
 
*Duplicate that icon set's directory structure for 24x24/places in your home directory under .icons
+
* Figure out which icon set you're using (right-click on desktop > ''Change Background Image > Theme > Customize > Icon''). For example, Crux, *GNOME, High Contrast, High Contrast Inverse, Mist, etc.)
  $ mkdir -p ~/.icons/<your-icon-set>/24x24/places
+
* Duplicate that icon set's directory structure for {{ic|24x24/places}} in your home directory under .icons
*Download [http://img23.imageshack.us/img23/9679/starthere.png this Arch icon] into that directory as 'start-here.png'
+
  $ mkdir -p ~/.icons/''your_icon_set''/24x24/places
  $ wget -O ~/.icons/<your-icon-set>/24x24/places/start-here.png http://img23.imageshack.us/img23/9679/starthere.png
+
* Download [http://img23.imageshack.us/img23/9679/starthere.png this Arch icon] into that directory as 'start-here.png'
*Alternatively get the artwork package using "pacman -S archlinux-artwork", this puts all artwork in the /usr/share/archlinux directory, and resize your desired logo to 24x24px and copy it into that directory as 'start-here.png'
+
  $ wget -O ~/.icons/''your_icon_set''/24x24/places/start-here.png http://img23.imageshack.us/img23/9679/starthere.png
*Restart your gnome-panels and the new Arch logo should be displayed
+
* Alternatively get the artwork package using {{AUR|archlinux-artwork}} package, this puts all artwork in the /usr/share/archlinux directory, and resize your desired logo to 24x24px and copy it into that directory as 'start-here.png'
 +
* Restart your gnome-panels and the new Arch logo should be displayed
 
  $ pkill gnome-panel
 
  $ pkill gnome-panel
'''Note: '''To get this to work (gnome 2.28) I had to delete the icon-theme.cache file in /usr/share/icons/gnome
 
  
====Custom Icon using gconf-editor====
+
==== Custom icon using gconf-editor ====
  
# Open the configuration editor in gnome (it should be in System Tools of your main menu) or run <code>gconf-editor</code>
+
# Open the configuration editor in GNOME (it should be in System Tools of your main menu) or run {{ic|gconf-editor}}
# In the configuration editor go to apps > panel > objects > find the object for your menu (an easy way to spot the correct object is that it will have "Main Menu" in the tool tip section).
+
# In the configuration editor go to ''apps > panel > objects'' > find the object for your menu (an easy way to spot the correct object is that it will have "Main Menu" in the tool tip section).
 
# Set the path to your icon in the "Custom_Icon" field.
 
# Set the path to your icon in the "Custom_Icon" field.
 
# Check "Use_Custom_Icon" a little ways down.
 
# Check "Use_Custom_Icon" a little ways down.
Line 286: Line 318:
 
  $ killall gnome-panel
 
  $ killall gnome-panel
  
====Removing default icons from desktop====
+
==== Removing default icons from desktop ====
 +
 
 
I like to keep my desktop clean, and perhaps someone else too. So here is how to remove home folder, computer and trash from desktop:
 
I like to keep my desktop clean, and perhaps someone else too. So here is how to remove home folder, computer and trash from desktop:
  
 
# Open terminal
 
# Open terminal
 
# On terminal type: gconf-editor
 
# On terminal type: gconf-editor
# Configuration Editor opens. From there navigate to: apps --> nautilus --> desktop
+
# Configuration Editor opens. From there navigate to: ''apps > nautilus > desktop''
 
# Untick all the icons you dont want to see
 
# Untick all the icons you dont want to see
 
# You are done, the icons should disappear immediately
 
# You are done, the icons should disappear immediately
  
 
=== Disabling scroll in taskbar ===
 
=== Disabling scroll in taskbar ===
For years there is "bug" in Gnome taskbar: the mouse scroll switches the windows. The annoying feature if you have a good mice turns to be a real pain if you have the touchpad. It is impossible to scroll precisely using touchpad, so if you accidentally touch it when your mouse is on the taskbar, then all the windows will flash/switch wildly. There is no setting in gconf/preferences, that can disable this functionality. This is true for KDE 3, I do not know if problem persist in KDE 4. The solution was to install xfce4-panel, which hasn't scrolling at all and looks like default gnome panel. The bug is better described here [https://bugs.launchpad.net/ubuntu/+source/gnome-panel/+bug/39328].
 
  
This bug will be probably never fixed, but we have ABS, so we can build custom software. Install [[ABS]] (+70Mb), then
+
For years there is a "bug" in the GNOME taskbar: the mouse scroll switches the windows. The annoying feature if you have a good mice turns to be a real pain if you have the touchpad. It is impossible to scroll precisely using touchpad, so if you accidentally touch it when your mouse is on the taskbar, then all the windows will flash/switch wildly. There is no setting in gconf/preferences, that can disable this functionality. This is true for [[KDE]] 3, I do not know if problem persist in KDE 4. The solution was to install xfce4-panel, which hasn't scrolling at all and looks like default GNOME panel. The bug is better described here [https://bugs.launchpad.net/ubuntu/+source/gnome-panel/+bug/39328].
  
cp -r /var/abs/extra/libwnck /home/{your name}/Desktop/somewhere
+
This bug will be probably never fixed, but we have the [[Arch Build System]], so we can build custom software. Install {{Pkg|abs}} (+70Mb), then
  
Navigate to that dir, then
+
cp -r /var/abs/extra/libwnck ~/Desktop/somewhere
 +
 
 +
Navigate to that directory, then
 
  makepkg --nobuild
 
  makepkg --nobuild
  
This will download and extract the sources. Go to src/libwnck-{version}/libwnck. Edit tasklist.c, search for "scroll-event". You will see somethign like
+
This will download and extract the sources. Go to {{ic|src/libwnck-{version}/libwnck}}. Edit {{ic|tasklist.c}}, search for "scroll-event". You will see somethign like
  
 
  g_signal_connect(obj, "scroll-event", G_CALLBACK(wnck_tasklist_scroll_cb), NULL);
 
  g_signal_connect(obj, "scroll-event", G_CALLBACK(wnck_tasklist_scroll_cb), NULL);
  
This line enables scroll-event handler, comment the line out (place /* before and */ after the line). Now go back to /home/{username}/Desktop/somewhere and
+
This line enables scroll-event handler, comment the line out (place /* before and */ after the line). Now go back to {{ic|~/Desktop/somewhere}} and
 
  makepkg --noextract --syncdeps
 
  makepkg --noextract --syncdeps
  
You will need [[sudo]] to be able to install missing dependencies (intltool), but you can always 'pacman -S' them apart if you do not want --syncdeps automatically. The --noextract option tells makepkg to not extract sources and use existing src/
+
You will need [[sudo]] to be able to install missing dependencies (intltool), but you can always install them separately if you do not want --syncdeps automatically. The --noextract option tells makepkg to not extract sources and use existing src/
  
 
  pacman -U libwnck-{version}.pkg.tar.gz
 
  pacman -U libwnck-{version}.pkg.tar.gz
  
Then logout/login, enjoy. Delete dir with the sources from you desktop, you may also uninstall abs if you want. Next step will be to add gconf option, but I will leave this for Gnome gurus. I just do not need this "feature", not even if I use the mouse (alt+tab is better anyway).
+
Then log out, log back in, and enjoy. Delete dir with the sources from you desktop, you may also uninstall abs if you want. Next step will be to add gconf option, but I will leave this for GNOME gurus. I just do not need this "feature", not even if I use the mouse ({{ic|Alt+Tab}} is better anyway).
 +
 
 +
=== Custom transitioning background===
  
===Custom transitioning background===
 
 
This will create a transitioning background similiar to the "cosmos" background found in the [[GNOME#Installation|gnome-backgrounds]] package. There are three ways to do this.
 
This will create a transitioning background similiar to the "cosmos" background found in the [[GNOME#Installation|gnome-backgrounds]] package. There are three ways to do this.
 
{{Note|The image filenames must not have spaces in them.}}
 
{{Note|The image filenames must not have spaces in them.}}
====Manual====
+
 
You can create an XML file similiar to the one created by gnome-backgrounds in "/usr/share/backgrounds/cosmos/".
+
==== Manual ====
<pre>
+
 
 +
You can create an XML file similiar to the one created by {{pkg|gnome-backgrounds}} in {{ic|/usr/share/backgrounds/cosmos/}}.
 +
{{bc|
 
<background>
 
<background>
 
   <starttime>
 
   <starttime>
Line 330: Line 367:
 
     <second>01</second>
 
     <second>01</second>
 
   </starttime>
 
   </starttime>
<!-- The first section set an arbitrary start time. -->
+
<nowiki><!-- The first section set an arbitrary start time. --></nowiki>
 
   <static>
 
   <static>
 
     <duration>1795.0</duration>
 
     <duration>1795.0</duration>
Line 350: Line 387:
 
   </transition>
 
   </transition>
 
</background>
 
</background>
</pre>
+
}}
 +
 
 +
Note that the <duration> tag sets each image as the background for 1795 seconds, or 29 minutes and 55 seconds, and the <transition> then takes 5 seconds. You can add any number of images as long as the last one transitions back to the first (if you want a full loop). Once completed, the XML file can be added to GNOME under ''System > Preferences > Appearance > Background tab > Add''.
 +
 
 +
==== Automatic ====
  
Note that the <duration> tag sets each image as the background for 1795 seconds, or 29 minutes and 55 seconds, and the <transition> then takes 5 seconds. You can add any number of images as long as the last one transitions back to the first (if you want a full loop). Once completed, the XML file can be added to GNOME under System > Preferences > Appearance > Background tab > Add.
 
====Automatic====
 
 
There is also a script which automates this process:
 
There is also a script which automates this process:
<pre>
+
{{bc|1=
 
#!/bin/sh
 
#!/bin/sh
#This script creates xml files that can act as dynamic wallpapers for Gnome by referring to multiple wallpapers
+
#This script creates XML files that can act as dynamic wallpapers for GNOME by referring to multiple wallpapers
 
#Coded by David J Krajnik
 
#Coded by David J Krajnik
  
 
if [ "$*" = "" ]; then
 
if [ "$*" = "" ]; then
   echo "This script creates xml files that can act as dynamic backgrounds for Gnome by referring to multiple wallpapers";
+
   echo "This script creates XML files that can act as dynamic backgrounds for GNOME by referring to multiple wallpapers"
   echo "Usage: mkwlppr target-file.xml [duration] pic1 pic2 [pic3 .. picN]";
+
   echo "Usage: mkwlppr target-file.xml [duration] pic1 pic2 [pic3 .. picN]"
 
else
 
else
   files=$*;
+
   files=$*
 
   #Grab the name of the target xml file
 
   #Grab the name of the target xml file
   xmlfile=`echo $files | cut -d " " -f 1`;
+
   xmlfile=$(echo $files | cut -d " " -f 1)
 
   #remove the first item from $files
 
   #remove the first item from $files
   files=`echo $files | sed 's/^\<[^ ]*\>//'`;
+
   files=$(echo $files | sed 's/^\<[^ ]*\>//')
   if [ "`echo $xmlfile | grep '\.xml$'`" = "" ]; then
+
   if [ "$(echo $xmlfile | grep '\.xml$')" = "" ]; then
     echo "Your target file must be an XML file";
+
     echo "Your target file must be an XML file"
 
   else
 
   else
 
     inputIsValid="true";
 
     inputIsValid="true";
     firstItem=`echo $files | cut -d " " -f 1`;
+
     firstItem=$(echo $files | cut -d " " -f 1)
 
     duration="1795.0";#set the default duration
 
     duration="1795.0";#set the default duration
     if [ "`echo $firstItem | grep '^[0-9]\+\.[0-9]\+$'`" != "" ]; then
+
     if [ "$(echo $firstItem | grep '^[0-9]\+\.[0-9]\+$')" != "" ]; then
       echo "The duration must be an integer";
+
       echo "The duration must be an integer"
       files=`echo $files | sed 's/^\<[^ ]*\>//'`;
+
       files=$(echo $files | sed 's/^\<[^ ]*\>//')
       inputIsValid="";
+
       inputIsValid=""
     elif [ "`echo $firstItem | grep '^[0-9]\+$'`" != "" ]; then
+
     elif [ "$(echo $firstItem | grep '^[0-9]\+$')" != "" ]; then
 
       #If the item is a number, then use it as the duration for each wallpaper image
 
       #If the item is a number, then use it as the duration for each wallpaper image
       duration="`expr $firstItem - 5`.0";
+
       duration="$(expr $firstItem - 5).0"
 
       #remove the duration from the list of files
 
       #remove the duration from the list of files
       files=`echo $files | sed 's/^\<[^ ]*\>//'`;
+
       files=$(echo $files | sed 's/^\<[^ ]*\>//')
 
     fi
 
     fi
 
     if [ "$files" = "" ]; then
 
     if [ "$files" = "" ]; then
       echo "You must enter image files to associate with the XML file";
+
       echo "You must enter image files to associate with the XML file"
 
     else
 
     else
 
       for file in $files
 
       for file in $files
 
       do
 
       do
 
         if [ ! -f $file ]; then
 
         if [ ! -f $file ]; then
  echo "\"$file\" does not exist";
+
  echo "\"$file\" does not exist"
  inputIsValid="";
+
        elif [ "`echo $file | sed 's/^.*\.\(jpg\|jpeg\|bmp\|png\|gif\|tif\|tiff\|jif\|jfif\|jp2\|jpx\|j2k\|j2c\)$//'`" != "" ]; then
+
  echo "\"$file\" is not an image file";
+
 
  inputIsValid="";
 
  inputIsValid="";
 +
        elif [ "$(echo $file | sed 's/^.*\.\(jpg\|jpeg\|bmp\|png\|gif\|tif\|tiff\|jif\|jfif\|jp2\|jpx\|j2k\|j2c\)$//')" != "" ]; then
 +
  echo "\"$file\" is not an image file"
 +
  inputIsValid=""
 
fi
 
fi
 
       done
 
       done
 
       if [ $inputIsValid ]; then
 
       if [ $inputIsValid ]; then
         currDir=`pwd`;
+
         currDir=$(pwd)
 
         echo "<background>" >> $xmlfile
 
         echo "<background>" >> $xmlfile
 
         echo "  <starttime>\n    <year>2009</year>\n    <month>08</month>\n    <day>04</day>" >> $xmlfile;
 
         echo "  <starttime>\n    <year>2009</year>\n    <month>08</month>\n    <day>04</day>" >> $xmlfile;
 
         echo "    <hour>00</hour>\n    <minute>00</minute>\n    <second>00</second>\n  </starttime>" >> $xmlfile;
 
         echo "    <hour>00</hour>\n    <minute>00</minute>\n    <second>00</second>\n  </starttime>" >> $xmlfile;
         echo "  <!-- This animation will start at midnight. -->" >> $xmlfile;
+
         echo "  <!-- This animation will start at midnight. -->" >> $xmlfile
         firstFile=`echo $files | cut -d " " -f 1`;#grab the first item
+
         firstFile=$(echo $files | cut -d " " -f 1) # grab the first item
         if [ "`echo $firstFile | sed 's/\(.\).*/\1/'`" != "/" ]; then
+
         if [ "$(echo $firstFile | sed 's/\(.\).*/\1/')" != "/" ]; then
 
           #If the first character in the filename is not '/', then it is a relative path and must have the current directory's path appended
 
           #If the first character in the filename is not '/', then it is a relative path and must have the current directory's path appended
           firstFile="$currDir/$firstFile";
+
           firstFile="$currDir/$firstFile"
 
         fi
 
         fi
         firstFile=`echo $firstFile | sed 's/[^/]\+\/\.\.\/\?//g'`;#Remove occurrences of ".." from the filepath
+
         firstFile=$(echo $firstFile | sed 's/[^/]\+\/\.\.\/\?//g');#Remove occurrences of ".." from the filepath
         files=`echo $files | sed 's/^\<[^ ]*\>//'`;#remove the first item
+
         files=$(echo $files | sed 's/^\<[^ ]*\>//') # remove the first item
         prevFile=$firstFile;
+
         prevFile=$firstFile
         currFile="";
+
         currFile=""
 
         #TODO add absolute path to the filenames
 
         #TODO add absolute path to the filenames
 
         #if $currFile =~ "^/.*" then the file needs to path appended
 
         #if $currFile =~ "^/.*" then the file needs to path appended
         echo "  <static>\n    <duration>$duration</duration>\n    <file>$firstFile</file>\n  </static>" >> $xmlfile;
+
         echo "  <static>\n    <duration>$duration</duration>\n    <file>$firstFile</file>\n  </static>" >> $xmlfile
         for currFile in $files
+
         for currFile in $files; do
        do
+
           if [ "$(echo $currFile | sed 's/\(.\).*/\1/')" != "/" ]; then
           if [ "`echo $currFile | sed 's/\(.\).*/\1/'`" != "/" ]; then
+
 
             #If the first character in the filename is not '/', then it is a relative path and must have the current directory's path appended
 
             #If the first character in the filename is not '/', then it is a relative path and must have the current directory's path appended
             currFile="$currDir/$currFile";
+
             currFile="$currDir/$currFile"
 
           fi
 
           fi
           currFile=`echo $currFile | sed 's/[^/]\+\/\.\.\/\?//g'`;#Remove occurrences of ".." from the filepath
+
           currFile=$(echo $currFile | sed 's/[^/]\+\/\.\.\/\?//g') # Remove occurrences of ".." from the filepath
 
           echo "  <transition>\n    <duration>5.0</duration>\n    <from>$prevFile</from>\n    <to>$currFile</to>\n  </transition>" >> $xmlfile;
 
           echo "  <transition>\n    <duration>5.0</duration>\n    <from>$prevFile</from>\n    <to>$currFile</to>\n  </transition>" >> $xmlfile;
 
           echo "  <static>\n    <duration>$duration</duration>\n    <file>$currFile</file>\n  </static>" >> $xmlfile;
 
           echo "  <static>\n    <duration>$duration</duration>\n    <file>$currFile</file>\n  </static>" >> $xmlfile;
           prevFile=$currFile;
+
           prevFile=$currFile
 
         done
 
         done
 
         echo "  <transition>\n    <duration>5.0</duration>\n    <from>$currFile</from>\n    <to>$firstFile</to>\n  </transition>" >> $xmlfile;
 
         echo "  <transition>\n    <duration>5.0</duration>\n    <from>$currFile</from>\n    <to>$firstFile</to>\n  </transition>" >> $xmlfile;
Line 433: Line 471:
 
   fi
 
   fi
 
fi
 
fi
</pre>
+
}}
Copy the code for the script above into a file called mkwlppr (short for "make wallpaper"). Make the script executable by typing:
+
Copy the code for the script above into a file called {{ic|mkwlppr}} (short for "make wallpaper"). Make the script executable by typing:
<pre>sudo chmod 711 mkwlppr</pre>
+
sudo chmod 711 mkwlppr
 
Move the file so that you can run it from any directory by just using its name:  
 
Move the file so that you can run it from any directory by just using its name:  
<pre>sudo mv mkwlppr /bin</pre>
+
sudo mv mkwlppr /usr/local/bin
 
Execute the script; it will tell you what input it requires from you. Use the script with input to create as many wallpaper XML files as you want.
 
Execute the script; it will tell you what input it requires from you. Use the script with input to create as many wallpaper XML files as you want.
  
Notes:
+
{{Note|
 
Since this script is not interactive, you can use Unix's wildcards with it if you want to use all files in a directory and/or if you do not care about the order of the images.
 
Since this script is not interactive, you can use Unix's wildcards with it if you want to use all files in a directory and/or if you do not care about the order of the images.
 
You can specify paths relative to your current directory, and the script will put the files' absolute paths into the XML file for you; so you can create the XML file anywhere you want and move it afterward without rendering it useless.
 
You can specify paths relative to your current directory, and the script will put the files' absolute paths into the XML file for you; so you can create the XML file anywhere you want and move it afterward without rendering it useless.
If you want to run the script inside the /usr/share/backgrounds/ directory, you might have problems with permissions unless you run the command with sudo like this:
+
If you want to run the script inside the {{ic|/usr/share/backgrounds/}} directory, you might have problems with permissions unless you run the command with sudo like this:
<code>sudo mkwlppr -parameters</code>
+
{{ic|sudo mkwlppr -parameters}}
 
If you do not know what duration to specify for the images, simply do not provide a number in the input, and the progam will use the default values of 29 minutes and 55 seconds per image and a 5 second transition.
 
If you do not know what duration to specify for the images, simply do not provide a number in the input, and the progam will use the default values of 29 minutes and 55 seconds per image and a 5 second transition.
 
For more information, please see [http://www.linuxjournal.com/content/create-custom-transitioning-background-your-gnome-228-desktop this page].
 
For more information, please see [http://www.linuxjournal.com/content/create-custom-transitioning-background-your-gnome-228-desktop this page].
 +
}}
  
====GUI====
+
==== GUI ====
If you prefer using a GUI, you can install [http://aur.archlinux.org/packages.php?ID=39935 CreBS] from the AUR, which is a PyGTK app for creating background slideshows for GNOME.
+
  
===Change default size of gnome-terminal===
+
If you prefer using a GUI, you can use [[Wallpapoz]] or install {{AUR|crebs}} from the AUR, which are apps for creating background slideshows for GNOME.
====Method 1====
+
The terminal emulator gnome-terminal does neither allow the set a default size nor does remember the last size. In order to set the default size consider the following steps:
+
# Change the following line in {{Filename|/usr/share/vte/termcap/xterm}} accordingly:<br/>{{Codeline|:co#80:it#8:li#24:}}<br/>Here 80 stands for the number of '''co'''lumns (i.e. width in characters) and 24 for the number of '''li'''nes (i.e. height in characters).
+
# To prevent pacman from overwriting this file when upgrading the package <code>vte</code>, make enter the following in {{Filename|/etc/pacman.conf}}<br/>{{Codeline|NoUpgrade &#61; usr/share/vte/termcap/xterm}}
+
# Terminate all gnome-terminal processes to let the changes take effect.
+
  
====Method 2====
+
=== Change default size of gnome-terminal ===
Another option is to simply use the --geometry switch when starting gnome-terminal (can be done via a right-click/properties on the launcher, then enter the following in the "Command" field: gnome-terminal --geometry 105x25+100+20).
+
  
===Install a cursor theme===
+
==== Method 1 ====
The default cursor theme of Xorg looks pretty outdated. See [[X11 Cursors]] for easy instructions on installing new cursor themes. Then go to to the desktop -> right click -> Change background -> Theme tab -> customise -> cursor to apply them.
+
  
==gnome-screensaver==
+
The terminal emulator {{Pkg|gnome-terminal}} does neither allow the set a default size nor does remember the last size. In order to set the default size consider the following steps:
===Leave message feature in gnome screensaver===
+
# Change the following line in {{ic|/usr/share/vte/termcap/xterm}} accordingly:
This is a cool feature provided by gnome-screensaver 2.20, somebody can leave a message for you when you are not at your desk.
+
:co#80:it#8:li#24:
 +
Here 80 stands for the number of '''co'''lumns (i.e. width in characters) and 24 for the number of '''li'''nes (i.e. height in characters).
 +
'''2.''' To prevent pacman from overwriting this file when upgrading the package {{ic|vte}}, make enter the following in {{ic|/etc/pacman.conf}}:
 +
NoUpgrade = usr/share/vte/termcap/xterm
 +
'''3.''' Terminate all gnome-terminal processes to let the changes take effect.
 +
 
 +
==== Method 2 ====
 +
 
 +
Another option is to simply use the --geometry switch when starting {{pkg|gnome-terminal}} (can be done via a right-click/properties on the launcher, then enter the following in the "Command" field: gnome-terminal --geometry 105x25+100+20).
 +
 
 +
=== Install a cursor theme ===
 +
 
 +
The default cursor theme of Xorg looks pretty outdated. See [[X11 Cursors]] for easy instructions on installing new cursor themes. Then go to to the ''desktop > right click > Change background > Theme tab > customise > cursor'' to apply them.
 +
 
 +
=== Autostart programs ===
 +
 
 +
You can place {{ic|.desktop}} files in the {{ic|~/.config/autostart}} directory (which you might need to create) to have them started automatically after starting a GNOME session.
 +
 
 +
== gnome-screensaver ==
 +
 
 +
=== Leave message feature in gnome-screensaver ===
 +
 
 +
This is a cool feature provided by {{Pkg|gnome-screensaver}} 2.20, somebody can leave a message for you when you are not at your desk.
 
Please install notification-daemon to make this work.
 
Please install notification-daemon to make this work.
  
===Change Gnome Screensaver background===
+
=== Change gnome-screensaver background ===
There isn't any option to change the screensaver's default background. The only way is to:
+
    su
+
    cd /usr/share/pixmaps/backgrounds/gnome
+
    rm background-default.jpg
+
    ln -s /home/user/my_background.jpg background-default.jpg
+
  
{{Note| You can save your wallpaper to a ''static'' path like /home/user/wall.jpg and [[Gnome_2.28_Changes#Changing_Background_Image| configure gdm]], gnome-desktop and gnome-screensaver to point at it. This way you can have the same wallpaper on each of them. }}
+
There is no option to change the screensaver's default background. The only way is do as root:
  
== Toolbar style in GTK applications ==
+
# cd /usr/share/pixmaps/backgrounds/gnome
The default setting in GNOME 2.30 displays text next to icons in the toolbar of GTK applications. This means labels will only appear near buttons that the developer marks as "important". To have labels always show under the buttons in the toolbar:
+
# rm background-default.jpg
 +
# ln -s /home/user/my_background.jpg background-default.jpg
 +
 
 +
{{Note|You can save your wallpaper to a ''static'' path like {{ic|/home/user/wall.jpg}} and configure gdm, gnome-desktop and gnome-screensaver to point at it. This way you can have the same wallpaper on each of them. }}
 +
 
 +
== Toolbar style in GTK+ applications ==
 +
 
 +
The default setting in GNOME 2.30 displays text next to icons in the toolbar of GTK+ applications. This means labels will only appear near buttons that the developer marks as "important". To have labels always show under the buttons in the toolbar:
 
  gconftool-2 --set --type string  /desktop/gnome/interface/toolbar_style both
 
  gconftool-2 --set --type string  /desktop/gnome/interface/toolbar_style both
 
Possible values are:
 
Possible values are:
Line 488: Line 543:
  
 
== Missing icons in System Menu ==
 
== Missing icons in System Menu ==
The default setting under 2.30 does not display the usual icons under the System menu. In the 2.28 version, they could be enabled from '''System >> Preferences >> Appearance >> Interface'''. This case is not possible anymore. Now this can be enabled from:
+
 
 +
The default setting under 2.30 does not display the usual icons under the System menu. In the 2.28 version, they could be enabled from ''System > Preferences > Appearance > Interface''. This case is not possible anymore. Now this can be enabled from:
 
  gconftool-2 --set --type boolean  /desktop/gnome/interface/menus_have_icons true
 
  gconftool-2 --set --type boolean  /desktop/gnome/interface/menus_have_icons true
  
 
== Nautilus location entry ==
 
== Nautilus location entry ==
Since GNOME 2.30, nautilus doesn't have an icon to switch the location type between using a text input entry and of a pathbar. Since pathbar is enabled by default, to change to text input entry do:
+
 
 +
Since GNOME 2.30, Nautilus does not have an icon to switch the location type between using a text input entry and of a pathbar. Since pathbar is enabled by default, to change to text input entry do:
 
  gconftool-2 --set --type boolean /apps/nautilus/preferences/always_use_location_entry true
 
  gconftool-2 --set --type boolean /apps/nautilus/preferences/always_use_location_entry true
  
==See also==
+
== See also ==
*[[GNOME]]
+
 
 +
* [[GNOME]]

Revision as of 14:13, 10 December 2013

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:GNOME tips#)

Merge-arrows-2.pngThis article or section is a candidate for merging with GNOME.Merge-arrows-2.png

Notes: please use the second argument of the template to provide more detailed indications. (Discuss in Talk:GNOME tips#)

Configuration tips

Add/edit GDM eessions

Each session is a .desktop file located at /usr/share/xsessions/.

To add a new session:

1. Copy an existing .desktop file to use as a template for a new session:

$ cd /usr/share/xsessions
# cp gnome.desktop other.desktop

2. Modify the template *.desktop file to open the required window manager:

# nano other.desktop

Alternatively, you can open the new session in KDM which will create the *.desktop file. Then return to using GDM and the new session will be available.

GDM appearance

You can use gdm3setupAUR from the AUR.

GDM wallpaper

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: these scripts were recovered from [1] and may require testing. (Discuss in Talk:GNOME tips#)

These scripts assist in setting up the GDM wallpaper and are an addition to GNOME#Login screen. Place these files in a suitable location and make them executable. An example of running these scripts appears below.

/usr/local/bin/prep-gdm-vars
#  This script must be run using '.' or 'source'
$(dbus-launch | sed "s/^/export /")
/usr/local/bin/show-avail-gdm-bkgd
#!/bin/bash
#  Usage:  show-avail-gdm-bkgd  [folder]
#  Specify any folder within /usr/share/backgrounds.
#  If you omit the folder, you'll be shown available choices.
file_part="/usr/share/backgrounds/"
if ! [ $1 ]; then
  echo -en \\n  Please specify one of these directories:\\n\\n\\040
  ls $file_part; echo; exit 1; fi
ls ${file_part}/$1
/usr/local/bin/revise-gdm-bkgd
#!/bin/bash
#  Usage:  revise-gdm-bkgd gnome/filename.jpg
#  Specify any file path within /usr/share/backgrounds.
org_part="org.gnome.desktop.background picture-uri"
file_full="/usr/share/backgrounds/$1"
# Trap when argument is: missing, a mere directory, a bad filename.
if ( ! [ $1 ] || [ -d $file_full ] ); then
  echo -en \\n Specify a file.  Use this example:
  echo -e \ \ revise-gdm-bkgd \ gnome/TwoWings.jpg\\n; exit 1; fi
if ! [ -r $file_full ]; then
  echo -e \\n Specifed file does not exist or is not readable.\\n; exit 2; fi
GSETTINGS_BACKEND=dconf gsettings set $org_part "file://${file_full}"

Here is a session showing how a user might change the GDM wallpaper using the scripts listed above. It starts with a normal user's terminal and assumes he is able to open a bash session as root. The root user then opens a session as "gdm" and changes the wallpaper.

# xhost +
access control disabled, clients can connect from any host
# su - gdm -s /bin/bash

-bash-4.2$ . prep-gdm-vars   #  Must use . to execute this script!
access control disabled, clients can connect from any host

-bash-4.2$ show-avail-gdm-bkgd gnome
Aqua.jpg            FreshFlower.jpg  Spaceflare-nova.jpg       Terraform-green.jpg   YellowFlower.jpg
Blinds.jpg          Garden.jpg       Spaceflare-supernova.jpg  Terraform-orange.jpg
BlueMarbleWest.jpg  GreenMeadow.jpg  SundownDunes.jpg          TwoWings.jpg
FootFall.png        Spaceflare.jpg   Terraform-blue.jpg        Wood.jpg

-bash-4.2$ revise-gdm-bkgd gnome/GreenMeadow.jpg

-bash-4.2$ logout

# logout

Script revise-gdm-bkgd may also be used to change your normal user background from the command prompt. Admittedly, the script name does not quite fit when used for that purpose.

Default applications

You may want to configure system-wide default applications and file associations. This is extremely useful when you have some KDE applications installed, but still prefer a GNOME ones to be launched by default.

To do that you can install gnome-defaults-listAUR from the AUR. It will place your configuration file at /etc/gnome/defaults.list.

If you want to do everything manually, create /usr/share/applications/defaults.list with the following format:

[Default Applications]
 application/pdf=evince.desktop
 image/jpeg=eog.desktop
 ...

Fonts seem skewed

You can alter the DPI of your fonts in GNOME with right-click on the desktop > Change desktop background > Fonts > Details > Resolution.

Change the default background color, opacity, etc.

The default background color is green. You might want to change it if you're using a transparent PNG as background.

$ sudo gconf-editor

Go to File > New Defaults Window and edit the keys

/desktop/gnome/background/primary_color

and

/desktop/gnome/background/secondary_color

You can also find keys for opacity, shading style, etc.

Disable confirmation window when closing gnome-terminal

The terminal always prompts a confirmation window when trying to close the window while one is logged in as root. To avoid this confirmation start gconf-editor and disable confirmation_window_close variable in /apps/gnome-terminal/global. Please note that although this setting is not set via dconf-editor it also works in the GNOME Shell.

Start application with another language

If you want to start an application with another language as the system's default one, you can change the application's desktop file in ~/.local/share/applications'' for yourself or in /usr/share/applications for everyone like shown below.

Find the desktop file of the application which you want to start with another language. Go to theExec row: (here for Empathy):

Exec=empathy %f

and change it to:

Exec=env LANG=de_DE.UTF-8 empathy %f

From now on that application will start with the chosen language.

Miscellaneous tips

Screen lock

  1. Make sure that dbus is running (probably a good idea to add it to the daemons array in /etc/rc.conf).
  2. Install xscreensaver.
  3. Go to Desktop > Preferences > Screensaver
  4. Enable one or more screensavers
  5. Lock Screen will now start your screensaver and require your password to stop it.

or you can install gnome-screensaver.

Also you can find here how to replace gnome-screensaver with xscreensaver.

Nautilus tips

Get a certain path in spatial view? Just press Ctrl+l.

Change browser mode (spatial view)

  1. Start gconf-editor
  2. Browse to apps/nautilus/preferences
  3. Change the value of "always_use_browser" (it's a yes/no value and should be visible as a checkbox or say "false", for the later change the value to "true")

Or you can do this through the preferences:

  1. In a Nautilus window go to Edit > Preferences
  2. Change to the Behaviour tab
  3. Check (or uncheck) Always Open in Browser Windows

Music information columns in list view (bit rate, etc.)

Nautilus lacks the ability to display metadata for music files in list view mode. A Python script was written to add columns for:

  • Artist
  • Album
  • Track Title
  • Bit Rate

First, install the mutagen and python-nautilus-gitAUR.

Now, create a directory called python-extensions in ~/.nautilus. Place the following script, named bsc.py, in this newly created folder. You may download the script here: [bsc.py] (please drop --stefanwilkens a line if this goes down)

Mirror: [bsc.py]

bas-v2.py adds fixes and more media support (link at bottom of 4th post).

Mirror: bsc-v2.py

Restart nautilus. You can now configure this new functionallity in Edit -> Preferences -> List Columns

Thumbnails

You will need a tool for creating thumbnails, such as ffmpegthumbnailer. Make sure the necessary codecs are installed.

In a command line, enter these two lines:

gconftool-2 -s "/desktop/gnome/thumbnailers/video@mpeg/enable" -t boolean "true"
gconftool-2 -s "/desktop/gnome/thumbnailers/video@mpeg/command" -t string "/usr/bin/ffmpegthumbnailer -s %s -i %i -o %o -c png -f -t 10"

You can replace 'video@mpeg' in that line with any filetype that ffmpeg can open - just right-click > Properties on a file in Nautilus and look at the bit in brackets in the 'Type:' field (don't forget to replace the forward slash with an @ symbol). Some common filetypes are video@mpeg, video@x-matroska, video@x-ms-wmv, video@x-flv, video@x-msvideo, video@mp4; which are usually .mpg, .mkv, .wmv, .flv, .avi, .mp4 respectively.

Turn off Authentication needed to mount internal drive in Nautilus

In Ubuntu and other distros you are allowed to mount internal drives by clicking on them without the need for entering a password. To get this behaviour in stock GNOME, just create the following JavaScript rule:

/etc/polkit-1/rules.d/10-auth.rules
polkit.addRule(function(action, subject) {
               if (action.id="org.freedesktop.udisks2.filesystem-mount-system" && subject.isInGroup("storage")) {
                       return polkit.Result.YES;
                   }
               }
           );

Note: this adds very broad permissions. To only add the same permissions for internal filesystems as for external filesystems, use https://gist.github.com/grawity/3886114#file-udisks2-allow-mount-internal-js

Older Polkit versions will require the following file in PolicyKit Local Authority instead:

/etc/polkit-1/localauthority/50-local.d/50-filesystem-mount-system-internal.pkla
[Mount a system-internal device]
Identity=*
Action=org.freedesktop.udisks2.filesystem-mount-system
ResultActive=yes

Speed up panel autohide

panel_show_delay / panel_hide_delay

If you find that your panels are taking too long to appear/disappear when using the Panel Autohide feature, try this;

  1. Start gconf-editor
  2. Browse to /apps/panel/global
  3. Set panel_hide_delay and panel_show_delay to more sensible (integer) values. Note that these values represent milliseconds!

The default panel_hide_delay of 500 works well in most cases, but the panel_show_delay default of 500 is horribly slow. After experimenting, a panel_show_delay between 100-200 seems much better.

Panel animation_speed

Now that the panel show/hide delay has the panels beginning to appear in a reasonable length of time, why does it take the panel so long to actually pop up? There is one more setting you need to add/change to make the panel behavior crisp. The setting animation_speed: ihis setting can be applied globally or on a per-panel basis just like the panel_show_delay and panel_hide_delay. The official description is:

The speed in which panel animations should occur. Possible values are slow, medium and fast. This key is only relevant if the enable_animations key is true.

To apply globally, just add or change the animation_speed key as a (string) value in:

  • /apps/panel/global

To apply the setting on a per-panel basis, just add/change the key in, for example:

  • /apps/panel/toplevels/bottom_panel_screen0/ (usually the default name for the bottom panel)
  • /apps/panel/toplevels/panel_0/ (usually the default name for the first additional panel)

{Note|The key panel_amination_speed is deprecated, use: animation_speed.}}

GNOME menu tips

Speed tweak

You can remove the delay in GNOME menus by appending "gtk-menu-popup-delay = 0" to ~/.gtkrc-2.0.

However, this setting is reported to crash Banshee, and possibly other programs.

Menu editing

Most GNOME users complain about the menu. Changing menu entries system-wide or for one or several users alone is poorly documented.

User menus

Older versions of GNOME (i.e. 2.22 or earlier) have a menu editor in which you can de-select menu entires, but not add new menu entries. Right-click on the menu panel and select Edit Menus. Unchecking the box next to a entry will prevent it from displaying.

To add new menu entries, create a .desktop file in the $XDG_DATA_HOME/applications directory (most likely $HOME/.local/share). A sample .desktop file can be seen below, or take a look at the GNOME documentation.

Or install Alacarte, which makes it easy to create, change and remove menu entries with a GUI.

Group menus, System menus

You will find common GNOME menu entries as 'appname.desktop' objects inside one of the $XDG_DATA_DIRS/applications directories (most likely /usr/share/applications). To add new menu items for all users, create an 'appname.desktop' file in one of those directories.

  • Edit one of them to fit your needs for a new application, then save it.
  • Save it as a menu entry for all users
    Most often, you will set this files permissions to 644 (root: rw group: r others: r), so all users can see it.
  • Save it as a menu entry for a group or user alone
    You may also have different user permissions; for example, some menu entries should only be available for a group or for one user.

Here is an example how a Scite menu entry definition file could look:

[Desktop Entry]
Encoding=UTF-8
Name=SciTE
Comment=SciTE editor
Type=Application
Exec=/usr/bin/scite
Icon=/usr/share/pixmaps/scite_48x48.png
Terminal=false
Categories=GNOME;Application;Development;
StartupNotify=true

Change the GNOME foot icon to an Arch icon

Note: Thanks to arkham who posted this method in this forum post.
  • Download this Arch icon (filename is starthere.png)
  • Alternatively get the artwork package by installing archlinux-artworkAUR, this puts all artwork in the /usr/share/archlinux directory, and resize your desired logo to 24x24px
  • Figure out which icon set you are using (right-click desktop > Change Background Image > Theme > Customize > Icon). For example, Crux, *GNOME, High Contrast, High Contrast Inverse, Mist, etc.)
  • Now make a backup of your current GNOME icon in the correct directory. In the example below, I am using the GNOME icons but adjust the directory structure accordingly for your icon set:
# mv /usr/share/icons/gnome/24x24/places/start-here.png /usr/share/icons/gnome/24x24/places/start-here.png-virgin
  • Copy starthere.png you just downloaded to the same directory renaming it start-here.png
# cp /path/to/starthere.png /usr/share/icons/gnome/24x24/places/start-here.png
  • Restart your gnome-panels and the new Arch logo should be displayed
$ pkill gnome-panel

Change the GNOME foot icon to an Arch icon (without root access)

  • Figure out which icon set you're using (right-click on desktop > Change Background Image > Theme > Customize > Icon). For example, Crux, *GNOME, High Contrast, High Contrast Inverse, Mist, etc.)
  • Duplicate that icon set's directory structure for 24x24/places in your home directory under .icons
$ mkdir -p ~/.icons/your_icon_set/24x24/places
$ wget -O ~/.icons/your_icon_set/24x24/places/start-here.png http://img23.imageshack.us/img23/9679/starthere.png
  • Alternatively get the artwork package using archlinux-artworkAUR package, this puts all artwork in the /usr/share/archlinux directory, and resize your desired logo to 24x24px and copy it into that directory as 'start-here.png'
  • Restart your gnome-panels and the new Arch logo should be displayed
$ pkill gnome-panel

Custom icon using gconf-editor

  1. Open the configuration editor in GNOME (it should be in System Tools of your main menu) or run gconf-editor
  2. In the configuration editor go to apps > panel > objects > find the object for your menu (an easy way to spot the correct object is that it will have "Main Menu" in the tool tip section).
  3. Set the path to your icon in the "Custom_Icon" field.
  4. Check "Use_Custom_Icon" a little ways down.
  5. The panel should reload momemtarily, if not, open a terminal window and type:
$ killall gnome-panel

Removing default icons from desktop

I like to keep my desktop clean, and perhaps someone else too. So here is how to remove home folder, computer and trash from desktop:

  1. Open terminal
  2. On terminal type: gconf-editor
  3. Configuration Editor opens. From there navigate to: apps > nautilus > desktop
  4. Untick all the icons you dont want to see
  5. You are done, the icons should disappear immediately

Disabling scroll in taskbar

For years there is a "bug" in the GNOME taskbar: the mouse scroll switches the windows. The annoying feature if you have a good mice turns to be a real pain if you have the touchpad. It is impossible to scroll precisely using touchpad, so if you accidentally touch it when your mouse is on the taskbar, then all the windows will flash/switch wildly. There is no setting in gconf/preferences, that can disable this functionality. This is true for KDE 3, I do not know if problem persist in KDE 4. The solution was to install xfce4-panel, which hasn't scrolling at all and looks like default GNOME panel. The bug is better described here [2].

This bug will be probably never fixed, but we have the Arch Build System, so we can build custom software. Install abs (+70Mb), then

cp -r /var/abs/extra/libwnck ~/Desktop/somewhere

Navigate to that directory, then

makepkg --nobuild

This will download and extract the sources. Go to src/libwnck-{version}/libwnck. Edit tasklist.c, search for "scroll-event". You will see somethign like

g_signal_connect(obj, "scroll-event", G_CALLBACK(wnck_tasklist_scroll_cb), NULL);

This line enables scroll-event handler, comment the line out (place /* before and */ after the line). Now go back to ~/Desktop/somewhere and

makepkg --noextract --syncdeps

You will need sudo to be able to install missing dependencies (intltool), but you can always install them separately if you do not want --syncdeps automatically. The --noextract option tells makepkg to not extract sources and use existing src/

pacman -U libwnck-{version}.pkg.tar.gz

Then log out, log back in, and enjoy. Delete dir with the sources from you desktop, you may also uninstall abs if you want. Next step will be to add gconf option, but I will leave this for GNOME gurus. I just do not need this "feature", not even if I use the mouse (Alt+Tab is better anyway).

Custom transitioning background

This will create a transitioning background similiar to the "cosmos" background found in the gnome-backgrounds package. There are three ways to do this.

Note: The image filenames must not have spaces in them.

Manual

You can create an XML file similiar to the one created by gnome-backgrounds in /usr/share/backgrounds/cosmos/.

<background>
  <starttime>
    <hour>00</hour>
    <minute>00</minute>
    <second>01</second>
  </starttime>
<!-- The first section set an arbitrary start time. -->
  <static>
    <duration>1795.0</duration>
    <file>/path/to/background1.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/path/to/background1.jpg</from>
    <to>/path/to/background2.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/path/to/background2.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/path/to/background2.jpg</from>
    <to>/path/to/background1.jpg</to>
  </transition>
</background>

Note that the <duration> tag sets each image as the background for 1795 seconds, or 29 minutes and 55 seconds, and the <transition> then takes 5 seconds. You can add any number of images as long as the last one transitions back to the first (if you want a full loop). Once completed, the XML file can be added to GNOME under System > Preferences > Appearance > Background tab > Add.

Automatic

There is also a script which automates this process:

 sed 's/^\<[^ ]*\>//')
  if [ "$(echo $xmlfile 

Copy the code for the script above into a file called mkwlppr (short for "make wallpaper"). Make the script executable by typing:

sudo chmod 711 mkwlppr

Move the file so that you can run it from any directory by just using its name:

sudo mv mkwlppr /usr/local/bin

Execute the script; it will tell you what input it requires from you. Use the script with input to create as many wallpaper XML files as you want.

Note:

Since this script is not interactive, you can use Unix's wildcards with it if you want to use all files in a directory and/or if you do not care about the order of the images. You can specify paths relative to your current directory, and the script will put the files' absolute paths into the XML file for you; so you can create the XML file anywhere you want and move it afterward without rendering it useless. If you want to run the script inside the /usr/share/backgrounds/ directory, you might have problems with permissions unless you run the command with sudo like this: sudo mkwlppr -parameters If you do not know what duration to specify for the images, simply do not provide a number in the input, and the progam will use the default values of 29 minutes and 55 seconds per image and a 5 second transition. For more information, please see this page.

GUI

If you prefer using a GUI, you can use Wallpapoz or install crebsAUR from the AUR, which are apps for creating background slideshows for GNOME.

Change default size of gnome-terminal

Method 1

The terminal emulator gnome-terminal does neither allow the set a default size nor does remember the last size. In order to set the default size consider the following steps:

  1. Change the following line in /usr/share/vte/termcap/xterm accordingly:
:co#80:it#8:li#24:

Here 80 stands for the number of columns (i.e. width in characters) and 24 for the number of lines (i.e. height in characters). 2. To prevent pacman from overwriting this file when upgrading the package vte, make enter the following in /etc/pacman.conf:

NoUpgrade = usr/share/vte/termcap/xterm

3. Terminate all gnome-terminal processes to let the changes take effect.

Method 2

Another option is to simply use the --geometry switch when starting gnome-terminal (can be done via a right-click/properties on the launcher, then enter the following in the "Command" field: gnome-terminal --geometry 105x25+100+20).

Install a cursor theme

The default cursor theme of Xorg looks pretty outdated. See X11 Cursors for easy instructions on installing new cursor themes. Then go to to the desktop > right click > Change background > Theme tab > customise > cursor to apply them.

Autostart programs

You can place .desktop files in the ~/.config/autostart directory (which you might need to create) to have them started automatically after starting a GNOME session.

gnome-screensaver

Leave message feature in gnome-screensaver

This is a cool feature provided by gnome-screensaver 2.20, somebody can leave a message for you when you are not at your desk. Please install notification-daemon to make this work.

Change gnome-screensaver background

There is no option to change the screensaver's default background. The only way is do as root:

# cd /usr/share/pixmaps/backgrounds/gnome
# rm background-default.jpg
# ln -s /home/user/my_background.jpg background-default.jpg
Note: You can save your wallpaper to a static path like /home/user/wall.jpg and configure gdm, gnome-desktop and gnome-screensaver to point at it. This way you can have the same wallpaper on each of them.

Toolbar style in GTK+ applications

The default setting in GNOME 2.30 displays text next to icons in the toolbar of GTK+ applications. This means labels will only appear near buttons that the developer marks as "important". To have labels always show under the buttons in the toolbar:

gconftool-2 --set --type string  /desktop/gnome/interface/toolbar_style both

Possible values are:

  • both (text is always displayed below the button's icon)
  • both-horiz (default, text is only displayed next to "important" buttons)
  • text (only labels on buttons, no icons)
  • icons (only icons on buttons, no labels)

Missing icons in System Menu

The default setting under 2.30 does not display the usual icons under the System menu. In the 2.28 version, they could be enabled from System > Preferences > Appearance > Interface. This case is not possible anymore. Now this can be enabled from:

gconftool-2 --set --type boolean  /desktop/gnome/interface/menus_have_icons true

Nautilus location entry

Since GNOME 2.30, Nautilus does not have an icon to switch the location type between using a text input entry and of a pathbar. Since pathbar is enabled by default, to change to text input entry do:

gconftool-2 --set --type boolean /apps/nautilus/preferences/always_use_location_entry true

See also