Sponsored Content
Top Forums Programming [LUA] WindowManager: Awesome - Checking OS and assign different icon Post 302952039 by sea on Wednesday 12th of August 2015 08:53:56 PM
Old 08-12-2015
[LUA] WindowManager: Awesome - Checking OS and assign different icon

Heyas

I'm having a bad time to fix this.
Code is just related samples, paths are edited, take: ~/.config/awesome as 'base/config' (dot) dir.

Situation:
Recently i actualy started to have 2 different kinds of gnu/linux installed, with this, the abition raised, to get a distro specific icon displayed in the shared WM configuration because of the shared /home partition.

After some tweakings i've managed to get the WM reloaded without issues, but still, no icon is displayed, in neither of the OS'.

rc.lua
Code:
-- Functions
	-- Its just a workaround for an 'unstable' 'hwmon/hwmon[12]' definition of Fedora21 - Rawhide
	-- Function (only) from: http://stackoverflow.com/questions/4990990/lua-check-if-a-file-exists
	function file_exists(name)
		local f=io.open(name,"r")
		if f~=nil then io.close(f) return true else return false end
	end

-- Themes define colours, icons, and wallpapers
	beautiful.init(awful.util.getdir("config") .. "/themes/sea/theme.lua")

	os_icon = wibox.widget.imagebox()
	if file_exists("/etc/favicon.png")
	then	-- Its either fedora or provides same functionality
		os_icon:set_image(beautiful.icon_fedora)
		naughty.notify({ preset = naughty.config.presets.critical, title = "Its fedora", text = err })
	else	-- Probably Arch
		os_icon:set_image( beautiful.icon_arch )
		naughty.notify({ preset = naughty.config.presets.critical, title = "Its arch", text = err })
	end

-- Show the menu entry with icon
	mylauncher = awful.widget.launcher({ image = beautiful.os_icon,
		                             menu = mymainmenu })

And within the ./themes/sea/theme.lua there is:
Code:
theme.icon_fedora 	= "/etc/favicon.png"
theme.icon_arch 	= themes .. "/sea/arch_icon_16.png"

I do get a msgbox saying "Its arch", but i dont get an icon.

Any ideas or hints please?
Thank you

EDIT:
Note that 'beautiful' is the class providing the items of the active theme.

Last edited by sea; 08-13-2015 at 12:17 AM..
 

6 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

WindowManager

I Have Installed GARNOME but i don't know how i can start it in RedHat 7.3...it is very confusion to change WindowManagers in RedHat 7.3...in slackware i just changed in /etc/X11/xinit/xinitrc and it was it...but in RedHat 7.3 it is very diferent...please help (2 Replies)
Discussion started by: CreamHarry
2 Replies

2. UNIX for Dummies Questions & Answers

Installing PECL LUA on Centos for PHP

I'm kinda new to Linux, I'm mostly run websites, and it's rather easy to do everything... except install this PECL LUA plugin. :wall: I start by running this command: pecl install lua-0.9.4 downloading lua-0.9.4.tgz ... Starting to download lua-0.9.4.tgz (12,617 bytes) .....done: 12,617... (0 Replies)
Discussion started by: blackstar
0 Replies

3. Shell Programming and Scripting

[LUA-Awesome] Can i use $XDG_XY_DIR inside a lua script?

Heyas I'm a fan of AwesomeWM, but i had failed to learn lua, though, i'm quite satisfied with the cofniguration i have by now. Either way, i'd like to know if i could 'call' those XDG_XY_DIR variables which are located on my linux ~/.config/user-dirs.dirs. While to call scripts i use... (0 Replies)
Discussion started by: sea
0 Replies

4. UNIX Desktop Questions & Answers

[LUA / DE] AwesomeWM & Vicious Widgets

Hello Allthough i dont know LUA, despite its name, i do love the window manager that was created using that language. By now, I'm enough familiar with LUA so i could adapt (most of) the recent changes so i have vicous widgets working again - by the means of no error messages on start up. I... (1 Reply)
Discussion started by: sea
1 Replies

5. Programming

[LUA] Set variables according to if file exists

Heya I'm using Awesome WM with the Vicious widget library. As i'm using multi boot, Win8, Fedora and Arch, i have my WM-Config shared accross my GNU/Linux installations. The regarding snippet: -- Functions -- Its just a workaround for an 'unstable' 'hwmon/hwmon' definition of Fedora21 -... (0 Replies)
Discussion started by: sea
0 Replies

6. Programming

A make-like build utility based on Lua

xmake is a make-like build utility based on lua. (Link to project site: xmake) The project focuses on making development and building easier and provides many features (.e.g package, install, plugin, macro, action, option, task ...), so that any developer can quickly pick it up and enjoy the... (1 Reply)
Discussion started by: waruqi
1 Replies
AWESOME(1)																AWESOME(1)

NAME
awesome - awesome window manager SYNOPSIS
awesome [-v | --version] [-h | --help] [-c | --config FILE] [-k | --check] DESCRIPTION
awesome is a window manager for X. It manages windows in different layouts, like floating or tiled. Any layout can be applied dynamically, optimizing the environment for the application in use and the task currently being performed. In a tiled layout, windows are managed in a master and stacking area. The master area contains the windows which currently need the most attention, whereas the stacking area contains all other windows. In a floating layout windows can be resized and moved freely. Dialog windows are always managed as floating, regardless of the layout currently applied. The spiral and dwindle layouts are special cases of the tiled layout where the stacking area is arranged in a spiral for the former or as a rectangular fractal for the later. Windows are grouped by tags in awesome. Each window can be tagged with one or more tags. Selecting certain tags displays all windows with these tags. awesome can contain small wiboxes which can display anything you want: all available tags, the current layout, the title of the visible windows, text, etc. OPTIONS
-v, --version Print version information to standard output, then exit. -h, --help Print help information, then exit. -c, --config FILE Use an alternate configuration file instead of $XDG_CONFIG_HOME/awesome/rc.lua. -k, --check Check configuration file syntax. DEFAULT MOUSE BINDINGS
Navigation Button1 on tag name View tag. Button4, Button5 on tag name Switch to previous or next tag. Button4, Button5 on root window Switch to previous or next tag. Button1, Button3, Button4, Button5 on layout symbol Switch to previous or next layout. Layout modification Mod4 + Button1 on tag name Tag current client with this tag only. Mod4 + Button3 on tag name Toggle this tag for client. Button3 on tag name Add this tag to current view. Mod4 + Button1 on client window Move window. Mod4 + Button3 on client window Resize window. DEFAULT KEY BINDINGS
Window manager control Mod4 + Control + r Restart awesome. Mod4 + Shift + q Quit awesome. Mod4 + r Run prompt. Mod4 + x Run Lua code prompt. Mod4 + Return Spawn terminal emulator. Mod4 + w Open main menu. Clients Mod4 + Shift + r Redraw the focused window. Mod4 + m Maximize client. Mod4 + n Minimize client. Mod4 + Control + n Restore client. Mod4 + f Set client fullscreen. Mod4 + Shift + c Kill focused client. Mod4 + t Set client on-top. Navigation Mod4 + j Focus next client. Mod4 + k Focus previous client. Mod4 + u Focus first urgent client. Mod4 + Left View previous tag. Mod4 + Right View next tag. Mod4 + 1-9 Switch to tag 1-9. Mod4 + Control + j Focus next screen. Mod4 + Control + k Focus previous screen. Mod4 + Escape Focus previously selected tag set. Layout modification Mod4 + Shift + j Switch client with next client. Mod4 + Shift + k Switch client with previous client. Mod4 + o Send client to next screen. Mod4 + h Decrease master width factor by 5%. Mod4 + l Increase master width factor by 5%. Mod4 + Shift + h Increase number of master windows by 1. Mod4 + Shift + l Decrease number of master windows by 1. Mod4 + Control + h Increase number of columns for non-master windows by 1. Mod4 + Control + l Decrease number of columns for non-master windows by 1. Mod4 + space Switch to next layout. Mod4 + Shift + space Switch to previous layout. Mod4 + Control + space Toggle client floating status. Mod4 + Control + Return Swap focused client with master. Mod4 + Control + 1-9 Toggle tag view. Mod4 + Shift + 1-9 Tag client with tag. Mod4 + Shift + Control + 1-9 Toggle tag on client. Mod4 + Shift + F1-9 Tag marked clients with tag. CUSTOMIZATION
awesome is customized by creating a custom $XDG_CONFIG_HOME/awesome/rc.lua file. SIGNALS
awesome can be restarted by sending it a SIGHUP. SEE ALSO
awesomerc(5) awesome-client(1) BUGS
Of course there's no bug in awesome. But there may be unexpected behaviors. AUTHORS
Julien Danjou <julien@danjou.info[1]> and others. WWW
http://awesome.naquadah.org NOTES
1. julien@danjou.info mailto:julien@danjou.info 07/16/2012 AWESOME(1)
All times are GMT -4. The time now is 05:08 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy