awesome
Az awesome egy nagyon jól beállítható, következő generációs, dinamikus window manager az X számára. Elsősorban haladó felhasználóknak, fejlesztőknek és mindenkinek másnak is szól, akik napi számítógépes feladatokat végeznek, és akik precíz beállított irányítást szeretnének a grafikus környezetük felett. Az awesome a Lua programozási nyelv használatával bővíthető.
Előfeltételek
Szolgáltatások
Válasszon pontosan egyet a következők közül:
- elogind: Önálló logind szoftvercsomag, amely a systemd projektből van kivéve külön formában, hogy használható legyen az OpenRC init rendszerrel, vagy más init rendszerekkel is.
- systemd: A systemd munkamenet követőjét használja. A systemd felhasználóinak itt nincs szükségük további lépésekre.
Egyéb
- D-Bus: Lehetővé teszi a D-Bus üzenetküldő rendszer használatát.
- polkit: Lehetővé teszi a polkit keretrendszer használatát a rendszerszintű szolgáltatások jogosultságainak szabályozására.
- udisks: Lehetővé teszi néhány tárhellyel kapcsolatos szolgáltatás támogatását.
X-szerver
Kövesse az Xorg/Útmutató leírásában található utasításokat az X környezet beállításának érdekében.
X-szerver elindítása
Az alábbi módszerek egyikével indító el az X:
- Display manager: Grafikus bejelentkezési képernyőt biztosít a felhasználó számára.
- X without Display Manager: Egyfelhasználós rendszeren a display managerek fölösleges erőforráspazarlásnak tűnhetnek.
Telepítés
USE jelölőzászlók
USE flags for x11-wm/awesome Dynamic floating and tiling window manager
dbus
|
Enable dbus support for anything that needs it (gpsd, gnomemeeting, etc) |
doc
|
Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead of globally |
gnome
|
Add GNOME support |
test
|
Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently) |
Emerge
Telepítse a x11-wm/awesome szoftvercsomagot:
root #
emerge --ask x11-wm/awesome
Beállítás
Elindítás
Az awesome elindításához tekintse meg a Az X szerver elindítása bekezdést, vagy egyszerűen használja a startx parancsot.
A startx használatához elogind támogatással állítsa be a elogind programot, és hozza létre a következő fájlt:
~/.xinitrc
exec dbus-launch --sh-syntax --exit-with-session awesome
Beállításfájl
Az alapértelmezett beállításfájl az awesome esetében a ~/.config/awesome/rc.lua helyen található. Ha nem létezik egy ilyen könyvtár vagy fájl, akkor létre kell azt hozni. Egy alapértelmezett, gyárilag biztosított beállításfájl a awesome szoftvercsomaggal együtt kerül terjesztésre, amely a /etc/xdg/awesome/rc.lua helyen található. Másolja ezt a beállításfájlt a felhasználó saját könyvtárába.
Először hozza létre az awesome/ könyvtárat:
user $
mkdir -p ~/.config/awesome/
Ezután másolja át a rc.lua beállításfájlt:
user $
cp /etc/xdg/awesome/rc.lua ~/.config/awesome/rc.lua
Ha a x11-terms/xterm szoftvercsomag nincs telepítve, akkor telepítse azt, vagy állítsa be az elérhető parancssort az alapértelmezett parancssorként. Az alábbiakban az alapértelmezett parancssor a konsole, amely a kde-apps/konsole szoftvercsomagnak a részét képezi.
~/.config/awesome/rc.lua
-- This is used later as the default terminal and editor to run.
terminal = "konsole"
A módosítások után érdemes ellenőrizni a beállításfájlt a hibák szempontjából:
user $
awesome -k
✔ Configuration file syntax OK
A media-gfx/feh szoftvercsomag segítségével adja hozzá a háttérkép támogatást:
root #
emerge --ask media-gfx/feh
Például, ha a awsetbg segítségével szeretné beállítani a háttérképet, akkor szerkessze a ~/.config/awesome/theme/theme.lua fájlt:
~/.config/awesome/theme/theme.lua
Egy háttérkép beállítása az awsetbg segítségéveltheme.wallpaper_cmd = { "awsetbg -f .config/awesome/themes/awesome-wallpaper.png" }
Vagy egyszerűen állítsa be a háttérkép tulajdonságát a témában:
~/.config/awesome/theme/theme.lua
Egy háttérkép beállítása a háttérkép tulajdonság használatávaltheme.wallpaper = ".config/awesome/themes/awesome-wallpaper.png"
Címkék
Az awesome esetében a címkék olyan virtuális asztalokat jelentenek, amelyek alatt egy vagy több alkalmazás fut. Lehetőség van egyedi szimbólumok hozzárendelésére ezekhez a címkékhez:
~/.config/awesome/rc.lua
-- {{{ Tags
tags = {}
for s = 1, screen.count() do
tags[s] = awful.tag({ "➊", "➋", "➌", "➍" }, s, layouts[1])
end
-- }}}
Menü
Az alábbiakban egy egyedi awesome menü példája látható:
~/.config/awesome/rc.lua
-- {{{ Menu
myawesomemenu = {
{ "manual", terminal .. " -e man awesome" },
{ "edit config", editor_cmd .. " " .. awesome.conffile },
{ "reload", awesome.restart },
{ "quit", awesome.quit },
{ "reboot", "reboot" },
{ "shutdown", "shutdown" }
}
appsmenu = {
{ "urxvt", "urxvt" },
{ "sakura", "sakura" },
{ "ncmpcpp", terminal .. " -e ncmpcpp" },
{ "luakit", "luakit" },
{ "uzbl", "uzbl-browser" },
{ "firefox", "firefox" },
{ "chromium", "chromium" },
{ "thunar", "thunar" },
{ "ranger", terminal .. " -e ranger" },
{ "gvim", "gvim" },
{ "leafpad", "leafpad" },
{ "htop", terminal .. " -e htop" },
{ "sysmonitor", "gnome-system-monitor" }
}
gamesmenu = {
{ "warsow", "warsow" },
{ "nexuiz", "nexuiz" },
{ "xonotic", "xonotic" },
{ "openarena", "openarena" },
{ "alienarena", "alienarena" },
{ "teeworlds", "teeworlds" },
{ "frozen-bubble", "frozen-bubble" },
{ "warzone2100", "warzone2100" },
{ "wesnoth", "wesnoth" },
{ "supertuxkart", "supertuxkart" },
{ "xmoto" , "xmoto" },
{ "flightgear", "flightgear" },
{ "snes9x" , "snes9x" }
}
mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu },
{ "apps", appsmenu },
{ "games", gamesmenu },
{ "terminal", terminal },
{ "web browser", browser },
{ "text editor", geditor }
}
})
mylauncher = awful.widget.launcher({ image = image(beautiful.awesome_icon),
menu = mymainmenu })
-- }}}
Dátum
Az alábbiakban egy egyedi dátumformátum használatának példája található. A formátum szintaxisa: %Y-%m-%d %H:%M
. A második opció, 60
, az frissítési intervallum másodpercben.
~/.config/awesome/rc.lua
Szöveges óra widget létrehozása-- {{{ Wibox
-- Create a text-clock widget
mytextclock = wibox.widget.textclock(" %Y-%m-%d %H:%M ", 60)
-- }}}
További információért a formátum opciókról kapcsolatban, futtassa a date --help parancsot.
Hangerő szabályozása
A media-sound/volumeicon szoftvercsomag automatikusan képes kezelni a hangerőgombokat, és egy tálcaikon segítségével jeleníti meg a hangerőszintet.
root #
emerge --ask media-sound/volumeicon
Indítsa automatikusan a volumeicon alkalmazást a ~/.xinitrc fájlon belül:
~/.xinitrc
A volumeicon indítása a háttérben az X indításakorvolumeicon &
exec [...]
Alternatívaként egy egyszerű módszer, ha a hangerőgombokat közvetlenül az awesome beállításába adja hozzá:
~/.config/awesome/rc.lua
Hangerőgombokawful.key({ }, "XF86AudioLowerVolume", function () awful.util.spawn("amixer -q sset Master 5%-") end)
awful.key({ }, "XF86AudioRaiseVolume", function () awful.util.spawn("amixer -q sset Master 5%+") end)
MPD multimédiás billentyűgombok
Telepítse a media-sound/mpc szoftvercsomagot, hogy multimédiás billentyűkiosztásokat adjon hozzá az MPD szolgáltatáshoz:
root #
emerge --ask media-sound/mpc
Ezután frissítse az awesome beállítását annak érdekében, hogy a multimédiás billentyűket a megfelelő parancsokhoz rendelhesse hozzá:
~/.config/awesome/rc.lua
Hangerőbillentyű hozzárendelésekawful.key({ }, "XF86AudioNext",function () awful.util.spawn( "mpc next" ) end),
awful.key({ }, "XF86AudioPrev",function () awful.util.spawn( "mpc prev" ) end),
awful.key({ }, "XF86AudioPlay",function () awful.util.spawn( "mpc play" ) end),
awful.key({ }, "XF86AudioStop",function () awful.util.spawn( "mpc pause" ) end),
Ablakrések eltávolítása
A terminálablakok között látható rések eltüntethetők azzal, hogy a size_hints_honor = false
tulajdonságot hozzáadja az awful.rules.rules
táblázathoz, például így:
~/.config/awesome/rc.lua
A size_hints_honor tulajdonság beállításaawful.rules.rules = {
{ rule = { },
properties = { size_hints_honor = false, -- Remove gaps
border_width = beautiful.border_width,
border_color = beautiful.border_normal,
...
Beállítás hibakeresése az Xephyr segítségével
Az Xephyr hasznos eszköz az új beállításfájlok hibakereséséhez, mivel egy X-szerver példányt hoz létre egy kliens ablakban.
user $
Xephyr -ac -nolisten tcp -br -noreset -screen 800x600 :1
Ez a parancs megnyit egy 800x600 méretű ablakot. Az awesome futtatásához nyisson meg egy új terminált, és futtassa a következőt parancsot:
user $
DISPLAY=:1.0 awesome
Ez az awesome ablakkezelőt egy ablakon belül futtatja.
Billentyűparancsok
Ezek a leghasznosabb alapértelmezett billentyűparancsok:
- Super+Mouse1 = Egérrel mozgatja az ablakot.
- Super+Mouse2 = Egérrel átméretezi az ablakot.
- Super+Enter = Parancssor megnyitása.
- Super+r = Parancs futtatása.
- Super+Shift+c = Bezárás.
- Super+m = Maximalizálás.
- Super+n = Minimalizálás.
- Super+Ctrl+n = Minimalizált ablakok visszaállítása.
- Super+f = Teljes képernyő.
- Super+Tab = Előző ablakra váltás.
- Super+Ctrl+Space = Lebegőmód.
Super+j = Bal oldali ablak kijelölése. Super+k = Jobb oldali ablak kijelölése. Super+Shift+j = Ablak mozgatása jobbra. Super+Shift+k = Ablak mozgatása balra.
Super+l = Csempézett ablak átméretezése. Super+h = Csempézett ablak átméretezése.
Super+left / right = Címke váltása. Super+1-9 = Címke váltása. Super+Shift+1-9 = Ablak áthelyezése a címkére.
Egyéni billentyűkiosztások, például a Alt+Tab, beállíthatóak, hogy az awesome használata még élvezetesebb legyen. Például a Alt+Tab használatához az előző ablakra váltáshoz:
~/.config/awesome/rc.lua
Alt-TAB billentyűgombok hozzárendelése-- {{{ Key bindings
globalkeys = awful.util.table.join(
...
-- alt + tab
awful.key({ "Mod1", }, "Tab",
function ()
awful.client.focus.history.previous()
if client.focus then
client.focus:raise()
end
end),
-- }}}
Külső források
- Felhasználói beállításfájlok az awesome Wikipédián (web.archive.org)
- A desktop profil váltása USE alapértelmezettként az elogind számára