[Awesome] me prend 150MO de ram

Xorg, Compiz, KDE / Gnome / Xfce / Fluxbox / e17 / fvwm ... GDM/KDM/XDM...
Shanx
Hankyu
Messages : 42
Inscription : dim. 08 août 2010, 10:28

[Awesome] me prend 150MO de ram

Message par Shanx »

Bien le bonjour à tous,
je suis un nouvel utilisateur d’Awesome, qui me plait bien mais qui à le regrettable défaut de me bouffer 150Mo de ram, ce qui, vous en conviendrez, fait un peu trop. Je n’ai aucune idée d’où peut venir le problème, sachant que le rpoblème persiste avec la conf’ par défaut.
Je l’ai installé via yaourt, et c’est la version awesome 3.4.10-2. Voici mon rc.lua :

Code : Tout sélectionner

-- Standard awesome library
require("awful")
require("awful.autofocus")
require("awful.rules")
-- Theme handling library
require("beautiful")
-- Notification library
require("naughty")
 
-- Sound Widget
cardid  = 0
channel = "Master"
function volume (mode, widget)
    if mode == "update" then
             local fd = io.popen("amixer -c " .. cardid .. " -- sget " .. channel)
             local status = fd:read("*all")
             fd:close()
 
        local volume = string.match(status, "(%d?%d?%d)%%")
        volume = string.format("% 3d", volume)
 
        status = string.match(status, "%[(o[^%]]*)%]")
 
        if string.find(status, "on", 1, true) then
            volume = "| Vol:<span color='green'>" .. volume .. "</span>% "
        else
            volume = "| Vol:<span color='red'>" .. volume .. "</span>M "
        end
        widget.text = volume
    elseif mode == "up" then
        io.popen("amixer -q -c " .. cardid .. " sset " .. channel .. " 5%+"):read("*all")
        volume("update", widget)
    elseif mode == "down" then
        io.popen("amixer -q -c " .. cardid .. " sset " .. channel .. " 5%-"):read("*all")
        volume("update", widget)
    else
        io.popen("amixer -c " .. cardid .. " sset " .. channel .. " toggle"):read("*all")
        volume("update", widget)
    end
end
 
-- Enable mocp
function moc_control (action)
    local moc_info,moc_state
 
    if action == "next" then
        io.popen("mocp --next")
    elseif action == "previous" then
        io.popen("mocp --previous")
    elseif action == "stop" then
        io.popen("mocp --stop")
    elseif action == "play_pause" then
        moc_info = io.popen("mocp -i"):read("*all")
            moc_state = string.gsub(string.match(moc_info, "State: %a*"),"State: ","")
 
        if moc_state == "PLAY" then
            io.popen("mocp --pause")
        elseif moc_state == "PAUSE" then
            io.popen("mocp --unpause")
        elseif moc_state == "STOP" then
            io.popen("mocp --play")
        end
    end
end
 
-- {{{ Variable definitions
-- Themes define colours, icons, and wallpapers
-- beautiful.init("/usr/share/awesome/themes/shertheme/theme.lua")
beautiful.init("/usr/share/awesome/themes/default/theme.lua")
 
-- This is used later as the default terminal and editor to run.
--terminal = "xterm"
terminal = "urxvt -transparent -sh 20 -bg black -cr green -fg green +sb -sl 500"
editor = os.getenv("EDITOR") or "vim"
editor_cmd = terminal .. " -e " .. editor
 
-- Default modkey.
-- Usually, Mod4 is the key with a logo between Control and Alt.
-- If you do not like this or do not have such a key,
-- I suggest you to remap Mod4 to another key using xmodmap or other tools.
-- However, you can use another modifier like Mod1, but it may interact with others.
modkey = "Mod1"
 
-- Table of layouts to cover with awful.layout.inc, order matters.
layouts =
{
    awful.layout.suit.floating,
    awful.layout.suit.tile,
    awful.layout.suit.tile.left,
    awful.layout.suit.tile.bottom,
    awful.layout.suit.tile.top,
    awful.layout.suit.fair,
    awful.layout.suit.fair.horizontal,
    awful.layout.suit.spiral,
    awful.layout.suit.spiral.dwindle,
    awful.layout.suit.max,
    awful.layout.suit.max.fullscreen,
    awful.layout.suit.magnifier
}
-- }}}
 
-- {{{ Tags
-- Define a tag table which hold all screen tags.
tags = {}
for s = 1, screen.count() do
    -- Each screen has its own tag table.
    tags[s] = awful.tag({ 1, 2, 3, 4, 5, 6, 7, 8, 9 }, s, layouts[1])
end
-- }}}

-- {{{ Menu
-- Create a laucher widget and a main menu
myawesomemenu = {
   { "manual", terminal .. " -e man awesome" },
   { "edit config", editor_cmd .. " " .. awful.util.getdir("config") .. "/rc.lua" },
   { "restart", awesome.restart },
   { "quit", awesome.quit }
}

mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
                                    { "open terminal", terminal }
                                  }
                        })

mylauncher = awful.widget.launcher({ image = image(beautiful.awesome_icon),
                                     menu = mymainmenu })
-- }}}
 
-- {{{ Wibox
 
-- Create Volume Control Widget
 tb_volume = widget({ type = "textbox", name = "tb_volume", align = "right" })
 tb_volume:buttons(awful.util.table.join(
    awful.button({ }, 4, function () volume("up", tb_volume) end),
    awful.button({ }, 5, function () volume("down", tb_volume) end),
    awful.button({ }, 1, function () volume("mute", tb_volume) end)
 ))
 volume("update", tb_volume)
 
-- refresh the Volume Control Widget
tb_volume_timer = timer({ timeout = 10 })
tb_volume_timer:add_signal("timeout", function () volume("update", tb_volume) end)
tb_volume_timer:start()
 
-- Moc Widget
tb_moc = widget({ type = "textbox", align = "right" })
 
function hook_moc()
       moc_info = io.popen("mocp -i"):read("*all")
       moc_state = string.gsub(string.match(moc_info, "State: %a*"),"State: ","")
       if moc_state == "PLAY" or moc_state == "PAUSE" then
           moc_artist = string.gsub(string.match(moc_info, "Artist: %C*"), "Artist: ","")
           moc_title = string.gsub(string.match(moc_info, "SongTitle: %C*"), "SongTitle: ","")
           moc_curtime = string.gsub(string.match(moc_info, "CurrentTime: %d*:%d*"), "CurrentTime: ","")
           moc_totaltime = string.gsub(string.match(moc_info, "TotalTime: %d*:%d*"), "TotalTime: ","")
           if moc_artist == "" then
               moc_artist = "unknown artist"
           end
           if moc_title == "" then
               moc_title = "unknown title"
           end
       -- moc_title = string.format("%.5c", moc_title)
           moc_string = moc_artist .. " - " .. moc_title .. "(" .. moc_curtime .. "/" .. moc_totaltime .. ")"
           if moc_state == "PAUSE" then
               moc_string = "PAUSE - " .. moc_string .. ""
           end
       else
           moc_string = "-- not playing --"
       end
       return moc_string
end
 
-- refresh Moc widget
--awful.hooks.timer.register(1, function() tb_moc.text = '| ' .. hook_moc() .. ' ' end)
moc_timer = timer({timeout = 1})
moc_timer:add_signal("timeout", function() tb_moc.text = '| ' .. hook_moc() .. ' ' end)
moc_timer:start()
 
-- Create a CPU widget
jiffies = {}
function activecpu()
    local s, str
 
    for line in io.lines("/proc/stat") do
        local cpu,newjiffies = string.match(line, "(cpu)\ +(%d+)")
        if cpu and newjiffies then
            if not jiffies[cpu] then
                jiffies[cpu] = newjiffies
            end
            -- The string.format prevents your task list from jumping around
            -- When CPU usage goes above/below 10%
            str = string.format("%02d", newjiffies-jiffies[cpu])
 
            if str < "31" then
                str = '<span color="green">' .. str .. '</span>'
            elseif str < "51" then
                str = '<span color="yellow">' .. str .. '</span>'
            elseif str < "70" then
                str = '<span color="orange">' .. str .. '</span>'
            else
                str = '<span color="red">' .. str .. '</span>'
            end
 
            s = '| CPU: ' .. str .. '% '
            jiffies[cpu] = newjiffies
        end
    end
 
    return s
end
 
cpuinfo = widget({ type = "textbox", name = "cpuinfo" })
 
-- register the hook to update the display
-- awful.hooks.timer.register(1, function() cpuinfo.text = activecpu() end)
cpuinfo_timer = timer({timeout = 1})
cpuinfo_timer:add_signal("timeout", function() cpuinfo.text = activecpu() end)
cpuinfo_timer:start()
 
 
-- Create CPU Temp Widget
function activecputemp()
    local temp
 
    io.input("/sys/bus/acpi/devices/LNXTHERM\:00/thermal_zone/temp")
    temp = io.read("*number")/1000
 
    if temp < 46 then
        temp = '<span color="turquoise">' .. temp .. '</span>'
    elseif    temp < 61 then
        temp = '<span color="yellow">' .. temp .. '</span>'
    elseif  temp < 76 then
        temp = '<span color="orange">' .. temp .. '</span>'
    else
        temp = '<span color="red">' .. temp .. '</span>'
    end
 
    return temp
end
 
cputemp = widget({ type = "textbox" , name = "cputemp" })
 
-- Assign a hook to update temperature
-- awful.hooks.timer.register(1, function() cputemp.text = "@ " .. activecputemp() .. "°C | RAM: " end)
cputemp_timer = timer({timeout = 1})
cputemp_timer:add_signal("timeout", function() cputemp.text = "@ " .. activecputemp() .. "°C | RAM: " end)
cputemp_timer:start()
 
-- Battery status Widget
 
-- get the full capacity of the battery
for line in io.lines("/proc/acpi/battery/BAT0/info") do
    bat_stat = string.match(line, "last full capacity:\ +(%d+)")
 
    if bat_stat then
        -- define stat_tot for reuse later for battery status
        stat_tot = bat_stat
    end
end
 
function activebat()
    local stat_actu, res
 
    for line in io.lines("/proc/acpi/battery/BAT0/state") do
        local present = string.match(line, "present:\ +(%a+)")
        if (present == "no") then
            return '<span color="red">not present</span>'
        end
        local status  =  string.match(line, "remaining capacity:\ +(%d+)")
        local state = string.match(line, "charging state:\ +(%a+)")
        if status then
            stat_actu = status
        end
        if state then
            stat_bat = state
        end
    end
 
    res = string.format("%.2f", (stat_actu/stat_tot) * 100);
 
    if ((stat_actu/stat_tot) * 100)  < 10 then
        res = '<span color="red">' .. res .. '</span>'
    elseif    ((stat_actu/stat_tot) * 100) < 20 then
        res = '<span color="orange">' .. res .. '</span>'
    elseif  ((stat_actu/stat_tot) * 100)  < 30 then
        res = '<span color="yellow">' .. res .. '</span>'
    elseif ((stat_actu/stat_tot) * 100) >= 100 then
        return '<span color="green">fully charged</span>'
    else
        res = '<span color="green">' .. res .. '</span>'
    end
 
    if (stat_bat == 'discharging') then
        stat_bat = '<span color="red">discharging</span>'
    elseif (stat_bat == 'charging') then
        stat_bat = '<span color = "green">charging</span>'
    end
 
    res = res .. '% ' .. stat_bat
 
 
    return res
end
 
batinfo = widget({ type = "textbox" , name = "batinfo" })
 
-- Assign a hook to update info
-- awful.hooks.timer.register(1, function() batinfo.text = "BAT: " .. activebat() .. " |" end)
activebat_timer = timer({timeout = 1})
activebat_timer:add_signal("timeout", function() batinfo.text = "BAT: " .. activebat() .. " |" end)
activebat_timer:start()
 
-- Create a RAM widget giving the MB used by the RAM
-- declare memtot for reuse below
memtot = 2056100
 
function activeram()
    local active, ramusg, res
 
    for line in io.lines("/proc/meminfo") do
        for key , value in string.gmatch(line, "(%w+):\ +(%d+).+") do
            if key == "Active" then active = tonumber(value)
            end
        end
    end
 
    ramusg = (active/memtot)*100
 
    res = string.format("%.2f", (active/1024))
 
    if ramusg < 51 then
        res = '<span color="green">' .. res .. '</span>MB (<span color="green">' .. string.format("%.2f",ramusg) .. '</span>%)'
    elseif    ramusg < 71 then
        res = '<span color="yellow">' .. res .. '</span>MB (<span color="green">' .. string.format("%.2f",ramusg) .. '</span>%)'
    elseif  ramusg < 86 then
        res = '<span color="orange">' .. res .. '</span>MB (<span color="green">' .. string.format("%.2f",ramusg) .. '</span>%)'
    else
        res = '<span color="red">' .. res .. '</span>MB (<span color="green">' .. string.format("%.2f",ramusg) .. '</span>%)'
    end
 
    return res
end
 
meminfo = widget({ type = "textbox", name = "meminfo" })
 
-- Assign a hook to update info
-- awful.hooks.timer.register(1, function() meminfo.text = activeram() .. " | "  end)
meminfo_timer = timer({timeout = 1})
meminfo_timer:add_signal("timeout", function() meminfo.text = activeram() .. " | "  end)
meminfo_timer:start()
 
-- Create a textclock widget
mytextclock = awful.widget.textclock({ align = "right" })
 
-- Create a systray
mysystray = widget({ type = "systray" })
 
-- Create a wibox for each screen and add it
mywibox = {}
mypromptbox = {}
mylayoutbox = {}
mytaglist = {}
mytaglist.buttons = awful.util.table.join(
                    awful.button({ }, 1, awful.tag.viewonly),
                    awful.button({ modkey }, 1, awful.client.movetotag),
                    awful.button({ }, 3, awful.tag.viewtoggle),
                    awful.button({ modkey }, 3, awful.client.toggletag),
                    awful.button({ }, 4, awful.tag.viewnext),
                    awful.button({ }, 5, awful.tag.viewprev)
                    )
mytasklist = {}
mytasklist.buttons = awful.util.table.join(
                     awful.button({ }, 1, function (c)
                                              if not c:isvisible() then
                                                  awful.tag.viewonly(c:tags()[1])
                                              end
                                              client.focus = c
                                              c:raise()
                                          end),
                     awful.button({ }, 3, function ()
                                              if instance then
                                                  instance:hide()
                                                  instance = nil
                                              else
                                                  instance = awful.menu.clients({ width=250 })
                                              end
                                          end),
                     awful.button({ }, 4, function ()
                                              awful.client.focus.byidx(1)
                                              if client.focus then client.focus:raise() end
                                          end),
                     awful.button({ }, 5, function ()
                                              awful.client.focus.byidx(-1)
                                              if client.focus then client.focus:raise() end
                                          end))
 
for s = 1, screen.count() do
    -- Create a promptbox for each screen
    mypromptbox[s] = awful.widget.prompt({ layout = awful.widget.layout.horizontal.leftright })
    -- Create an imagebox widget which will contains an icon indicating which layout we're using.
    -- We need one layoutbox per screen.
    mylayoutbox[s] = awful.widget.layoutbox(s)
    mylayoutbox[s]:buttons(awful.util.table.join(
                           awful.button({ }, 1, function () awful.layout.inc(layouts, 1) end),
                           awful.button({ }, 3, function () awful.layout.inc(layouts, -1) end),
                           awful.button({ }, 4, function () awful.layout.inc(layouts, 1) end),
                           awful.button({ }, 5, function () awful.layout.inc(layouts, -1) end)))
    -- Create a taglist widget
    mytaglist[s] = awful.widget.taglist(s, awful.widget.taglist.label.all, mytaglist.buttons)
 
    -- Create a tasklist widget
    mytasklist[s] = awful.widget.tasklist(function(c)
                                              return awful.widget.tasklist.label.currenttags(c, s)
                                          end, mytasklist.buttons)
 
    -- Create the wibox
    mywibox[s] = awful.wibox({ position = "top", screen = s })
    -- Add widgets to the wibox - order matters
    mywibox[s].widgets = {
        {
            mylauncher,
            mytaglist[s],
            mypromptbox[s],
            layout = awful.widget.layout.horizontal.leftright
        },
        mylayoutbox[s],
    mymail,
        s == 1 and mysystray or nil,
    tb_volume,
        mytextclock,
    batinfo,
    meminfo,
    cputemp,
    cpuinfo,
    tb_moc,
        mytasklist[s],
        layout = awful.widget.layout.horizontal.rightleft
    }
end
-- }}}
 
-- {{{ Mouse bindings
root.buttons(awful.util.table.join(
    awful.button({ }, 3, function () mymainmenu:toggle() end),
    awful.button({ }, 4, awful.tag.viewnext),
    awful.button({ }, 5, awful.tag.viewprev)
))
-- }}}
 
-- {{{ Key bindings
globalkeys = awful.util.table.join(
    awful.key({ "Control",           }, "Left",   awful.tag.viewprev       ),
    awful.key({ "Control",           }, "Right",  awful.tag.viewnext       ),
    awful.key({ "Control",           }, "Escape", awful.tag.history.restore),
 
    awful.key({ modkey,           }, "j",
        function ()
            awful.client.focus.byidx( 1)
            if client.focus then client.focus:raise() end
        end),
    awful.key({ modkey,           }, "k",
        function ()
            awful.client.focus.byidx(-1)
            if client.focus then client.focus:raise() end
        end),
    awful.key({ modkey,           }, "w", function () mymainmenu:show(true)        end),
 
    -- Multimedia keys
    awful.key({ }, "XF86AudioRaiseVolume", function () volume("up", tb_volume) end),
    awful.key({ }, "XF86AudioLowerVolume", function () volume("down", tb_volume) end),
    awful.key({ }, "XF86AudioMute", function () volume("mute", tb_volume) end),
    awful.key({ modkey, }, "Right", function () moc_control("next") end),
    awful.key({ modkey, }, "Left", function () moc_control("previous") end),
    awful.key({ modkey, }, "Up", function () moc_control("stop") end),
    awful.key({ modkey, }, "Down", function () moc_control("play_pause") end),
 
    -- Layout manipulation
    awful.key({ modkey, "Shift"   }, "j", function () awful.client.swap.byidx(  1)    end),
    awful.key({ modkey, "Shift"   }, "k", function () awful.client.swap.byidx( -1)    end),
    awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end),
    awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end),
    awful.key({ modkey,           }, "u", awful.client.urgent.jumpto),
    awful.key({ modkey,           }, "Tab",
        function ()
            awful.client.focus.history.previous()
            if client.focus then
                client.focus:raise()
            end
        end),
 
    -- Standard program
    awful.key({ modkey,           }, "Return", function () awful.util.spawn(terminal) end),
    awful.key({ modkey, "Control" }, "r", awesome.restart),
    awful.key({ modkey, "Shift"   }, "q", awesome.quit),
 
    awful.key({ modkey,           }, "l",     function () awful.tag.incmwfact( 0.05)    end),
    awful.key({ modkey,           }, "h",     function () awful.tag.incmwfact(-0.05)    end),
    awful.key({ modkey, "Shift"   }, "h",     function () awful.tag.incnmaster( 1)      end),
    awful.key({ modkey, "Shift"   }, "l",     function () awful.tag.incnmaster(-1)      end),
    awful.key({ modkey, "Control" }, "h",     function () awful.tag.incncol( 1)         end),
    awful.key({ modkey, "Control" }, "l",     function () awful.tag.incncol(-1)         end),
    awful.key({ modkey,           }, "space", function () awful.layout.inc(layouts,  1) end),
    awful.key({ modkey, "Shift"   }, "space", function () awful.layout.inc(layouts, -1) end),
 
    -- Prompt
    awful.key({ modkey },            "r",     function () mypromptbox[mouse.screen]:run() end),
 
    awful.key({ modkey }, "x",
              function ()
                  awful.prompt.run({ prompt = "Run Lua code: " },
                  mypromptbox[mouse.screen].widget,
                  awful.util.eval, nil,
                  awful.util.getdir("cache") .. "/history_eval")
              end)
)
 
clientkeys = awful.util.table.join(
    awful.key({ modkey,           }, "f",      function (c) c.fullscreen = not c.fullscreen  end),
    awful.key({ modkey, "Shift"   }, "c",      function (c) c:kill()                         end),
    awful.key({ modkey, "Control" }, "space",  awful.client.floating.toggle                     ),
    awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end),
    awful.key({ modkey,           }, "o",      awful.client.movetoscreen                        ),
    awful.key({ modkey, "Shift"   }, "r",      function (c) c:redraw()                       end),
    awful.key({ modkey,           }, "t",      function (c) c.ontop = not c.ontop            end),
    awful.key({ modkey,           }, "n",
        function (c)
            -- The client currently has the input focus, so it cannot be
            -- minimized, since minimized clients can't have the focus.
            c.minimized = true
        end),
    awful.key({ modkey,           }, "m",
        function (c)
            c.maximized_horizontal = not c.maximized_horizontal
            c.maximized_vertical   = not c.maximized_vertical
        end)
)

 
-- Compute the maximum number of digit we need, limited to 9
keynumber = 0
for s = 1, screen.count() do
   keynumber = math.min(9, math.max(#tags[s], keynumber));
end
 
-- Bind all key numbers to tags.
-- Be careful: we use keycodes to make it works on any keyboard layout.
-- This should map on the top row of your keyboard, usually 1 to 9.
for i = 1, keynumber do
    globalkeys = awful.util.table.join(globalkeys,
        awful.key({ modkey }, "#" .. i + 9,
                  function ()
                        local screen = mouse.screen
                        if tags[screen][i] then
                            awful.tag.viewonly(tags[screen][i])
                        end
                  end),
        awful.key({ modkey, "Control" }, "#" .. i + 9,
                  function ()
                      local screen = mouse.screen
                      if tags[screen][i] then
                          awful.tag.viewtoggle(tags[screen][i])
                      end
                  end),
        awful.key({ modkey, "Shift" }, "#" .. i + 9,
                  function ()
                      if client.focus and tags[client.focus.screen][i] then
                          awful.client.movetotag(tags[client.focus.screen][i])
                      end
                  end),
        awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9,
                  function ()
                      if client.focus and tags[client.focus.screen][i] then
                          awful.client.toggletag(tags[client.focus.screen][i])
                      end
                  end))
end
 
clientbuttons = awful.util.table.join(
    awful.button({ }, 1, function (c) client.focus = c; c:raise() end),
    awful.button({ modkey }, 1, awful.mouse.client.move),
    awful.button({ modkey }, 3, awful.mouse.client.resize))
 
-- Set keys
root.keys(globalkeys)
-- }}}
 
-- {{{ Rules
awful.rules.rules = {
    -- All clients will match this rule.
    { rule = { },
      properties = { border_width = beautiful.border_width,
                     border_color = beautiful.border_normal,
                     focus = true,
                     keys = clientkeysl,
             floating = false,
                     buttons = clientbuttons } },
    { rule = { class = "MPlayer" },
      properties = { floating = true } },
    { rule = { class = "pinentry" },
      properties = { floating = true } },
    { rule = { class = "gimp" },
      properties = { floating = true} },
    -- Set Firefox to always map on tags number 4 of screen 1.
    { rule = { class = "Firefox" },
      properties = { tag = tags[1][4], switchtotag = true } },
    -- Set Pidgin to always map on tags number 1 of screen 1.
    { rule = { class = "Pidgin" },
      properties = { tag = tags[1][1], switchtotag = true } },
    -- Set Opera to always map on tags number 2 of screen 1.
    { rule = { class = "Opera" },
      properties = { tag = tags[1][2], switchtotag = true } },
    -- Set Okular to always map on tags number 2 of screen 1.
    { rule = { class = "Okular" },
      properties = { tag = tags[1][2], switchtotag = true } },
}
-- }}}
 
-- {{{ Signals
-- Signal function to execute when a new client appears.
client.add_signal("manage", function (c, startup)
    -- Add a titlebar
    -- awful.titlebar.add(c, { modkey = modkey })
 
    -- Enable sloppy focus
    c:add_signal("mouse::enter", function(c)
        if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier
            and awful.client.focus.filter(c) then
            client.focus = c
        end
    end)
 
    if not startup then
        -- Set the windows at the slave,
        -- i.e. put it at the end of others instead of setting it master.
        -- awful.client.setslave(c)
 
        -- Put windows in a smart way, only if they does not set an initial position.
        if not c.size_hints.user_position and not c.size_hints.program_position then
            awful.placement.no_overlap(c)
            awful.placement.no_offscreen(c)
        end
    end
end)
 
client.add_signal("unfocus", function(c) c.border_color = beautiful.border_focus end)
client.add_signal("focus", function(c) c.border_color = beautiful.border_normal end)
-- }}}
Merci à ceux qui m’aideront.
Avatar de l’utilisateur
Rolinh
Chu Ko Nu
Messages : 392
Inscription : sam. 15 août 2009, 09:15
Localisation : Suisse

Re: [Awesome] me prend 150MO de ram

Message par Rolinh »

Salut,

il y a de toute évidence quelque chose qui cloche puisque chez moi, au démarrage, mon système utilise environ 70Mo et seulement 12Mo de ces 70 sont effectivement utilisés par Awesome WM.
J'utilise la version packagée par Calimero et disponible sur le dépôt archlinuxfr (3.4.10).

Quand tu parles de tes 150Mo de RAM utilisée, tu parles bien de ce qu'utilise uniquement Awesome ou bien en tout?
Avatar de l’utilisateur
Desintegr
Chu Ko Nu
Messages : 354
Inscription : jeu. 28 avr. 2011, 16:42
Localisation : Orléans - France

Re: [Awesome] me prend 150MO de ram

Message par Desintegr »

Pour vérifier l'utilisation de la mémoire, que renvoie :

Code : Tout sélectionner

ps -e o comm,%mem,rss,vsz --sort -rss | head -n 20
Shanx
Hankyu
Messages : 42
Inscription : dim. 08 août 2010, 10:28

Re: [Awesome] me prend 150MO de ram

Message par Shanx »

Hum. J’ai failed. Ça me renvoit :
awesome 0.3 12036 153232
Soit 0.3% de la ram est utilisée par Awesome.
Mais alors, peut-être quelqu’un peut m’expliquer ce que renvoit htop ? Parce qu’avec cette commande, j’ai, dans la colonne “VIRT.”, 149Mo utilisés par Awesome…
Avatar de l’utilisateur
Desintegr
Chu Ko Nu
Messages : 354
Inscription : jeu. 28 avr. 2011, 16:42
Localisation : Orléans - France

Re: [Awesome] me prend 150MO de ram

Message par Desintegr »

Awesome consomme environ 10 Mo de ta mémoire.

VIRT correspond à l'espace de mémoire virtuelle que le processus utilise.
Ce nombre prend en compte les bibliothèques partagées, la mémoire graphique, les fichiers sur le disque, etc.
En gros, ce nombre n'a pratiquement pas de sens.
Avatar de l’utilisateur
Rolinh
Chu Ko Nu
Messages : 392
Inscription : sam. 15 août 2009, 09:15
Localisation : Suisse

Re: [Awesome] me prend 150MO de ram

Message par Rolinh »

Alors pas de problème finalement?

Par curiosité, combien de mémoire est utilisée au lancement du système avec Awesome?
Avatar de l’utilisateur
Desintegr
Chu Ko Nu
Messages : 354
Inscription : jeu. 28 avr. 2011, 16:42
Localisation : Orléans - France

Re: [Awesome] me prend 150MO de ram

Message par Desintegr »

Non, pas de problème, juste une mauvaise analyse.
Shanx
Hankyu
Messages : 42
Inscription : dim. 08 août 2010, 10:28

Re: [Awesome] me prend 150MO de ram

Message par Shanx »

Bon, en redémarrant aujourd’hui, je voulais répondre à la question de Rolinh (d’ailleurs Rolinh, tu ne passes plus trop sur le forum d’ubuntu-fr… C’est dommage, quand j’ai eu un soucis avec le rc.lua d’Awesome, tout le monde me disait de te demander :mrgreen:), je me suis rendu compte qu’aucun émulateur de terminal ne voulait s’ouvrir. J’ai créé un topic, et je répond ici dès que je peux.
Avatar de l’utilisateur
Rolinh
Chu Ko Nu
Messages : 392
Inscription : sam. 15 août 2009, 09:15
Localisation : Suisse

Re: [Awesome] me prend 150MO de ram

Message par Rolinh »

Shanx a écrit :Bon, en redémarrant aujourd’hui, je voulais répondre à la question de Rolinh (d’ailleurs Rolinh, tu ne passes plus trop sur le forum d’ubuntu-fr… C’est dommage, quand j’ai eu un soucis avec le rc.lua d’Awesome, tout le monde me disait de te demander :mrgreen:)
Content de voir que tu as trouvé la source de ton problème :)
Oui je sais, j'étais spécialement occupé ces temps-ci et plus trop sur mon ordi. Je vais repasser un peu plus souvent ;)
Répondre