first commit
This commit is contained in:
		
							
								
								
									
										63
									
								
								etc_org/menu-methods/xdg-desktop-entry-spec-sessions
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										63
									
								
								etc_org/menu-methods/xdg-desktop-entry-spec-sessions
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,63 @@
 | 
			
		||||
#!/usr/bin/install-menu
 | 
			
		||||
# xdg desktop entry spec - sessions generation
 | 
			
		||||
# http://www.freedesktop.org/Standards/desktop-entry-spec
 | 
			
		||||
# Copyright 2005 - Bill Allombert
 | 
			
		||||
# Licensed under the GNU General Public License, version 2
 | 
			
		||||
 | 
			
		||||
!include lang.h
 | 
			
		||||
!include menu.h
 | 
			
		||||
 | 
			
		||||
compat="menu-2"
 | 
			
		||||
outputencoding="UTF-8";
 | 
			
		||||
outputlanguage="C";
 | 
			
		||||
 | 
			
		||||
function has_session() = shell("grep -l -e '^/usr/share/xsessions/' '/var/lib/dpkg/info/" $package ".list' 2>/dev/null");
 | 
			
		||||
 | 
			
		||||
function name() =
 | 
			
		||||
	"Name=" title() "\n"
 | 
			
		||||
	forall(sections_translations(),"lang",
 | 
			
		||||
		"Name[" $lang "]=" translate($lang,title())
 | 
			
		||||
     		"\n");
 | 
			
		||||
 | 
			
		||||
function comment() =
 | 
			
		||||
	"Comment=" $longtitle "\n"
 | 
			
		||||
	forall(sections_translations(),"lang",
 | 
			
		||||
		"Comment[" $lang "]=" translate($lang,$longtitle)
 | 
			
		||||
     		"\n");
 | 
			
		||||
 | 
			
		||||
function AppEntry() =
 | 
			
		||||
	"[Desktop Entry]\n"
 | 
			
		||||
	"Encoding=UTF-8\n"
 | 
			
		||||
	"Type=Application\n"
 | 
			
		||||
        name()
 | 
			
		||||
        ifnempty($longtitle, comment())
 | 
			
		||||
	ifnempty($generictitle, "GenericName=" $generictitle "\n")
 | 
			
		||||
	ifnempty(icon(),"Icon=" icon() "\n")
 | 
			
		||||
	"Exec=" $command "\n"
 | 
			
		||||
        "\n"
 | 
			
		||||
        "[Window Manager]\n"
 | 
			
		||||
        "SessionManaged=true\n";
 | 
			
		||||
 | 
			
		||||
supported;
 | 
			
		||||
 wm = AppEntry();
 | 
			
		||||
endsupported;
 | 
			
		||||
 | 
			
		||||
startmenu = "";
 | 
			
		||||
endmenu = "";
 | 
			
		||||
submenutitle = "";
 | 
			
		||||
 | 
			
		||||
treewalk = "M";
 | 
			
		||||
 | 
			
		||||
genmenu = ifnempty($command,ifempty(has_session(),
 | 
			
		||||
            "X-Debian" replacewith($basesection,"/ ","--") 
 | 
			
		||||
            "-" tolower(replacewith($title,"/ ","__") ".desktop")));
 | 
			
		||||
 | 
			
		||||
rootsection = "";
 | 
			
		||||
 | 
			
		||||
prerun     = "rm -rf  '" prefix() "'";
 | 
			
		||||
 | 
			
		||||
removemenu = "rm -rf  '" prefix() "'";
 | 
			
		||||
 | 
			
		||||
preoutput = "";
 | 
			
		||||
 | 
			
		||||
rootprefix = "/var/lib/menu-xdg/xsessions";
 | 
			
		||||
		Reference in New Issue
	
	Block a user