バージョン3.4.15は公式のportageブランチで安定していますが、USEフラグが「dbus」である最後の利用可能なバージョン3.5.2-r1を置くことにしました。 ログインマネージャーとしてSLiMを選択しました。 必要なすべてのパッケージをアセンブルした後、/ etc / conf.d / xdmを開き、デフォルトのマネージャーとしてSLiMをインストールします。
DISPLAYMANAGER="slim"
次に、/ etc / slim.confに小さな変更を加える必要があります
# login_cmd exec /bin/sh - ~/.xinitrc %session
login_cmd exec /bin/bash -login ~/.xinitrc %session
# login_cmd exec /bin/bash -login /usr/share/slim/Xsession %session
この設定では、/ usr / share / slim / themesにあるお気に入りのテーマを選択することもできます。 デフォルトを管理します。 いくつかの興味深いパラメータもありますが、私はそれらに触れませんでした-必要はありません。
私がurxvtを使用することにした端末。 私はそれを組み立てました:
rxvt USE="xgetdefaults"
rxvt-unicode USE="256-color focused-urgency font-styles mousewheel perl startup-notification vanilla xft"
実際、wmが起動するように、変更を〜/ .xinitrcファイルに組み込む必要があります(存在しない場合は作成します)。
urxvtd --quiet --opendisplay --fork &
pulseaudio --start &
exec ck-launch-session dbus-launch awesome
最初の行-urxvtデーモン(将来、クライアントはurxvtcと呼ばれます)を起動します。2番目の行ではpulseaudioを明確に起動し、最後にawesomeを起動します。 コンソールキットではなくsystemdを使用している場合、あなたのすてきな呼び出しは異なるように見えますが、私はsystemdを使用していないので、そのふりをすることはできません。
xdmを実行します。
sudo /etc/init.d/xdm start
ログインして、まさにそのような写真を観察します。
美しいテーマ、設定、すばらしいウィジェットを探して、私は長い間さまざまなフォーラムに登りました。 そのような非合法的なユーザーに出くわしました(彼はgithubにたくさんの記事と面白いものを持っています)
そして彼のテーマの新しいバージョン:
それは非常に感銘を受け、私はそのトピックに自分自身を置くことにしました-しかし、それは失敗しました。 テーマが機能しませんでした。 1つのエラーを修正すると、新しいエラーが表示されるなど。 後で彼の投稿を見ました。内容は次のようなものでした:「松葉杖がたくさんあるので、初心者を置くことはお勧めしません。多くの時間を費やしますが、機能するという事実ではありません。」 実際に起こった。 それから私は自分で設定を書くことにしました。 Luaの知識はまったくありませんでしたが、Googleは常に助けてくれます。
構成ファイルは/etc/xdg/awesome/rc.luaにあります-しかし、それを触ることはお勧めしません。ただコピーするだけです
cp /etc/xdg/awesome/rc.lua ~/.config/awesome/rc.lua
(誰かが.configディレクトリを持っていなくても、心配しないでください-ただ作成してください。
mkdir ~/.config
mkdir ~/.config/awesome
設定を始めましょう。 (はい、私は多くの記事を使用して、書き直しました)
ここでは、接続されているすべてのライブラリをリストします
--------------------------------------------- --- --- --------------------------------------------- local gears = require("gears") local awful = require("awful") local vicious = require("vicious") awful.rules = require("awful.rules") require("awful.autofocus") local wibox = require("wibox") local beautiful = require("beautiful") local naughty = require("naughty") local menubar = require("menubar") local dbus = require("dbus")
すべてが明らかなようです:)
--------------------------------------------------------- --- --- --------------------------------------------------------- os.setlocale("ru_RU.UTF-8")
この部分は変更されないままです-これはエラーハンドラです
-- {{{ Error handling -- Check if awesome encountered an error during startup and fell back to -- another config (This code will only ever execute for the fallback config) if awesome.startup_errors then naughty.notify({ preset = naughty.config.presets.critical, title = "Oops, there were errors during startup!", text = awesome.startup_errors }) end -- Handle runtime errors after startup do local in_error = false awesome.connect_signal("debug::error", function (err) -- Make sure we don't go into an endless error loop if in_error then return end in_error = true naughty.notify({ preset = naughty.config.presets.critical, title = "Oops, an error happened!", text = err }) in_error = false end) end -- }}}
私はzenburnテーマを基礎としました(/ usr / share / awesome / themes / zenburnにあります)。 そして、私はそれを自分自身で少し変更することにしました(今のところほとんど重要ではありません)
------------------------------------- --- --- ------------------------------------- beautiful.init("/home/worm2fed/.config/awesome/themes/worm2fed/theme.lua")
最後の行の-nwオプションにより、emacsを端末で実行できます
---------------------------------------------------------------------- --- --- ---------------------------------------------------------------------- terminal = "urxvtc" -- browser = "google-chrome-stable" -- editor = os.getenv("EDITOR") or "emacs" -- editor_cmd = terminal .. " -nw" .. editor --
インデントは恐ろしく外れましたが、エディターではすべて美しいです。 修飾キー-これはスーパーとも呼ばれ、ウィンドウのロゴが付いたキーです。 ほとんどの場合、Mod4ですが、異なる場合があります。 そして、設定に必要なマウスボタンとキーのさらなるコード。 マウスコードを確認するには:
xev | grep 'button'
修飾キーとその他のキーの場合:
xev | grep 'keycode'
ボタンとキーコード
----------------------------------------- --- - --- ----------------------------------------- modkey = "Mod4" --------------------------- --- --- --------------------------- left_button = 1 wheel_button = 2 right_button = 3 plus_button = 4 minus_button = 5 wheel_left_button = 6 wheel_write_button = 7 ----------------------------------- --- - --- ----------------------------------- key_V = "#55" key_Z = "#52" key_Y = "#29" key_J = "#44" key_K = "#45" key_N = "#57" key_M = "#58" key_F = "#41" key_R = "#27" key_L = "#46" key_C = "#54" key_W = "#25" key_X = "#53" key_Q = "#24" key_H = "#43" key_Tab = "#23" key_Tilda = "#49" key_U = "#30" key_E = "#26" key_T = "#28" key_P = "#33" key_O = "#32" key_Return = "#36" key_Left = "#113" key_Right = "#114" key_Esc = "#9" key_Print = "#107" key_Alt_R = "#108" key_Alt_L = "#64" key_Space = "#65" key_Ctrl_R = "#105" key_Ctrl_L = "#37" key_Home = "#110" key_F1 = "#67" key_Mute = "#121" key_Vol_Down = "#122" key_Vol_Up = "#123"
ここで、必要なウィンドウレイアウトを選択しました
------------------------------------------------------------------------------ --- Layouts - --- ----------------------------------------------------------------------------- local layouts = { awful.layout.suit.floating, -- 1 awful.layout.suit.tile, -- 2 , () --awful.layout.suit.tile.left, -- * awful.layout.suit.tile.bottom, -- 3 --awful.layout.suit.tile.top, -- * awful.layout.suit.fair, -- 4 --awful.layout.suit.fair.horizontal, --awful.layout.suit.spiral, awful.layout.suit.spiral.dwindle, -- 5 awful.layout.suit.max, -- 6 --awful.layout.suit.max.fullscreen, awful.layout.suit.magnifier -- 7 }
ここではすべてが明確です。
-------------------------------------- --- --- -------------------------------------- -- if beautiful.wallpaper then -- for s = 1, screen.count() do -- ( ) gears.wallpaper.maximized(beautiful.wallpaper, s, true) end end
タグ名は絶対に何でも構いません-ギリシャ語の文字を選択しました-unlogic画面のように。 上記で定義した各タグに独自のレイアウトを割り当てます。
タグ
--------------------------------------------------------- --- - --- --------------------------------------------------------- -- tags = { -- names = { " α ", " β ", " ζ ", " Θ ", " Ξ ", " ς ", " ψ "}, -- layout = { layouts[1], layouts[2], layouts[3], layouts[4], layouts[5], layouts[6], layouts[7] }} -- for s = 1, screen.count() do -- , tags[s] = awful.tag(tags.names, s, tags.layout) end
メニューを収集します(なぜ必要なのかわかりません、使用しませんでした)
------------------------------ --- --- ------------------------------ --- - internet_menu = { -- -- {< >, < >, <>} {" Firefox", "firefox-bin", beautiful.firefox_icon}, {" Chrome", "google-chrome-stable", beautiful.chrome_icon}, {" Pidgin", "pidgin"} } --- editors_menu = { {" Eclipse", "eclipse-bin-4.2"}, {" Emacs", "emacs"} } --- office_menu = { {" Word", "libreoffice --writer"}, {" Exel", "libreoffice --calc"} } main_menu = awful.menu({ -- items = { {" ", internet_menu}, {" ", editors_menu}, {" LibreOffice", office_menu}, {" "}, {" ", "reboot", beautiful.reboot_icon}, {" ", "halt", beautiful.poweroff_icon}, {" ", awesome.quit, beautiful.logout_icon} } }) ------------------------------------------------------------------ --- - --- ------------------------------------------------------------------ launcher = awful.widget.launcher({ image = beautiful.gentoo_icon, menu = main_menu })
しかし、理由はわかりませんでした。
-- Menubar configuration menubar.utils.terminal = terminal -- Set the terminal for applications that require it -- }}}
記事は非常に大きく出たので、 ここで続けて 、それを断片に分割しなければなりませんでした