https://wiki.archlinux.org/api.php?action=feedcontributions&user=Cdwillis&feedformat=atomArchWiki - User contributions [en]2024-03-29T01:40:46ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Rxvt-unicode&diff=71225Rxvt-unicode2009-06-26T04:34:07Z<p>Cdwillis: </p>
<hr />
<div>= Introduction =<br />
'''rxvt-unicode''' is a highly customizable [http://en.wikipedia.org/wiki/Terminal_emulator terminal emulator] forked from [http://en.wikipedia.org/wiki/Rxvt rxvt]. Commonly known as <b>urxvt</b>, rxvt-unicode can be [http://en.wikipedia.org/wiki/Daemon_(computer_software) daemonized] to run clients within a single [http://en.wikipedia.org/wiki/Process_(computing) process] in order to minimize the use of system resources. Developed by Marc Lehmann, some of the more outstanding features of rxvt-unicode include international language support through [http://en.wikipedia.org/wiki/Unicode Unicode], the ability to display multiple font types and support for [http://en.wikipedia.org/wiki/Perl Perl] extensions.<br />
<br />
= Package Installation =<br />
rxvt-unicode is part of the [[Official Repositories|official Arch Linux (extra) repositories]].<br />
<br />
$ pacman -Si rxvt-unicode<br />
<br />
<pre>Repository : extra<br />
Name : rxvt-unicode<br />
Version : 9.06-1<br />
URL : http://software.schmorp.de/pkg/rxvt-unicode.html<br />
Licenses : GPL2 <br />
Groups : None<br />
Provides : None<br />
Depends On : gcc-libs libxft libxpm <br />
Optional Deps : perl: lots of utilities<br />
gtk-perl: to use the urxvt-tabbed<br />
Conflicts With : None<br />
Replaces : None<br />
Download Size : 2312.19 K<br />
Installed Size : 5208.00 K<br />
Packager : Tobias Kieslich [ tobias <funnychar> archlinux <dot> org ]<br />
Architecture : i686<br />
Build Date : Sat 08 Nov 2008 07:17:29 PM PST<br />
MD5 Sum : d731dc0fe3958eac340fc8ad54a95e51<br />
Description : an unicode enabled rxvt-clone terminal emulator (urxvt)</pre><br />
<br />
Install the latest version of rxvt-unicode:<br />
# pacman -Sy rxvt-unicode<br />
<br />
= Configuration =<br />
== Creating ~/.Xdefaults ==<br />
The look, feel and function of rxvt-unicode is typically controlled by way of either command-line arguments, or resource settings within the file <tt>~/.Xdefaults</tt>. If <tt>~/.Xdefaults</tt> is not present in the desired home directory, create one:<br />
<br />
$ cd ~<br />
$ touch .Xdefaults<br />
<br />
All that is left at this point is to enter desired settings by editing the text-based <tt>.Xdefaults</tt> file.<br />
<br />
{{Box Note|Command-line arguments override and take precedence over the resource settings established in .Xdefaults|}}<br />
<br />
=== Example .Xdefaults ===<br />
* [http://i275.photobucket.com/albums/jj281/adamchrista/Arch%20Linux/Wiki%20Examples/urxvt-man.png rxvt-unicode Example Screenshot]<br />
<br />
<pre>URxvt.buffered: true<br />
URxvt.background: black<br />
URxvt.foreground: white<br />
URxvt.cursorColor: green<br />
URxvt.underlineColor: yellow<br />
URxvt.font: xft:Terminus:pixelsize=14:antialias=false<br />
URxvt.boldFont: xft:Terminus:bold:pixelsize=14:antialias=false<br />
URxvt.perl-ext-common: default,tabbed<br />
URxvt.title: ArchWiki Example</pre><br />
<br />
* See the [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod rxvt-unicode Reference page] for the complete list of available setting and values.<br />
<br />
= Improving Performance =<br />
* Avoid the use of Xft fonts. If Xft fonts must be used, append <tt>:antialias=false</tt> to the setting value.<sup>[[http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod#Can_I_speed_up_Xft_rendering_somehow 1]]</sup><br />
* Build rxvt-unicode with disabled support for unnecessary features, <tt>--disable-xft</tt> and <tt>--disable-unicode3</tt> in particular.<sup>[[http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod#Rxvt_unicode_uses_gobs_of_memory_how 2]]</sup><br />
* Limit the number of <tt>saveLines</tt> (option <tt>-sl</tt>) in the scrollback buffer to reduce memory usage.<sup>[[http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod#Isn_t_rxvt_unicode_supposed_to_be_sm 3]]</sup><br />
* Consider running <tt>urxvtd</tt> as a daemon accepting connections from <tt>urxvtc</tt> clients.<sup>[[http://wiki.archlinux.org/index.php/Rxvt-unicode#Additional_Resources 4]]</sup><br />
<br />
= Troubleshooting [[DRAFT]] =<br />
<br />
== Addtional Files Created ==<br />
* <tt>~/.terminfo/r/rxvt-unicode</tt><br />
:: [http://en.wikipedia.org/wiki/Terminfo Terminfo] library and database file.<br />
* <tt>~/.rxvt-unicode-<i>hostname</i></tt><br />
:: [http://en.wikipedia.org/wiki/Unix_domain_socket Socket] connection file created by urxvtd.<br />
<br />
== Clickable URLs ==<br />
You can make URLs in the terminal clickable if you have Perl installed. For example to open links in Firefox add the following to your .Xdefaults:<br />
<br />
URxvt.perl-ext-common : default,matcher<br />
URxvt.urlLauncher : /usr/bin/firefox<br />
URxvt.matcher.button : 1 <br />
<br />
<br />
== Cut (Selection) & Paste ==<br />
<br />
For users unfamiliar with X11 data transfer methods, the exchange of information to and from rxvt-unicode can become a burden. Suffice to say that rxvt-unicode uses cut buffers which are typically loaded into the current PRIMARY selection by default.<sup>[[http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod#THE_SELECTION_SELECTING_AND_PASTING_ 1]]</sup> Users are urged to review the Wikipedia article [http://en.wikipedia.org/wiki/X_Window_selection X Window Selection] for additional information. <br />
<br />
=== Clipboard Management ===<br />
* [http://parcellite.sourceforge.net/ Parcellite] is an actively developed GTK+ clipboard manager which can also run in the background as a daemon.<br />
* [http://www.nongnu.org/autocutsel/ autocutsel] provides command line and daemon interfaces to synchronize PRIMARY, CLIPBOARD and cut buffer selections.<br />
* [http://glipper.sourceforge.net/ Glipper] is a [[GNOME]] panel applet with older versions available for use in environments other than GNOME.<br />
* [http://goodies.xfce.org/projects/panel-plugins/xfce4-clipman-plugin Clipman] (xfce-clipman-plugin) is a GUI clipboard manager plugin for the [[Xfce]] panel (xfpanel).<br />
<br />
== No clipboard management solution ==<br />
Skottish[http://bbs.archlinux.org/viewtopic.php?pid=506845#p506845] created a perl script to automatically copy any selection in urxvt to the X clipboard. You should create a file with the following content in /usr/lib/urxvt/perl named clipboard<br />
<pre>#! /usr/bin/perl<br />
<br />
sub on_sel_grab {<br />
my $query = quotemeta $_[0]->selection;<br />
$query =~ s/\n/\\n/g;<br />
$query =~ s/\r/\\r/g;<br />
system( "echo -en " . $query . " | xsel -ibp" );<br />
}</pre><br />
<br />
It also requires xsel and needs to be enabled in the *perl-ext-common field in .Xdefaults. There should be a line in .Xdefaults that looks like this: <pre>urxvt*perl-ext-common: default,matcher,clipboard</pre><br />
<br />
== Font Declaration Methods ==<br />
URxvt.font: 9x15<br />
is the same as<br />
-misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1<br />
and <br />
URxvt.font: 9x15bold<br />
is the same as <br />
URxvt.font: -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1<br />
<br />
<br />
<br />
=Improved Kuake-like Behavior in Openbox=<br />
This was originally posted on the forum by Xyne[http://bbs.archlinux.org/viewtopic.php?pid=550380] and it relies on "xdotool" which is available in the community repo.<br />
<br />
==The Scriptlets==<br />
Save this scriptlet from the urxvtc man page somewhere on your system as "urxvtc" (e.g. in ~/.config/openbox):<br />
<pre><br />
#!/bin/sh<br />
urxvtc "$@"<br />
if [ $? -eq 2 ]; then<br />
urxvtd -q -o -f<br />
urxvtc "$@"<br />
fi<br />
</pre><br />
<br />
and save this one as "urxvtq":<br />
<pre><br />
#!/bin/bash<br />
<br />
wid=$(xdotool search --name urxvtq)<br />
if [ -z "$wid" ]; then<br />
/path/to/urxvtc -name urxvtq -geometry 80x28<br />
wid=$(xdotool search --name urxvtq)<br />
xdotool windowfocus $wid<br />
xdotool key Control_L+l<br />
else<br />
if [ -z "$(xdotool search --onlyvisible --name urxvtq 2>/dev/null)" ]; then<br />
xdotool windowmap $wid<br />
xdotool windowfocus $wid<br />
else<br />
xdotool windowunmap $wid<br />
fi<br />
fi<br />
</pre><br />
<br />
Make sure that you change "/path/to/urxvtc" to the actual path to the urxvtc scriptlet that you saved above. We'll be using urxvtc to launch both regular instances of urxvt and the kuake-like instance.<br />
<br />
==Openbox Configuration==<br />
Now add the following lines to the "<applications>" section of ~/.config/openbox/rc.xml:<br />
<pre><br />
<application name="urxvtq"><br />
<decor>no</decor><br />
<position force="yes"><br />
<x>center</x><br />
<y>0</y><br />
</position><br />
<desktop>all</desktop><br />
<layer>above</layer><br />
<skip_pager>yes</skip_pager><br />
<skip_taskbar>yes</skip_taskbar><br />
<maximized>Horizontal</maximized><br />
</application><br />
</pre><br />
<br />
and add these lines to the "<keyboard>" section:<br />
<pre><br />
<keybind key="W-t"><br />
<action name="Execute"><br />
<command>/path/to/urxvtc</command><br />
</action><br />
</keybind><br />
<keybind key="W-grave"><br />
<action name="Execute"><br />
<execute>/path/to/urxvtq</execute><br />
</action><br />
</keybind><br />
</keyboard><br />
</pre><br />
<br />
Here too you need to change the "/path/to/*" lines to point to the scripts that you saved above. Save the file and then reconfigure Openbox. You should now be able to launch regular instances of urxvt with the Windows/Super key and "t" and toggle the kuake-like console with Windows/Super+grave (`).<br />
<br />
<br />
==Further Configuration==<br />
The advantage of this configuration over the urxvt kuake perl script is that Openbox provides more keybinding options such as modifier keys. The kuake script hijacks an entire physical key regardless of any modifier combination. Review the [http://icculus.org/openbox/index.php/Help:Bindings Openbox bindings documentation] for the full range or possibilities.<br />
<br />
The [http://icculus.org/openbox/index.php/Help:Applications Openbox per-app settings] can be used to further configure the behavior of the kuake-like console (e.g. screen position, layer, etc). You may need to change the "geometry" parameter in the urxvtq scriptlet to adjust the height of the console.<br />
<br />
==Related Scripts==<br />
hbekel has posted a generalized version of the urxvtq [http://bbs.archlinux.org/viewtopic.php?pid=550380#p550380 here] which can be used to toggle any application using xdotool<br />
<br />
A script / program for opening url's with your keyboard instead of mouse with urxvt [http://www.jukie.net/~bart/blog/20070503013555]<br />
<br />
= Additional Resources =<br />
* [http://software.schmorp.de/pkg/rxvt-unicode.html rxvt-unicode] - Official Site<br />
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod rxvt-unicode FAQ] Official FAQ<br />
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod rxvt-unicode Reference] - Official Manual Page<br />
* [http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/src/urxvt.pm urxvtperl] Official Perl Extension Reference<br />
<br />
<sup>[4]</sup> See <code>man 1 urxvtd</code> and <code>man 1 urxvtc</code> for additional information.</div>Cdwillishttps://wiki.archlinux.org/index.php?title=User:Cdwillis&diff=62144User:Cdwillis2009-02-16T04:32:06Z<p>Cdwillis: New page: Just another user trying to help with the wiki.</p>
<hr />
<div>Just another user trying to help with the wiki.</div>Cdwillishttps://wiki.archlinux.org/index.php?title=Talk:Comparison_of_tiling_window_managers&diff=62143Talk:Comparison of tiling window managers2009-02-16T04:31:24Z<p>Cdwillis: </p>
<hr />
<div>Need a brief 'Advantages:, Disadvantages:' blurb for each WM. [[User:Misfit138|Misfit138]] 18:27, 3 January 2009 (EST)<br />
<br />
I'm working on Misfit138's point above, but could somebody add something on Ion3? I've never used it, and don't know much about it. --[[User:SamC|SamC]] 20:51, 3 January 2009 (EST)<br />
<br />
I'm going to add several other tiling WMs once I get all the information about them for the comparison table [[User:cdwillis|cdwillis]]:<br />
<br />
|-<br />
! [[evilwm]]<br />
| C++ || C++ || Dynamic || None || No || Built-in, reads from root window name || No<br />
<br />
|-<br />
! [[larswm]]<br />
| C || C || Dynamic || None || No || Built-in, reads from root window name || No<br />
<br />
|-<br />
! [[qtile]]<br />
| C || Python || Dynamic || None || No || Built-in, reads from root window name || No<br />
<br />
|-<br />
! [[subtle]]<br />
| C || Lua || Dynamic || None || No || Built-in, reads from root window name || No</div>Cdwillishttps://wiki.archlinux.org/index.php?title=Awesome_(window_manager)&diff=60819Awesome (window manager)2009-02-09T05:40:22Z<p>Cdwillis: Undo revision 60805 by Cdwillis (Talk)</p>
<hr />
<div>[[Category:Desktop environments (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|Česky|Awesome (Česky)}}<br />
{{i18n_entry|English|Awesome3}}<br />
{{i18n_entry|简体中文|Awesome_(简体中文)}}<br />
{{i18n_links_end}}<br />
<br />
= Introduction =<br />
From the awesome website:<br />
<br />
''[http://awesome.naquadah.org/ awesome] is a highly configurable, next generation framework window manager for X. It is very fast, extensible and licensed under the GNU GPLv2 license.<br />
<br />
It is primarly targeted at power users, developers and any people dealing with every day computing tasks and who want to have fine-grained control on its graphical environment.''<br />
<br />
= Installation =<br />
<br />
Awesome is available in the standard repositories (community):<br />
# pacman -S awesome<br />
<br />
== Development Snapshots ==<br />
Git-based development versions are available from AUR, such as [http://aur.archlinux.org/packages.php?ID=13916 awesome-git].<br />
<br />
<br />
= Getting Started =<br />
<br />
==Using awesome==<br />
To start awesome from a login manager, see [[Adding a login manager (KDM, GDM, or XDM) to automatically boot on startup | this article]]. [[SLiM]] is a popular lightweight login manager and comes highly recommended.<br />
<br />
To run awesome without a login manager, simply add '''<tt>exec awesome</tt>''' to the startup script of your choice (e.g. ~/.xinitrc.)<br />
<br />
= Configuration =<br />
Awesome includes some good default settings right out of the box, but sooner or later you'll want to change something. The lua based configuration file is at <tt>~/.config/awesome/rc.lua</tt>.<br />
<br />
== Creating the configuration file ==<br />
Whenever compiled, awesome will attempt to use whatever custom settings are contained in ~/.config/awesome/rc.lua. This file is not created by default, so we must copy the template file first:<br />
$ cp /etc/xdg/awesome/rc.lua ~/.config/awesome/rc.lua<br />
<br />
For more information about configuring awesome, check out the [http://awesome.naquadah.org/wiki/index.php?title=Awesome_3_configuration configuration page at awesome wiki] <br />
<br />
<br />
== More configuration resources ==<br />
Some good examples of rc.lua would be (note that the awesomerc syntax changes regularly, so you will likely have to modify any configuration file you download):<br />
<br />
* http://git.glacicle.com/other/configs.git/.config/awesome/rc_30.lua<br />
* http://www.calmar.ws/dotfiles/dotfiledir/dot_awesomerc.lua<br />
* http://tux-atome.fr/rhaamo_config-files.git?a=tree;f=configs/awesome3/dot_config/awesome - Awesome 3, no wicked required and no beautiful.<br />
* http://github.com/wolgri/wolgri.config/tree/master/.config/awesome/rc.lua<br />
* http://oxmoz.no-ip.org/awesome/rc.lua<br />
* http://www.ugolnik.info/downloads/awesome/rc.lua (screen) - Awesome 3 with small titlebar and statusbar.<br />
* http://github.com/BaSh/config/tree/master/.config/awesome/rc.lua<br />
* http://silenceisdefeat.org/~koniu/awesome/rc.lua (screen)<br />
* http://www.gigamo.be/stuff/rc.lua (screen)<br />
* http://dmaus.gmxhome.de/awesome/rc.lua (main file)<br />
** http://dmaus.gmxhome.de/awesome/thinkpad.include (notebook specific configuration) <br />
* https://trac.poildetroll.net/trac/akoya/browser/config/awesome/rc.lua<br />
* http://svn.grumblesmurf.org/mercurial/awesome-config/file/tip<br />
* http://github.com/stxza/arch-linux-configs/tree/master/.config/awesome (All) [http://balancest.deviantart.com/gallery/ (screen gallery)]<br />
* User Configuration Files http://awesome.naquadah.org/wiki/index.php?title=User_Configuration_Files<br />
<br />
= Themes =<br />
<br />
Beautiful is a lua library that allows you to theme awesome using an external file, it becomes very easy to dynamically change your whole awesome colours and wallpaper without changing your rc.lua. <br />
<br />
The default theme is at /usr/share/awesome/themes/default. Copy it to ~/.awesome/themes/default and change theme_path in rc.lua. <br />
<br />
More details [http://awesome.naquadah.org/wiki/index.php?title=Beautiful here]<br />
<br />
A few sample [http://awesome.naquadah.org/wiki/index.php?title=Beautiful_themes themes]<br />
<br />
== Setting up your wallpaper ==<br />
<br />
Beautiful can handle your wallpaper, thus you don't need to set it up in your .xinitrc or .xsession files. This allows you to have a specific wallpaper for each theme. If you take a look at the default theme file you'll see a wallpaper_cmd key, the given command is executed when beautiful.init("path_to_theme_file") is run. You can put here you own command or remove/comment the key if you don't want Beautiful to interfere with your wallpaper business.<br />
<br />
For instance, if you use fbsetbg to set your wallpaper, you can write:<br />
<br />
wallpaper_cmd = fbsetbg -f .config/awesome/themes/awesome-wallpaper.png<br />
<br />
<br />
= Tips & Tricks =<br />
Feel free to add any tips or tricks that you would like to pass on to other awesome users.<br />
==Expose effect like compiz==<br />
<br />
Revelation brings up a view of all your open clients; left-clicking a client pops to the first tag that client is visible on and raises/focuses the client. In addition, the Enter key pops to the currently focused client, and Escape aborts. <br />
<br />
http://awesome.naquadah.org/wiki/index.php?title=Revelation<br />
<br />
==Hide / show statusbars in awesome 3.0?==<br />
<br />
Lua code:<br />
<br />
mystatusbar.screen = nil<br />
<br />
To map Modkey-b to hide/show default statusbar on active screen (as default in awesome 2.3), add to your awesome/rc.lua:<br />
<br />
keybinding.new({ modkey }, "b", function () <br />
if mystatusbar[mouse.screen].screen == nil then <br />
mystatusbar[mouse.screen].screen = mouse.screen<br />
else<br />
mystatusbar[mouse.screen].screen = nil<br />
end<br />
end):add()<br />
<br />
Do not forget replace mystatusbar with the name of your statusbar<br />
<br />
==Dynamic tagging using Eminent==<br />
<br />
TODO...<br />
[http://awesome.naquadah.org/wiki/index.php?title=Eminent]<br />
<br />
Note: Eminent is a bit old and outdated. We have a new library in the works, Shifty. It hasn't been included with the main source yet, but is very promising. I'd recommend waiting for that and then writing this section for it. [http://garoth.com/awesome/shifty.ogv Shifty Video (.ogv)]<br />
<br />
Note2: There is actually yet another implementation of this feature. I'm hoping it merges with Shifty, and I'm poking the developers in that direction.<br />
<br />
==Space Invaders== <br />
TODO<br />
[http://awesome.naquadah.org/wiki/index.php?title=Space_Invaders]<br />
<br />
==Naughty for popup notification==<br />
TODO<br />
[http://awesome.naquadah.org/wiki/index.php?title=Naughty]<br />
<br />
==Popup Menus==<br />
Todo....<br />
[http://awesome.naquadah.org/wiki/index.php?title=Awful.menu]<br />
<br />
==Widgets using wicked==<br />
Todo...<br />
[http://awesome.naquadah.org/wiki/index.php?title=Wicked]<br />
<br />
<br />
== Transparency ==<br />
Awesome has support for (2D) transparency through xcompmgr. Note that you'll probably want the git version of xcompmgr, which is [http://aur.archlinux.org/packages.php?ID=16554 available in AUR]. <br />
<br />
Add this to your ~/.xinitrc<br />
xcompmgr &<br />
See ''man xcompmgr'' or [[xcompmgr]] for more options.<br />
<br />
you can set this window transparency dynamically in the rc.lua <br />
add<br />
<br />
c.opacity = 1<br />
<br />
to the awful.hooks.focus.register hook (to restore Visibility)<br />
add<br />
<br />
c.opacity = 0.4<br />
<br />
to the awful.hooks.unfocus.register hook (to make the Window transparent. Adjust value as comfortable)<br />
<br />
As of Awesome 3.1, there is now built-in pseudo transparency for wiboxes. To enable, just add 2 more hexadecimals to the colors in your theme file (~/.config/awesome/themes/default usually), like shown here:<br />
<br />
bg_normal = #000000AA<br />
<br />
where "AA" is the transparency value.<br />
<br />
= Troubleshooting =<br />
<br />
==Mod4 key==<br />
<br />
Alias the Win key. Somehow, my Mod4 key isn't mapped by default. If that's your case too, you can check the keycode of your Mod4 key with<br />
<br />
$ xev<br />
<br />
It should be 115 for the left one. Then add this to your ~/.xinitrc<br />
<br />
xmodmap -e "keycode 115 = Super_L" -e "add mod4 = Super_L"<br />
exec awesome<br />
<br />
<br />
<br />
==Mod4 key vs. IBM ThinkPad users==<br />
<br />
IBM ThinkPads do not come equipped with a Window key (although Lenovo have changed this tradition on their ThinkPads). As of writing, the Alt key is not used in command combinations by the default rc.lua (refer to the Awesome wiki for a table of commands), which allows it be used as a replacement for the Super/Mod4/Win key. To do this, edit your rc.lua and replace:<br />
<br />
modkey = "Mod4"<br />
<br />
by:<br />
<br />
modkey = "Mod1"<br />
<br />
Note: Awesome does a have a few commands that make use of Mod4 plus a single letter. Changing Mod4 to Mod1/Alt could cause overlaps for some key combinations. The small amount of instances where this happens can be changed in the rc.lua file.<br />
<br />
<br />
==Cairo Memory Leak==<br />
If you experiencing [http://awesome.naquadah.org/bugs/index.php?do=details&task_id=396 memory leaks] then try [http://aur.archlinux.org/packages.php?ID=9566 cairo-git] in AUR. [http://bbs.archlinux.org/viewtopic.php?pid=462021 Forum Thread]<br />
<br />
Update: The recent Cairo 1.8.6 release is also fine to use it seems as the fix from git should be in there.<br />
<br />
= Additional Resources =<br />
* http://awesome.naquadah.org/ - The official awesome website<br />
* http://awesome.naquadah.org/wiki/index.php/Main_Page - the awesome wiki<br />
* http://www.penguinsightings.org/desktop/awesome/ - A review</div>Cdwillishttps://wiki.archlinux.org/index.php?title=Comparison_of_tiling_window_managers&diff=60806Comparison of tiling window managers2009-02-09T04:19:13Z<p>Cdwillis: </p>
<hr />
<div>=== Comparison Table ===<br />
{| border="1" cellpadding="4" cellspacing="0"<br />
|+ Comparison of tiling window managers. See also [[Common Apps]].<br />
! Window Manager !! Written in !! Configured with !! Management style !! System tray support !! On-the-fly reload !! Information bars !! Compositing<br />
|-<br />
! [[Awesome]]<br />
| C || Lua || Dynamic || Built-in || Yes || Built-in, images and text || Yes, with an external manager such as xcompmgr<br />
|-<br />
! [[dwm]]<br />
| C || C || Dynamic || None || No || Built-in, reads form STDIN || No<br />
|-<br />
! [[Ratpoison]]<br />
| C || Text || Manual || None || Yes || Yes || No<br />
|-<br />
! [[Scrotwm]]<br />
| C || Text || Dynamic || None || Yes || Built-in || No<br />
|-<br />
! [[Stumpwm]]<br />
| Lisp || Lisp || Manual || None || Yes || Yes || No<br />
|-<br />
! [[wmii]]<br />
| C || Anything || Manual || None || Yes || Built-in || No<br />
|-<br />
! [[XMonad]]<br />
| Haskell || Haskell || Dynamic || None || Yes || No || Yes, with xmonad-contrib and an external manager<br />
|}<br />
<br />
=== [[Awesome]] ===<br />
Awesome on it's own can provide many of the functions of a desktop environment. Configured in Lua, it has a system tray, information bar, and launcher built in. There are extensions available to it, written in Lua, but they are less smoothly integrated than those of XMonad. Awesome uses XCB as opposed to Xlib, which may result it a speed increase. Awesome has other features as well, such as an early replacement for notification-daemon, a right-click menu similar to that of the *box window managers, and many other things.<br />
<br />
=== [[dwm]] ===<br />
dwm is by far the most simple of the window managers listed here. It does not include a tray app or automatic launcher, although dmenu integrates well wtih it, as they are from the same author. Configuration is done in C, and dwm must be recompiled each time the configuration updates. Different from the other WM's, it must be restarted to apply configuration changes. It is more lightweight than the others listed here, at the expense of certain features.<br />
<br />
=== [[Ratpoison]] ===<br />
[[Ratpoison]] is configured with simple text file, as opposed to the other window managers above, which are configured with programming languages. While this reduces flexibility, it can be easier to understand. The information bar in Ratpoison is somewhat different, as it shows only when needed. It serves as both an application launcher, as well as a notification bar. Ratpoison does not include a system tray, and is quite lightweight.<br />
<br />
=== [[Scrotwm]] ===<br />
Scrotwm is a small dynamic tiling window manager largely inspired by xmonad and dwm. It tries to stay out of the way so that valuable screen real estate can be used for much more important stuff. It has sane defaults and does not require one to learn a language to do any configuration. It was written by hackers for hackers and it strives to be small, compact and fast.<br />
<br />
=== [[Stumpwm]] ===<br />
Stumpwm is similar to [[Ratpoison]], but is written and configured completely in Lisp. It can be reconfigured and reloaded while running. As with wmii and Ratpoison, it is a manual window manager. It's information bar can be set to show constantly or only when needed. It does not include a system tray.<br />
<br />
=== [[wmii]] ===<br />
[[wmii]] uses a different style of window management than those listed above. The user must manually move windows around. While more work, this also provides more flexibility be default. wmii is configured via the plan 9 file system, which allows any program that can work with text to configure it. The default configuration is in bash and rc (the plan 9 shell), but programs exist written in ruby, for example. It has a status bar and launcher built in, but no system tray.<br />
<br />
=== [[XMonad]] ===<br />
XMonad is written in Haskell, and is configured in Haskell. This allows great flexibility, although this can be confusing at times. For all configuration changes, XMonad must be recompiled. However, this normally takes ~2 seconds, and can be done without affecting running programs. XMonad, in itself, is quite simple, but there is a large library called xmonad-contrib which provides many other features. XMonad does not include any utility programs, but others, such as [[dzen2]] and xmobar, make it easy to display such things as workspace information. XMonad does not come with an application launcher, but there are modules in xmonad-contrib which provide one, as well as programs like [[dmenu]] and gmrun. There is no system tray, but this can be provided by applications such as stalonetray and trayer.</div>Cdwillishttps://wiki.archlinux.org/index.php?title=Awesome_(window_manager)&diff=60805Awesome (window manager)2009-02-09T04:14:20Z<p>Cdwillis: /* Creating the configuration file */</p>
<hr />
<div>[[Category:Desktop environments (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|Česky|Awesome (Česky)}}<br />
{{i18n_entry|English|Awesome3}}<br />
{{i18n_entry|简体中文|Awesome_(简体中文)}}<br />
{{i18n_links_end}}<br />
<br />
= Introduction =<br />
From the awesome website:<br />
<br />
''[http://awesome.naquadah.org/ awesome] is a highly configurable, next generation framework window manager for X. It is very fast, extensible and licensed under the GNU GPLv2 license.<br />
<br />
It is primarly targeted at power users, developers and any people dealing with every day computing tasks and who want to have fine-grained control on its graphical environment.''<br />
<br />
= Installation =<br />
<br />
Awesome is available in the standard repositories (community):<br />
# pacman -S awesome<br />
<br />
== Development Snapshots ==<br />
Git-based development versions are available from AUR, such as [http://aur.archlinux.org/packages.php?ID=13916 awesome-git].<br />
<br />
<br />
= Getting Started =<br />
<br />
==Using awesome==<br />
To start awesome from a login manager, see [[Adding a login manager (KDM, GDM, or XDM) to automatically boot on startup | this article]]. [[SLiM]] is a popular lightweight login manager and comes highly recommended.<br />
<br />
To run awesome without a login manager, simply add '''<tt>exec awesome</tt>''' to the startup script of your choice (e.g. ~/.xinitrc.)<br />
<br />
= Configuration =<br />
Awesome includes some good default settings right out of the box, but sooner or later you'll want to change something. The lua based configuration file is at <tt>~/.config/awesome/rc.lua</tt>.<br />
<br />
== Creating the configuration file ==<br />
Whenever compiled, awesome will attempt to use whatever custom settings are contained in ~/.config/awesome/rc.lua. This file is not created by default, so we must copy the template file first:<br />
$ cp /etc/xdg/awesome/rc.lua ~/.config/awesome<br />
<br />
For more information about configuring awesome, check out the [http://awesome.naquadah.org/wiki/index.php?title=Awesome_3_configuration configuration page at awesome wiki]<br />
<br />
== More configuration resources ==<br />
Some good examples of rc.lua would be (note that the awesomerc syntax changes regularly, so you will likely have to modify any configuration file you download):<br />
<br />
* http://git.glacicle.com/other/configs.git/.config/awesome/rc_30.lua<br />
* http://www.calmar.ws/dotfiles/dotfiledir/dot_awesomerc.lua<br />
* http://tux-atome.fr/rhaamo_config-files.git?a=tree;f=configs/awesome3/dot_config/awesome - Awesome 3, no wicked required and no beautiful.<br />
* http://github.com/wolgri/wolgri.config/tree/master/.config/awesome/rc.lua<br />
* http://oxmoz.no-ip.org/awesome/rc.lua<br />
* http://www.ugolnik.info/downloads/awesome/rc.lua (screen) - Awesome 3 with small titlebar and statusbar.<br />
* http://github.com/BaSh/config/tree/master/.config/awesome/rc.lua<br />
* http://silenceisdefeat.org/~koniu/awesome/rc.lua (screen)<br />
* http://www.gigamo.be/stuff/rc.lua (screen)<br />
* http://dmaus.gmxhome.de/awesome/rc.lua (main file)<br />
** http://dmaus.gmxhome.de/awesome/thinkpad.include (notebook specific configuration) <br />
* https://trac.poildetroll.net/trac/akoya/browser/config/awesome/rc.lua<br />
* http://svn.grumblesmurf.org/mercurial/awesome-config/file/tip<br />
* http://github.com/stxza/arch-linux-configs/tree/master/.config/awesome (All) [http://balancest.deviantart.com/gallery/ (screen gallery)]<br />
* User Configuration Files http://awesome.naquadah.org/wiki/index.php?title=User_Configuration_Files<br />
<br />
= Themes =<br />
<br />
Beautiful is a lua library that allows you to theme awesome using an external file, it becomes very easy to dynamically change your whole awesome colours and wallpaper without changing your rc.lua. <br />
<br />
The default theme is at /usr/share/awesome/themes/default. Copy it to ~/.awesome/themes/default and change theme_path in rc.lua. <br />
<br />
More details [http://awesome.naquadah.org/wiki/index.php?title=Beautiful here]<br />
<br />
A few sample [http://awesome.naquadah.org/wiki/index.php?title=Beautiful_themes themes]<br />
<br />
== Setting up your wallpaper ==<br />
<br />
Beautiful can handle your wallpaper, thus you don't need to set it up in your .xinitrc or .xsession files. This allows you to have a specific wallpaper for each theme. If you take a look at the default theme file you'll see a wallpaper_cmd key, the given command is executed when beautiful.init("path_to_theme_file") is run. You can put here you own command or remove/comment the key if you don't want Beautiful to interfere with your wallpaper business.<br />
<br />
For instance, if you use fbsetbg to set your wallpaper, you can write:<br />
<br />
wallpaper_cmd = fbsetbg -f .config/awesome/themes/awesome-wallpaper.png<br />
<br />
<br />
= Tips & Tricks =<br />
Feel free to add any tips or tricks that you would like to pass on to other awesome users.<br />
==Expose effect like compiz==<br />
<br />
Revelation brings up a view of all your open clients; left-clicking a client pops to the first tag that client is visible on and raises/focuses the client. In addition, the Enter key pops to the currently focused client, and Escape aborts. <br />
<br />
http://awesome.naquadah.org/wiki/index.php?title=Revelation<br />
<br />
==Hide / show statusbars in awesome 3.0?==<br />
<br />
Lua code:<br />
<br />
mystatusbar.screen = nil<br />
<br />
To map Modkey-b to hide/show default statusbar on active screen (as default in awesome 2.3), add to your awesome/rc.lua:<br />
<br />
keybinding.new({ modkey }, "b", function () <br />
if mystatusbar[mouse.screen].screen == nil then <br />
mystatusbar[mouse.screen].screen = mouse.screen<br />
else<br />
mystatusbar[mouse.screen].screen = nil<br />
end<br />
end):add()<br />
<br />
Do not forget replace mystatusbar with the name of your statusbar<br />
<br />
==Dynamic tagging using Eminent==<br />
<br />
TODO...<br />
[http://awesome.naquadah.org/wiki/index.php?title=Eminent]<br />
<br />
Note: Eminent is a bit old and outdated. We have a new library in the works, Shifty. It hasn't been included with the main source yet, but is very promising. I'd recommend waiting for that and then writing this section for it. [http://garoth.com/awesome/shifty.ogv Shifty Video (.ogv)]<br />
<br />
Note2: There is actually yet another implementation of this feature. I'm hoping it merges with Shifty, and I'm poking the developers in that direction.<br />
<br />
==Space Invaders== <br />
TODO<br />
[http://awesome.naquadah.org/wiki/index.php?title=Space_Invaders]<br />
<br />
==Naughty for popup notification==<br />
TODO<br />
[http://awesome.naquadah.org/wiki/index.php?title=Naughty]<br />
<br />
==Popup Menus==<br />
Todo....<br />
[http://awesome.naquadah.org/wiki/index.php?title=Awful.menu]<br />
<br />
==Widgets using wicked==<br />
Todo...<br />
[http://awesome.naquadah.org/wiki/index.php?title=Wicked]<br />
<br />
<br />
== Transparency ==<br />
Awesome has support for (2D) transparency through xcompmgr. Note that you'll probably want the git version of xcompmgr, which is [http://aur.archlinux.org/packages.php?ID=16554 available in AUR]. <br />
<br />
Add this to your ~/.xinitrc<br />
xcompmgr &<br />
See ''man xcompmgr'' or [[xcompmgr]] for more options.<br />
<br />
you can set this window transparency dynamically in the rc.lua <br />
add<br />
<br />
c.opacity = 1<br />
<br />
to the awful.hooks.focus.register hook (to restore Visibility)<br />
add<br />
<br />
c.opacity = 0.4<br />
<br />
to the awful.hooks.unfocus.register hook (to make the Window transparent. Adjust value as comfortable)<br />
<br />
As of Awesome 3.1, there is now built-in pseudo transparency for wiboxes. To enable, just add 2 more hexadecimals to the colors in your theme file (~/.config/awesome/themes/default usually), like shown here:<br />
<br />
bg_normal = #000000AA<br />
<br />
where "AA" is the transparency value.<br />
<br />
= Troubleshooting =<br />
<br />
==Mod4 key==<br />
<br />
Alias the Win key. Somehow, my Mod4 key isn't mapped by default. If that's your case too, you can check the keycode of your Mod4 key with<br />
<br />
$ xev<br />
<br />
It should be 115 for the left one. Then add this to your ~/.xinitrc<br />
<br />
xmodmap -e "keycode 115 = Super_L" -e "add mod4 = Super_L"<br />
exec awesome<br />
<br />
<br />
<br />
==Mod4 key vs. IBM ThinkPad users==<br />
<br />
IBM ThinkPads do not come equipped with a Window key (although Lenovo have changed this tradition on their ThinkPads). As of writing, the Alt key is not used in command combinations by the default rc.lua (refer to the Awesome wiki for a table of commands), which allows it be used as a replacement for the Super/Mod4/Win key. To do this, edit your rc.lua and replace:<br />
<br />
modkey = "Mod4"<br />
<br />
by:<br />
<br />
modkey = "Mod1"<br />
<br />
Note: Awesome does a have a few commands that make use of Mod4 plus a single letter. Changing Mod4 to Mod1/Alt could cause overlaps for some key combinations. The small amount of instances where this happens can be changed in the rc.lua file.<br />
<br />
<br />
==Cairo Memory Leak==<br />
If you experiencing [http://awesome.naquadah.org/bugs/index.php?do=details&task_id=396 memory leaks] then try [http://aur.archlinux.org/packages.php?ID=9566 cairo-git] in AUR. [http://bbs.archlinux.org/viewtopic.php?pid=462021 Forum Thread]<br />
<br />
Update: The recent Cairo 1.8.6 release is also fine to use it seems as the fix from git should be in there.<br />
<br />
= Additional Resources =<br />
* http://awesome.naquadah.org/ - The official awesome website<br />
* http://awesome.naquadah.org/wiki/index.php/Main_Page - the awesome wiki<br />
* http://www.penguinsightings.org/desktop/awesome/ - A review</div>Cdwillishttps://wiki.archlinux.org/index.php?title=Conky&diff=60232Conky2009-02-06T04:00:42Z<p>Cdwillis: /* How To display RSS feeds in Conky */</p>
<hr />
<div>[[Category:System Monitor]]<br />
[[Category:HOWTOs (English)]]<br />
[[Category:Eye candy (English)]]<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|Conky}}<br />
{{i18n_entry|Italiano|Conky (Italiano)}}<br />
{{i18n_links_end}}<br />
==Introduction==<br />
Conky is a system monitor software for the X Window System. It is available for Linux and FreeBSD. It is free software released under the terms of the BSD license. Conky is able to monitor many systems variables including CPU, memory, swap, disk space, temperature, top, upload, download, system messages, and much more. It is extremely configurable, however, the configuration can be a little hard to understand. Conky is a fork of torsmo.<br />
<br />
==Installation & Configuration==<br />
*Conky is available in the Extra repository<br />
# pacman -S conky<br />
*Edit config file using an example configuration file from [http://conky.sourceforge.net/screenshots.html homeproject-screenshot]<br />
$ nano ~/.conkyrc<br />
*Alternatively, you can use the default config at '''/etc/xdg/conky/conky.conf'''<br />
$ cp /etc/xdg/conky/conky.conf ~/.conkyrc<br />
<br />
==How to prevent flickering==<br />
Conky needs Double Buffer Extension (DBE) support from X server to prevent flickering, because it can't update window fast enough without it. It can be enabled in /etc/X11/xorg.conf with Load "dbe" line in Section "Module". To enable double-buffer check to have in ~/.conkyrc<br />
double_buffer yes<br />
==Integration with Kdesktop==<br />
Conky with screenshot configuration generate problems with icons visualization. So there are some steps to follow.<br />
*Add these lines to ~/.conkyrc<br />
own_window yes<br />
own_window_type normal<br />
own_window_transparent yes<br />
own_window_hints undecorated,below,sticky,skip_taskbar,skip_page<br />
*if this setting is on, comment it out or delete the line<br />
minimum_size<br />
*To autostart conky create this link<br />
$ ln -s /usr/bin/conky ~/.kde/share/autostart/conkylink<br />
*Install feh<br />
# pacman -S feh<br />
*Make a script to allow transparency with the desktop<br />
For KDE3 users<br />
$ nano -w ~/.kde/share/autostart/fehconky <br />
<br />
#!/bin/bash<br />
feh --bg-scale `dcop kdesktop KBackgroundIface currentWallpaper 1`<br />
For KDE4 users<br />
$ nano -w ~/.kde4/share/autostart/fehconky<br />
<br />
#!/bin/bash<br />
feh --bg-scale "`grep 'wallpaper=' ~/.kde4/share/config/plasma-appletsrc | tail --lines=1 | sed 's/wallpaper=//'`"<br />
use --bg-center if you use a centered wallpaper<br />
*Make it executable<br />
$ chmod +x ~/.kde/share/autostart/fehconky<br />
*Optionally instead using a script you can add the corresponding line to the bottom of .conkyrc<br />
$ nano ~/.conkyrc<br />
For KDE3<br />
${exec feh --bg-scale `dcop kdesktop KBackgroundIface currentWallpaper 1`}<br />
For KDE4<br />
${exec feh --bg-scale "`grep 'wallpaper=' ~/.kde4/share/config/plasma-appletsrc | tail --lines=1 | sed 's/wallpaper=//'`"}<br />
<br />
==How To Display Information About Available Package Updates in Conky==<br />
Take a look at the following threads for scripts to display information about available updates in conky.<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=57291 Script to display the number of packages waiting for update.]<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=37284 Update notifier in python]<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=53761 Scrolling package update notifier]<br />
<br />
==How to display a weather forecast in Conky==<br />
See [http://bbs.archlinux.org/viewtopic.php?id=37381 this thread].<br />
<br />
==How To display RSS feeds in Conky==<br />
Conky has the ability to display RSS feeds natively without the need for an outside script to run and output into conky. For example, to display the titles of the ten most recent Planet Arch updates and refresh the feed every minute you would put this into your .conkyrc:<br />
<br />
${rss http://planet.archlinux.org/rss20.xml 1 item_titles 10 }<br />
<br />
== External links ==<br />
*[http://bbs.archlinux.org/viewtopic.php?id=39906 Conky Configs on arch forums]<br />
*[http://conky.sourceforge.net/ Official website]<br />
*[http://freshmeat.net/projects/conky/ Conky] on [[wikipedia:Freshmeat|Freshmeat]]<br />
*[http://sourceforge.net/projects/conky/ Conky] on [[wikipedia:sourceforge.net|SourceForge]]<br />
*[irc://chat.freenode.org/conky #conky] IRC chat channel on [[wikipedia:Freenode|freenode]]<br />
*[http://novel.evilcoder.org/wiki/index.php/ConkyFAQ FAQ]</div>Cdwillishttps://wiki.archlinux.org/index.php?title=Conky&diff=60231Conky2009-02-06T03:17:39Z<p>Cdwillis: </p>
<hr />
<div>[[Category:System Monitor]]<br />
[[Category:HOWTOs (English)]]<br />
[[Category:Eye candy (English)]]<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|Conky}}<br />
{{i18n_entry|Italiano|Conky (Italiano)}}<br />
{{i18n_links_end}}<br />
==Introduction==<br />
Conky is a system monitor software for the X Window System. It is available for Linux and FreeBSD. It is free software released under the terms of the BSD license. Conky is able to monitor many systems variables including CPU, memory, swap, disk space, temperature, top, upload, download, system messages, and much more. It is extremely configurable, however, the configuration can be a little hard to understand. Conky is a fork of torsmo.<br />
<br />
==Installation & Configuration==<br />
*Conky is available in the Extra repository<br />
# pacman -S conky<br />
*Edit config file using an example configuration file from [http://conky.sourceforge.net/screenshots.html homeproject-screenshot]<br />
$ nano ~/.conkyrc<br />
*Alternatively, you can use the default config at '''/etc/xdg/conky/conky.conf'''<br />
$ cp /etc/xdg/conky/conky.conf ~/.conkyrc<br />
<br />
==How to prevent flickering==<br />
Conky needs Double Buffer Extension (DBE) support from X server to prevent flickering, because it can't update window fast enough without it. It can be enabled in /etc/X11/xorg.conf with Load "dbe" line in Section "Module". To enable double-buffer check to have in ~/.conkyrc<br />
double_buffer yes<br />
==Integration with Kdesktop==<br />
Conky with screenshot configuration generate problems with icons visualization. So there are some steps to follow.<br />
*Add these lines to ~/.conkyrc<br />
own_window yes<br />
own_window_type normal<br />
own_window_transparent yes<br />
own_window_hints undecorated,below,sticky,skip_taskbar,skip_page<br />
*if this setting is on, comment it out or delete the line<br />
minimum_size<br />
*To autostart conky create this link<br />
$ ln -s /usr/bin/conky ~/.kde/share/autostart/conkylink<br />
*Install feh<br />
# pacman -S feh<br />
*Make a script to allow transparency with the desktop<br />
For KDE3 users<br />
$ nano -w ~/.kde/share/autostart/fehconky <br />
<br />
#!/bin/bash<br />
feh --bg-scale `dcop kdesktop KBackgroundIface currentWallpaper 1`<br />
For KDE4 users<br />
$ nano -w ~/.kde4/share/autostart/fehconky<br />
<br />
#!/bin/bash<br />
feh --bg-scale "`grep 'wallpaper=' ~/.kde4/share/config/plasma-appletsrc | tail --lines=1 | sed 's/wallpaper=//'`"<br />
use --bg-center if you use a centered wallpaper<br />
*Make it executable<br />
$ chmod +x ~/.kde/share/autostart/fehconky<br />
*Optionally instead using a script you can add the corresponding line to the bottom of .conkyrc<br />
$ nano ~/.conkyrc<br />
For KDE3<br />
${exec feh --bg-scale `dcop kdesktop KBackgroundIface currentWallpaper 1`}<br />
For KDE4<br />
${exec feh --bg-scale "`grep 'wallpaper=' ~/.kde4/share/config/plasma-appletsrc | tail --lines=1 | sed 's/wallpaper=//'`"}<br />
<br />
==How To Display Information About Available Package Updates in Conky==<br />
Take a look at the following threads for scripts to display information about available updates in conky.<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=57291 Script to display the number of packages waiting for update.]<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=37284 Update notifier in python]<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=53761 Scrolling package update notifier]<br />
<br />
==How to display a weather forecast in Conky==<br />
See [http://bbs.archlinux.org/viewtopic.php?id=37381 this thread].<br />
<br />
==How To display RSS feeds in Conky==<br />
Conky has the ability to display RSS feeds natively without the need for an outside script to run and output into conky. For example, to display the ten most recent Planet Arch updates you would put this into your .conkyrc:<br />
<br />
${rss http://planet.archlinux.org/rss20.xml 1 item_titles 10 }<br />
<br />
== External links ==<br />
*[http://bbs.archlinux.org/viewtopic.php?id=39906 Conky Configs on arch forums]<br />
*[http://conky.sourceforge.net/ Official website]<br />
*[http://freshmeat.net/projects/conky/ Conky] on [[wikipedia:Freshmeat|Freshmeat]]<br />
*[http://sourceforge.net/projects/conky/ Conky] on [[wikipedia:sourceforge.net|SourceForge]]<br />
*[irc://chat.freenode.org/conky #conky] IRC chat channel on [[wikipedia:Freenode|freenode]]<br />
*[http://novel.evilcoder.org/wiki/index.php/ConkyFAQ FAQ]</div>Cdwillishttps://wiki.archlinux.org/index.php?title=GNOME_tips&diff=57610GNOME tips2009-01-11T23:03:06Z<p>Cdwillis: /* gimp */</p>
<hr />
<div>[[Category:Desktop environments (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|Gnome Tips}}<br />
{{i18n_entry|简体中文|Gnome Tips (简体中文)}}<br />
{{i18n_links_end}}<br />
<br />
==Configuration Tips==<br />
===Better Video Performance===<br />
<br />
Some users report that, if they move the player window while playing a video file, a blue border appears around the video while it is moving. If you experience this, go to Desktop->Preferences->Multimedia Systems Selector, and under video change the "Default Sink" to "XWindows (No Xv)". When you click test, the blue border should be gone and on the whole, video should perform better.<br />
<br />
Edit: This no longer applies to Gnome 2.20 and later ([[User:Evanlec|Evanlec]])<br />
<br />
===Add/Edit GDM Sessions===<br />
To add or edit sessions to GDM:<br />
The GDM configuration file is located at /opt/gnome/etc/gdm/gdm.conf. The gdm.conf file links to the desktop/window manager sessions in the folder /etc/X11/sessions. The sessions are in the format *.desktop.<br />
<b>To add a new session</b><br />
#Copy an existing *.desktop file to use as a template for a new session:<br />
<pre><br />
cd /etc/X11/sessions<br />
cp enlightenment.desktop waimea.desktop<br />
</pre><br />
#Modify the template *.desktop file to open the required window manager:<br />
<pre><br />
nano waimea.desktop<br />
</pre><br />
Alternatively, you can open the new session in KDM. This creates the *.desktop file. Then return to using GDM and the new session will be available.<br />
<br />
===Tweaking===<br />
If your gnome applications seem sluggish and gnome hangs at start-up after killing the previous session, it's likely you haven't set your /etc/hosts file correctly <br />
and your /etc/hosts file includes:<br />
<pre><br />
127.0.0.1 localhost.localdomain localhost YOURHOSTNAME<br />
</pre><br />
Then run "/bin/hostname YOURHOSTNAME" and "/sbin/ifconfig lo up" as root.<br />
<br />
also see [http://wiki.archlinux.org/index.php/Configuring_network]<br />
<br />
==Misc Tips==<br />
===Screen Lock===<br />
#Make sure that dbus is running (probably a good idea to add it to the daemons array in rc.conf).<br />
#Install xscreensaver<br />
<pre><br />
pacman -S xscreensaver<br />
</pre><br />
#Go to Desktop -> Preferences -> Screensaver<br />
#Enable one or more screensavers<br />
#Lock Screen will now start your screensaver and require your password to stop it.<br />
<br />
<b>or</b> you can install gnome-screensaver<br />
<br />
<pre><br />
pacman -S gnome-screensaver<br />
</pre><br />
<br />
===Unlock Gnome-keyring on Login===<br />
In /etc/pam.d/gdm, add lines like this at the end:<br />
auth optional pam_gnome_keyring.so<br />
session optional pam_gnome_keyring.so auto_start<br />
<br />
In /etc/pam.d/gnome-screensaver, add a line like this:<br />
auth optional pam_gnome_keyring.so<br />
<br />
In /etc/pam.d/passwd, add a line like this:<br />
password optional pam_gnome_keyring.so<br />
<br />
http://live.gnome.org/GnomeKeyring/Pam<br />
<br />
<br />
'''Easier way:''' Install SEAHORSE with "pacman -S seahorse". Now you find under "Applications-> Accessories-> Password and Encryption Settings" a nice GUI where you can set for the keyring "Automatically unlocked when user logs in".<br />
<br />
===Nautilus Tips===<br />
Get a certain path in spatial view? Just type:<br />
<pre>control + L</pre><br />
<br />
====Change Browser Mode (Spatial View)====<br />
#Start gconf-editor<br />
#Browse to apps/nautilus/preferences<br />
#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")<br />
Or you can do this through the preferences:<br />
#In a Nautilus window go to Edit>>Preferences<br />
#Change to the Behaviour tab<br />
#Check (or uncheck) Always Open in Browser Windows<br />
<br />
===Speed Up Panel Autohide===<br />
If you find that your panels are taking too long to appear/disappear when using the Panel Autohide feature, try this;<br />
# Start gconf-editor<br />
# Browse to /apps/panel/global<br />
# Set panel_hide_delay and panel_show_delay to more sensible (integer) values. Note that these values represent milliseconds!<br />
<br />
===GNOME Menu Tips===<br />
====Speed Tweak====<br />
You can remove the delay in GNOME menus by running this command:<br />
<br />
echo "gtk-menu-popup-delay = 0" >> ~/.gtkrc-2.0<br />
<br />
Or just add "gtk-menu-popup-delay = 0" (without quotes) to .gtkrc-2.0<br />
<br />
====Menu Editing====<br />
Most Gnome users complain about the menu. Changing menu entries system-wide or for one or several users alone is poorly documented.<br />
<br />
=====User menus=====<br />
Recent versions of Gnome (ie, v2.22) 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.<br />
<br />
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/2.22/menustructure-desktopentry.html.en|the Gnome documentation].<br />
<br />
Or install Alacarte, which makes it easy to create, change and remove menu entries with a GUI. Do this with:<br />
<br />
pacman -S alacarte<br />
<br />
=====Group menus, System menus=====<br />
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.<br />
* Edit one of them to fit your needs for a new application, then save it.<br />
* 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.<br />
* Save it as a menu entry for a group or user alone <br> You may also have different user permissions; for example, some menu entries should only be available for a group or for one user.<br />
<br />
Here is an example how a Scite menu entry definition file could look:<br />
<br />
<pre><br />
[Desktop Entry]<br />
Encoding=UTF-8<br />
Name=SciTE<br />
Comment=SciTE editor<br />
Type=Application<br />
Exec=/usr/bin/scite<br />
Icon=/usr/share/pixmaps/scite_48x48.png<br />
Terminal=false<br />
Categories=GNOME;Application;Development;<br />
StartupNotify=true<br />
</pre><br />
<br />
====Custom Icon====<br />
<br />
This is a quick guide on changing the gnome "foot" icon of your main menu to the icon of your choice.<br />
<br />
* Open the configuration editor in gnome (it should be in System Tools of your main menu) or run <code>gconf-editor</code><br />
* 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).<br />
* Set the path to your icon in the "Custom_Icon" field.<br />
* Check "Use_Custom_Icon" a little ways down.<br />
* To see the change without having to restart X, open a terminal window and type:<br />
killall gnome-panel<br />
<br />
==Useful Add-ons==<br />
===FAM===<br />
FAM allows gnome to do such useful things as automatically update the menu when new applications are installed, and refresh nautilus when a directory it is viewing is changed.<br />
<br />
See the [[FAM|FAM Wiki]] for instructions on how to install it.<br />
<br />
===Gnome System Monitor===<br />
This application appears when the "System Monitor" applet is clicked, and displays the processor/memory usage of all running applications. It is not installed by default in the GNOME group, so you need to install it separately using:<br />
pacman -Sy gnome-system-monitor<br />
<br />
===Burning CDs from Nautilus===<br />
pacman -Sy nautilus-cd-burner<br />
<br />
===Gnome System Tools===<br />
This adds several Gnome menu items under System->Administration, specifically <br />
user management, date and time, network configuration, runlevels, and shared folders through <br />
samba or NFS. See [http://www.gnome.org/projects/gst/ Gnome documentation].<br />
pacman -Sy gnome-system-tools<br />
'''Pay attention to the post-install message from pacman.'''<br />
<br />
===Gdesklets: Desktop Candy===<br />
Put a clock, calendar, weather report, and more onto your desktop<br />
pacman -S gdesklets<br />
You can find more desklets at [http://www.gdesklets.de/?q=desklet/browse gdesklets.org]. To install them, download the files. Next, in the Gnome menu, open Applications->Accessories->gDesklets. When the gDesklets Shell appears, drag the new gdesklet file onto the shell. If you want gdesklets to load when you log in, click on the Gnome menu under System->Preferences->Sessions. Choose "Startup Programs", click "add", and type in the data. The command should be /usr/bin/gdesklets. You can always find such a path by typing "whereis gdesklets".<br />
<br />
==Other Applications==<br />
These are some other nice applications and utilities for gnome, most of which can be downloaded all at once with:<br />
pacman -Sy gnome-extra<br />
This is a group, so it is quite easy to choose not to download some of the packages, such as the documentation.<br />
<br />
===gnome-terminal===<br />
Install this application before logging into gnome for the first time unless you prefer to use xterm.<br />
<br />
====Drop Down Consoles====<br />
Gnome has a few dropdown consoles inspired by the ones found in FPS's such as Quake and Half-life (ie pressing the ~ key)<br />
These follow Yakuake from KDE, below are a few ones native to Gnome.<br />
<br />
=====Guake=====<br />
Guake requires Python, it can be installed via the following command. F12 is the default to toggle the terminal. Guake features mutiple tabs and by default Cntrl+PgUp and Cntrl+PgDown can be used to switch between these terminals. <br />
<br />
pacman -S guake<br />
<br />
You can set transparency and other settings by first toggling to the terminal via F12, right clicking and selecting Preferences.<br><br />
<br />
Guake can be started automatically by adding the following to Gnome Sessions via <br><br />
System -> Preferences -> Sessions<br><br />
Select Add, and these settings can be used:<br><br />
Name: Guake<br><br />
Command: guake &<br><br />
Comment: Guake Dropdown Terminal.<br><br />
<br />
=====Tilda=====<br />
<br />
Tilda is another dropdown terminal for Gnome, I discontinued using it after discovering Guake but here it is. Kindly add to this section if possible.<br />
<br />
pacman -S tilda<br />
<br />
===gedit===<br />
A text editor with syntax highlighting.<br />
<br />
===eog===<br />
Eye-of-Gnome, a handy, fast little image viewer which can re-size and rotate photos.<br />
<br />
===file-roller===<br />
An archive manager which supports many different formats. (Install unrar, unzip, ... to get the respective formats)<br />
<br />
===gcalctool===<br />
A calculator, what else?<br />
<br />
===rhythmbox===<br />
An iTunes like audio library and player.<br />
<br />
===sound-juicer===<br />
CD Ripper, integrates with rhythmbox.<br />
<br />
''To enable default mp3 profiles in preferences menu:''<br />
pacman -S gstreamer0.10-lame gstreamer0.10-taglib<br />
<br />
Note: This should not be necessary anymore, since these packages now are included in gstreamer0.10-ugly-plugins and gstreamer0.10-good-plugins.<br />
<br />
''If you're having other problems with SoundJuicer , click [[User:Munk3h|here]]''<br />
<br />
===totem===<br />
A video player which uses gstreamer for decoding its input.<br />
<br />
===gimp===<br />
An open-source Photoshop alternative for linux. A must-have if you ever do anything with graphics.<br />
<br />
===gftp===<br />
An nice little FTP client for gnome.<br />
<br />
===abiword===<br />
A small, fast, .doc compatible word processor.<br />
<br />
===gnumeric===<br />
A very nice, excel like spreadsheet editor.<br />
<br />
===Leave message feature in gnome screensaver===<br />
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.<br />
Please install notification-daemon to make this work.<br />
<br />
===DevilsPie===<br />
A very useful application that can be run as a daemon within gnome. It manipulates windows allowing you to start programs on a desired desktop or in a size of your choice among many other things. Brings a whole new level of control into the metacity engine. There's a pretty good HOWTO on their [http://live.gnome.org/DevilsPie homepage],<br />
<br />
<br />
<br />
==See also==<br />
* [[Gnome]]</div>Cdwillis