Deskbar: use a virtual directory for the user-configurable menu

* Deskbar now uses ~/config/settings/deskbar/menu_entries for its menu,
  falling back to /system/data/deskbar/menu_entries, when the former
  doesn't exist. The latter always exists and is a virtual directory
  merging the deskbar/menu subdirectories of ~/config/settings/ and
  <any installation location>/data/. So, if a package provides a
  deskbar menu symlink, it is added automatically when the package is
  activated. The user can add own menu items by putting stuff into
  ~/config/settings/deskbar/menu/, only use their own organization by
  symlinking it to menu_entries, or do fun stuff by making menu_entries
  a customized virtual directory.
* HaikuImage: No longer create any deskbar menu symlinks in the user's
  settings directory. Instead add them to the Haiku package.
* OptionalPackages: At least for the optional packages that do have
  hpkgs, no longer create deskbar menu symlinks in the user's settings
  directory.
* Move all Deskbar settings files to ~/config/settings/deskbar/ and
  drop the "Deskbar_" prefix.
This commit is contained in:
Ingo Weinhold
2013-06-29 14:58:52 +02:00
parent dbd97804ea
commit 26ea70667a
13 changed files with 121 additions and 81 deletions
-39
View File
@@ -211,45 +211,6 @@ AddDirectoryToHaikuImage home mail out ;
# global settings when a package is installed in ~/config
AddDirectoryToHaikuImage home config settings global ;
# Deskbar Application links
AddDirectoryToHaikuImage home config settings deskbar menu Applications ;
DESKBAR_APPLICATIONS = ActivityMonitor CharacterMap CodyCam CDPlayer DeskCalc
Devices DiskProbe DriveSetup DiskUsage Expander Icon-O-Matic Installer
Magnify Mail MediaConverter MediaPlayer MidiPlayer People PoorMan
Screenshot SoundRecorder StyledEdit Terminal TV
;
local linkTarget ;
for linkTarget in $(DESKBAR_APPLICATIONS) {
AddSymlinkToHaikuImage home config settings deskbar menu Applications
: /boot/system/apps/$(linkTarget) : $(linkTarget) ;
}
# Deskbar Desktop applets links
AddDirectoryToHaikuImage home config settings deskbar menu Desktop\ applets ;
DESKBAR_DESKTOP_APPLETS = LaunchBox NetworkStatus PowerStatus ProcessController
Workspaces
;
for linkTarget in $(DESKBAR_DESKTOP_APPLETS) {
AddSymlinkToHaikuImage home config settings deskbar menu Desktop\ applets
: /boot/system/apps/$(linkTarget) : $(linkTarget) ;
}
# Deskbar Preferences links
AddDirectoryToHaikuImage home config settings deskbar menu Preferences ;
DESKBAR_PREFERENCES = $(SYSTEM_PREFERENCES:B) ;
for linkTarget in $(DESKBAR_PREFERENCES) {
AddSymlinkToHaikuImage home config settings deskbar menu Preferences
: /boot/system/preferences/$(linkTarget)
: $(linkTarget) ;
}
# Deskbar Demo links
AddDirectoryToHaikuImage home config settings deskbar menu Demos ;
for linkTarget in $(SYSTEM_DEMOS) {
AddSymlinkToHaikuImage home config settings deskbar menu Demos
: /boot/system/demos/$(linkTarget) : $(linkTarget) ;
}
# scripts and data files
local userBootScripts = UserBootscript UserSetupEnvironment.sample ;
-14
View File
@@ -300,8 +300,6 @@ if [ IsOptionalHaikuImagePackageAdded BePDF ] {
InstallOptionalHaikuImagePackage
$(hpkgBaseURL)/bepdf-1.1.1~beta5_2013_04_28-1-x86_gcc2.hpkg ;
}
AddSymlinkToHaikuImage home config settings deskbar menu Applications
: /boot/common/apps/BePDF/BePDF ;
}
}
@@ -318,8 +316,6 @@ if [ IsOptionalHaikuImagePackageAdded BeZillaBrowser ] {
InstallOptionalHaikuImagePackage
$(hpkgBaseURL)/bezillabrowser-2.0.0.22pre_2010_05_02-1-x86_gcc2.hpkg ;
}
AddSymlinkToHaikuImage home config settings deskbar menu Applications
: /boot/common/apps/BeZillaBrowser/BeZillaBrowser ;
}
}
@@ -630,8 +626,6 @@ if [ IsOptionalHaikuImagePackageAdded DemoPackage_Video ] {
# Development
if [ IsOptionalHaikuImagePackageAdded Development ] {
if $(TARGET_ARCH) = x86 {
AddSymlinkToHaikuImage home config settings deskbar menu Applications
: /boot/system/apps/Debugger : Debugger ;
# autotools
if $(HAIKU_GCC_VERSION[1]) >= 4 {
InstallOptionalHaikuImagePackage
@@ -1151,8 +1145,6 @@ if [ IsOptionalHaikuImagePackageAdded KeymapSwitcher ] {
InstallOptionalHaikuImagePackage
$(hpkgBaseURL)/keymapswitcher-1.2.7.10-1-x86_gcc2.hpkg ;
}
AddSymlinkToHaikuImage home config settings deskbar menu Preferences
: /boot/common/bin/KeymapSwitcher ;
} else if $(TARGET_ARCH) = x86_64 {
InstallOptionalHaikuImagePackage
$(baseURL)/KeymapSwitcher-1.2.7-x86_64-2013-01-08.zip
@@ -1668,8 +1660,6 @@ if [ IsOptionalHaikuImagePackageAdded Pe ] {
InstallOptionalHaikuImagePackage
$(hpkgBaseURL)/pe-2.4.3_hg602-4-x86_gcc2.hpkg ;
}
AddSymlinkToHaikuImage home config settings deskbar menu Applications
: /boot/common/apps/Pe/Pe ;
}
}
@@ -2016,8 +2006,6 @@ if [ IsOptionalHaikuImagePackageAdded Vision ] {
InstallOptionalHaikuImagePackage
$(hpkgBaseURL)/vision-0.9.7.r944-1-x86_gcc2.hpkg ;
}
AddSymlinkToHaikuImage home config settings deskbar menu Applications
: /boot/common/apps/Vision/Vision ;
}
}
@@ -2132,8 +2120,6 @@ if [ IsOptionalHaikuImagePackageAdded WonderBrush ] {
} else {
InstallOptionalHaikuImagePackage
$(hpkgBaseURL)/wonderbrush-2.1.2-3-x86_gcc2.hpkg ;
AddSymlinkToHaikuImage home config settings deskbar menu Applications
: /boot/common/apps/WonderBrush/WonderBrush ;
}
}
+43
View File
@@ -315,6 +315,49 @@ AddFilesToPackage add-ons disk_systems
CopyDirectoryToPackage data : <mimedb>mime_db : : : isTarget ;
# Deskbar menu symlinks
# "Applications" links
DESKBAR_APPLICATIONS = ActivityMonitor CharacterMap CodyCam CDPlayer DeskCalc
Devices DiskProbe DriveSetup DiskUsage Expander Icon-O-Matic Installer
Magnify Mail MediaConverter MediaPlayer MidiPlayer People PoorMan
Screenshot SoundRecorder StyledEdit Terminal TV
;
local linkTarget ;
for linkTarget in $(DESKBAR_APPLICATIONS) {
AddSymlinkToPackage data deskbar menu Applications
: ../../../../apps/$(linkTarget) : $(linkTarget) ;
}
# "Desktop applets" links
DESKBAR_DESKTOP_APPLETS = LaunchBox NetworkStatus PowerStatus ProcessController
Workspaces
;
for linkTarget in $(DESKBAR_DESKTOP_APPLETS) {
AddSymlinkToPackage data deskbar menu Desktop\ applets
: ../../../../apps/$(linkTarget) : $(linkTarget) ;
}
# "Preferences" links
AddDirectoryToPackage data deskbar menu Preferences ;
DESKBAR_PREFERENCES = $(SYSTEM_PREFERENCES:B) ;
for linkTarget in $(DESKBAR_PREFERENCES) {
AddSymlinkToPackage data deskbar menu Preferences
: ../../../../preferences/$(linkTarget)
: $(linkTarget) ;
}
# "Demo" links
AddDirectoryToPackage data deskbar menu Demos ;
for linkTarget in $(SYSTEM_DEMOS) {
AddSymlinkToPackage data deskbar menu Demos
: ../../../../demos/$(linkTarget) : $(linkTarget) ;
}
# Deskbar menu entries file
AddFilesToPackage data deskbar : <deskbar>menu_entries ;
# optional
# TODO: We should probably build another package (including the data files
# above) that can be installed, if desired.
+4
View File
@@ -89,4 +89,8 @@ if $(TARGET_ARCH) = x86 {
: $(mesaGlHeaders) : : : isTarget ;
}
# Deskbar menu symlinks
AddSymlinkToPackage data deskbar menu Applications
: ../../../../apps/Debugger : Debugger ;
BuildHaikuPackage $(haikuDevelPackage) : haiku_devel ;