Rename icon files to fit XDG specifications. Add file icons. Add mime types
authorKeith Packard <keithp@keithp.com>
Thu, 19 Jun 2014 21:33:27 +0000 (14:33 -0700)
committerKeith Packard <keithp@keithp.com>
Fri, 20 Jun 2014 05:31:13 +0000 (22:31 -0700)
Our SVG icons now follow XDG standards by including a vendor
prefix. The new file type icons include application-vnd.altusmetrum as
a prefix so that they match the mime types declared.

Signed-off-by: Keith Packard <keithp@keithp.com>
32 files changed:
altosui/.gitignore
altosui/Info.plist.in
altosui/Makefile.am
altosui/altos-windows.nsi.in
altosui/altusmetrum-altosui.desktop.in
icon/.gitignore
icon/Makefile.am
icon/altus-metrum.rc [deleted file]
icon/altusmetrum-altosui.svg [new file with mode: 0644]
icon/altusmetrum-micropeak.svg [new file with mode: 0644]
icon/altusmetrum-telegps.svg [new file with mode: 0644]
icon/altusmetrum.svg [deleted file]
icon/application-vnd.altusmetrum.eeprom.svg [new file with mode: 0644]
icon/application-vnd.altusmetrum.micropeak.svg [new symlink]
icon/application-vnd.altusmetrum.telemetry.svg [new file with mode: 0644]
icon/creating-linux-icons [new file with mode: 0644]
icon/micro-peak.rc [deleted file]
icon/micropeak.svg [deleted file]
icon/org-altusmetrum-mimetypes.xml [new file with mode: 0644]
icon/telegps.rc [deleted file]
icon/telegps.svg [deleted file]
micropeak/.gitignore
micropeak/Info.plist.in
micropeak/Makefile.am
micropeak/MicroPeak.app/Contents/Resources/MicroPeak.icns [deleted file]
micropeak/altusmetrum-micropeak.desktop.in
micropeak/micropeak-windows.nsi.in
telegps/.gitignore
telegps/Info.plist.in
telegps/Makefile.am
telegps/altusmetrum-telegps.desktop.in
telegps/telegps-windows.nsi.in

index 10b600e..b0c8264 100644 (file)
@@ -17,7 +17,7 @@ Altos-Linux-*.tar.bz2
 Altos-Linux-*.sh
 Altos-Mac-*.zip
 Altos-Windows-*.exe
-altos.desktop
+altusmetrum-altosui.desktop
 *.dll
 *.dylib
 *.so
index bae6d52..8dc797d 100644 (file)
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleIconFile</key>
-       <string>AltosUIIcon.icns</string>
+       <string>altusmetrum-altosui.icns</string>
        <key>CFBundleDocumentTypes</key>
        <array>
          <dict>
            <key>CFBundleTypeName</key>
            <string>Telemetry</string>
            <key>CFBundleTypeIconFile</key>
-           <string>AltosUIIcon.icns</string>
+           <string>application-vnd.altusmetrum.telemetry.icns</string>
            <key>CFBundleTypeExtensions</key>
            <array>
              <string>telem</string>
@@ -42,7 +42,7 @@
            <key>CFBundleTypeName</key>
            <string>Eeprom</string>
            <key>CFBundleTypeIconFile</key>
-           <string>AltosUIIcon.icns</string>
+           <string>application-vnd.altusmetrum.eeprom.icns</string>
            <key>CFBundleTypeExtensions</key>
            <array>
              <string>eeprom</string>
index bc074a9..45d7569 100644 (file)
@@ -72,26 +72,37 @@ JAR=altosui.jar
 FATJAR=altosui-fat.jar
 
 # Icons
-ICONDIR=$(top_srcdir)/icon
+ICONDIR=../icon
 
 JAVA_ICONS=\
-       $(ICONDIR)/altus-metrum-16.png \
-       $(ICONDIR)/altus-metrum-32.png \
-       $(ICONDIR)/altus-metrum-48.png \
-       $(ICONDIR)/altus-metrum-64.png \
-       $(ICONDIR)/altus-metrum-128.png \
-       $(ICONDIR)/altus-metrum-256.png
+       $(ICONDIR)/altusmetrum-altosui-16.png \
+       $(ICONDIR)/altusmetrum-altosui-32.png \
+       $(ICONDIR)/altusmetrum-altosui-48.png \
+       $(ICONDIR)/altusmetrum-altosui-64.png \
+       $(ICONDIR)/altusmetrum-altosui-128.png\
+       $(ICONDIR)/altusmetrum-altosui-256.png
 
 # icon base names for jar
-ICONJAR= -C $(ICONDIR) altus-metrum-16.png \
-       -C $(ICONDIR) altus-metrum-32.png \
-       -C $(ICONDIR) altus-metrum-48.png \
-       -C $(ICONDIR) altus-metrum-64.png \
-       -C $(ICONDIR) altus-metrum-128.png \
-       -C $(ICONDIR) altus-metrum-256.png
-
-WINDOWS_ICON=$(ICONDIR)/altus-metrum.ico $(ICONDIR)/altus-metrum.exe
-MACOSX_ICON=$(ICONDIR)/AltosUIIcon.icns
+ICONJAR= \
+       -C $(ICONDIR) altusmetrum-altosui-16.png \
+       -C $(ICONDIR) altusmetrum-altosui-32.png \
+       -C $(ICONDIR) altusmetrum-altosui-48.png \
+       -C $(ICONDIR) altusmetrum-altosui-64.png \
+       -C $(ICONDIR) altusmetrum-altosui-128.png\
+       -C $(ICONDIR) altusmetrum-altosui-256.png
+
+WINDOWS_ICONS  =\
+       $(ICONDIR)/altusmetrum-altosui.ico \
+       $(ICONDIR)/altusmetrum-altosui.exe
+       $(ICONDIR)/application-vnd.altusmetrum.eeprom.ico \
+       $(ICONDIR)/application-vnd.altusmetrum.eeprom.exe \
+       $(ICONDIR)/application-vnd.altusmetrum.telemetry.ico \
+       $(ICONDIR)/application-vnd.altusmetrum.telemetry.exe
+
+MACOSX_ICONS   =\
+       $(ICONDIR)/altusmetrum-altosui.icns \
+       $(ICONDIR)/application-vnd.altusmetrum.eeprom.icns \
+       $(ICONDIR)/application-vnd.altusmetrum.telemetry.icns
 
 # Firmware
 FIRMWARE_TD_0_2=$(top_srcdir)/src/teledongle-v0.2/teledongle-v0.2-$(VERSION).ihx
@@ -141,14 +152,14 @@ FAT_FILES=$(FATJAR) $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS) $(FREETTS_CLASS) $(JFR
 
 LINUX_LIBS=libaltos32.so libaltos64.so
 
-LINUX_FILES=$(FAT_FILES) $(LINUX_LIBS) $(FIRMWARE) $(DOC) $(desktop_file).in ../icon/altusmetrum.svg
+LINUX_FILES=$(FAT_FILES) $(LINUX_LIBS) $(FIRMWARE) $(DOC) $(desktop_file).in $(ICONDIR)/altusmetrum-altosui.svg
 LINUX_EXTRA=altosui-fat
 
 MACOSX_INFO_PLIST=Info.plist
-MACOSX_FILES=$(FAT_FILES) libaltos.dylib $(MACOSX_INFO_PLIST) $(DOC) ReadMe-Mac.rtf $(MACOSX_ICON)
+MACOSX_FILES=$(FAT_FILES) libaltos.dylib $(MACOSX_INFO_PLIST) $(DOC) ReadMe-Mac.rtf $(MACOSX_ICONS)
 MACOSX_EXTRA=$(FIRMWARE)
 
-WINDOWS_FILES=$(FAT_FILES) $(FIRMWARE) altos.dll altos64.dll $(top_srcdir)/altusmetrum.inf $(top_srcdir)/altusmetrum.cat $(WINDOWS_ICON)
+WINDOWS_FILES=$(FAT_FILES) $(FIRMWARE) altos.dll altos64.dll $(top_srcdir)/altusmetrum.inf $(top_srcdir)/altusmetrum.cat $(WINDOWS_ICONS)
 
 all-local: classes/altosui $(JAR) altosui altosui-test altosui-jdb
 
@@ -195,7 +206,6 @@ else
 fat: $(LINUX_DIST) $(LINUX_SH) $(MACOSX_DIST) $(WINDOWS_DIST)
 endif
 
-
 altosuidir=$(datadir)/java
 
 install-altosuiJAVA: altosui.jar
@@ -325,7 +335,7 @@ $(MACOSX_DIST): $(MACOSX_FILES) $(MACOSX_EXTRA) Makefile
        cp -a $(DOC) macosx/Doc
        cp -p Info.plist macosx/AltosUI.app/Contents
        mkdir -p macosx/AltOS-$(VERSION) macosx/AltosUI.app/Contents/Resources/Java
-       cp -p $(MACOSX_ICON) macosx/AltosUI.app/Contents/Resources
+       cp -p $(MACOSX_ICONS) macosx/AltosUI.app/Contents/Resources
        cp -p $(FATJAR) macosx/AltosUI.app/Contents/Resources/Java/altosui.jar
        cp -p libaltos.dylib macosx/AltosUI.app/Contents/Resources/Java
        cp -p $(ALTOSLIB_CLASS) macosx/AltosUI.app/Contents/Resources/Java
index c6da097..07de5b1 100644 (file)
@@ -4,12 +4,14 @@
 !include java.nsh
 !include refresh-sh.nsh
 
-!define REG_NAME "Altus Metrum"
-!define PROG_ID             "org.altusmetrum.altosui.1"
-!define PROG_ALTOSUI "org.altusmetrum.altosui.1"
-!define FAT_NAME "altosui-fat.jar"
-!define ICO_ICO "altus-metrum.ico"
-!define ICO_EXE "altus-metrum.exe"
+!define REG_NAME       "Altus Metrum"
+!define PROG_ID_TELEM  "altusmetrum.altosui.telem.1"
+!define PROG_ID_EEPROM "altusmetrum.altosui.eeprom.1"
+!define FAT_NAME       "altosui-fat.jar"
+!define WIN_APP_ICON   "altusmetrum-altosui.ico"
+!define WIN_APP_EXE    "altusmetrum-altosui.exe"
+!define WIN_TELEM_EXE  "application-vnd.altusmetrum.telemetry.exe"
+!define WIN_EEPROM_EXE "application-vnd.altusmetrum.eeprom.exe"
 
 Name "${REG_NAME} Installer"
 
@@ -104,13 +106,13 @@ Section "${REG_NAME} Application"
 
        File "*.dll"
 
-       File "../icon/${ICO_ICO}"
+       File "../icon/${WIN_APP_ICON}"
 
-       CreateShortCut "$SMPROGRAMS\${REG_NAME}.lnk" "$SYSDIR\javaw.exe" "-jar ${FAT_NAME}" "$INSTDIR\${ICO_ICO}"
+       CreateShortCut "$SMPROGRAMS\${REG_NAME}.lnk" "$SYSDIR\javaw.exe" "-jar ${FAT_NAME}" "$INSTDIR\${WIN_APP_ICON}"
 SectionEnd
 
 Section "${REG_NAME} Desktop Shortcut"
-       CreateShortCut "$DESKTOP\${REG_NAME}.lnk" "$INSTDIR\${FAT_NAME}"  "" "$INSTDIR\${ICO_ICO}"
+       CreateShortCut "$DESKTOP\${REG_NAME}.lnk" "$INSTDIR\${FAT_NAME}"  "" "$INSTDIR\${WIN_APP_ICON}"
 SectionEnd
 
 Section "TeleMetrum, TeleDongle and TeleBT Firmware"
@@ -145,35 +147,51 @@ SectionEnd
 
 Section "File Associations"
 
+       ${DisableX64FSRedirection}
+
        SetOutPath $INSTDIR
 
-       File "../icon/${ICO_EXE}"
+       File "../icon/${WIN_APP_EXE}"
+       File "../icon/${WIN_TELEM_EXE}"
+       File "../icon/${WIN_EEPROM_EXE}"
 
-       ; application elements
-       
-       WriteRegStr HKCR "${PROG_ID}"                   ""                              "Altus Metrum Data File"
-       WriteRegStr HKCR "${PROG_ID}"                   "FriendlyTypeName"              "Altus Metrum Data File"
-       WriteRegStr HKCR "${PROG_ID}\CurVer"            ""                              "${PROG_ID}"
-       WriteRegStr HKCR "${PROG_ID}\DefaultIcon"       ""                              '"$INSTDIR\${ICO_EXE}",-101'
-  WriteRegExpandStr HKCR "${PROG_ID}\shell\play\command" ""                            '"%SYSTEMROOT%\System32\javaw.exe" -Djava.library.path="$INSTDIR" -jar "$INSTDIR\${FAT_NAME}" "%1"'
+       DeleteRegKey HKCR "${PROG_ID_TELEM}"
+       DeleteRegKey HKCR "${PROG_ID_EEPROM}"
+
+       DeleteRegKey   HKCR ".eeprom\${PROG_ID_EEPROM}"
+       DeleteRegValue HKCR ".eeprom\OpenWithProgids" "${PROG_ID_EEPROM}"
+       DeleteRegKey   HKCR ".telem\${PROG_ID_EEPROM}"
+       DeleteRegValue HKCR ".telem\OpenWithProgids" "${PROG_ID_EEPROM}"
 
        ; .eeprom elements
 
-       WriteRegStr HKCR ".eeprom"                      ""                              "${PROG_ALTOSUI}"
+       WriteRegStr HKCR "${PROG_ID_EEPROM}"            ""                              "Altus Metrum Log File"
+       WriteRegStr HKCR "${PROG_ID_EEPROM}"            "FriendlyTypeName"              "Altus Metrum Log File"
+       WriteRegStr HKCR "${PROG_ID_EEPROM}\CurVer"     ""                              "${PROG_ID_EEPROM}"
+       WriteRegStr HKCR "${PROG_ID_EEPROM}\DefaultIcon" ""                             '"$INSTDIR\${WIN_EEPROM_EXE}",-101'
+  WriteRegExpandStr HKCR "${PROG_ID_EEPROM}\shell\open\command" ""                     '"%SYSTEMROOT%\System32\javaw.exe" -Djava.library.path="$INSTDIR" -jar "$INSTDIR\${FAT_NAME}" "%1"'
+
+       WriteRegStr HKCR ".eeprom"                      ""                              "${PROG_ID_EEPROM}"
        WriteRegStr HKCR ".eeprom"                      "PerceivedType"                 "Altus Metrum Log File"
-       WriteRegStr HKCR ".eeprom"                      "Content Type"                  "application/altosui"
+       WriteRegStr HKCR ".eeprom"                      "Content Type"                  "application/vnd.altusmetrum.eeprom"
 
-       WriteRegStr HKCR ".eeprom\OpenWithProgids"      "${PROG_ID}"                    ""
-       WriteRegStr HKCR ".eeprom\${PROG_ID}"           ""                              "${REG_NAME}"
+       WriteRegStr HKCR ".eeprom\OpenWithProgids"      "${PROG_ID_EEPROM}"             ""
+       WriteRegStr HKCR ".eeprom\${PROG_ID_EEPROM}"    ""                              "${REG_NAME}"
        
        ; .telem elements
        
-       WriteRegStr HKCR ".telem"                       ""                              "${PROG_ALTOSUI}"
+       WriteRegStr HKCR "${PROG_ID_TELEM}"             ""                              "Altus Metrum Telemetry File"
+       WriteRegStr HKCR "${PROG_ID_TELEM}"             "FriendlyTypeName"              "Altus Metrum Telemetry File"
+       WriteRegStr HKCR "${PROG_ID_TELEM}\CurVer"      ""                              "${PROG_ID_TELEM}"
+       WriteRegStr HKCR "${PROG_ID_TELEM}\DefaultIcon" ""                              '"$INSTDIR\${WIN_TELEM_EXE}",-101'
+  WriteRegExpandStr HKCR "${PROG_ID_TELEM}\shell\open\command" ""                      '"%SYSTEMROOT%\System32\javaw.exe" -Djava.library.path="$INSTDIR" -jar "$INSTDIR\${FAT_NAME}" "%1"'
+
+       WriteRegStr HKCR ".telem"                       ""                              "${PROG_ID_TELEM}"
        WriteRegStr HKCR ".telem"                       "PerceivedType"                 "Altus Metrum Telemetry File"
-       WriteRegStr HKCR ".telem"                       "Content Type"                  "application/altosui"
+       WriteRegStr HKCR ".telem"                       "Content Type"                  "application/vnd.altusmetrum.telemetry"
 
-       WriteRegStr HKCR ".telem\OpenWithProgids"       "${PROG_ID}"                    ""
-       WriteRegStr HKCR ".telem\${PROG_ID}"            ""                              "${REG_NAME}"
+       WriteRegStr HKCR ".telem\OpenWithProgids"       "${PROG_ID_TELEM}"              ""
+       WriteRegStr HKCR ".telem\${PROG_ID_TELEM}"      ""                              "${REG_NAME}"
 
        Call RefreshShellIcons
 SectionEnd
@@ -206,21 +224,22 @@ Section "Uninstall"
 
        DetailPrint "Delete uninstall reg entries"
 
-       DeleteRegKey   HKCR "${PROG_ID}"
+       DeleteRegKey   HKCR "${PROG_ID_EEPROM}"
+       DeleteRegKey   HKCR "${PROG_ID_TELEM}"
 
-       DeleteRegKey   HKCR ".eeprom\${PROG_ID}"
-       DeleteRegValue HKCR ".eeprom\OpenWithProgids" "${PROG_ID}"
+       DeleteRegKey   HKCR ".eeprom\${PROG_ID_EEPROM}"
+       DeleteRegValue HKCR ".eeprom\OpenWithProgids" "${PROG_ID_EEPROM}"
 
-       DeleteRegKey   HKCR ".telem\${PROG_ID}"
-       DeleteRegValue HKCR ".telem\OpenWithProgids" "${PROG_ID}"
+       DeleteRegKey   HKCR ".telem\${PROG_ID_TELEM}"
+       DeleteRegValue HKCR ".telem\OpenWithProgids" "${PROG_ID_TELEM}"
 
        DetailPrint "Delete file association reg entries"
 
        Delete "$INSTDIR\${FAT_NAME}"
        Delete "$INSTDIR\uninstall-${REG_NAME}.exe"
 
-       Delete "$INSTDIR\${ICO_ICO}"
-       Delete "$INSTDIR\${ICO_EXE}"
+       Delete "$INSTDIR\${WIN_APP_ICON}"
+       Delete "$INSTDIR\${WIN_APP_EXE}"
 
        ; Remove shortcuts, if any
        Delete "$SMPROGRAMS\${REG_NAME}.lnk"
index 716571c..10fd9e9 100644 (file)
@@ -4,7 +4,7 @@ Version=1.0
 Name=AltOS UI
 GenericName=Altus Metrum Ground Station
 Comment=View and log downlink data from Altus Metrum products
-Icon=%icondir%/altusmetrum.svg
+Icon=%icondir%/altusmetrum-altosui.svg
 Exec=%bindir%/altosui %f
 Terminal=false
 MimeType=application/vnd.altusmetrum.telemetry;application/vnd.altusmetrum.eeprom
index 40cf2f3..94c7c70 100644 (file)
@@ -1,6 +1,6 @@
-altus-metrum-*.png
-micropeak-*.png
-telegps-*.png
+application-*.png
+altusmetrum-*.png
+*.rc
 *.ico
 *.icns
 *.build
index 61a1691..516c547 100644 (file)
@@ -3,85 +3,137 @@ MAC_RES=16 32 128 256 512
 WIN_RES=16 24 32 48 64 72 96 128 180 256
 RES=$(shell echo $(JAVA_RES) $(MAC_RES) $(WIN_RES) | awk '{ for (i = 1; i <= NF; i++) printf("%s\n", $$i); }' | sort -n -u)
 
-AM_FILES=$(shell for i in $(RES); do echo altus-metrum-$$i.png; done)
-MP_FILES=$(shell for i in $(RES); do echo micropeak-$$i.png; done)
-TG_FILES=$(shell for i in $(RES); do echo telegps-$$i.png; done)
+# Application icon base names
 
-MAC_TG_FILES=$(shell for i in $(MAC_RES); do echo telegps-$$i.png; done)
-MAC_MP_FILES=$(shell for i in $(MAC_RES); do echo micropeak-$$i.png; done)
-MAC_AM_FILES=$(shell for i in $(MAC_RES); do echo altus-metrum-$$i.png; done)
+AM_NAME                = altusmetrum-altosui
+MP_NAME                = altusmetrum-micropeak
+TG_NAME                = altusmetrum-telegps
 
-WIN_TG_FILES=$(shell for i in $(WIN_RES); do echo telegps-$$i.png; done)
-WIN_MP_FILES=$(shell for i in $(WIN_RES); do echo micropeak-$$i.png; done)
-WIN_AM_FILES=$(shell for i in $(WIN_RES); do echo altus-metrum-$$i.png; done)
+# File icon base names
 
-ICO_FILES=altus-metrum.ico micro-peak.ico telegps.ico
-ICNS_FILES=AltosUIIcon.icns TeleGPS.icns MicroPeak.icns
+EEPROM_NAME    = application-vnd.altusmetrum.eeprom
+TELEM_NAME     = application-vnd.altusmetrum.telemetry
+MPD_NAME       = application-vnd.altusmetrum.micropeak
 
-icondir = $(datadir)/icons/hicolor/scalable/apps
+# Application icons
 
-AM_ICON = altusmetrum.svg
-MP_ICON = micropeak.svg
-TG_ICON = telegps.svg
+AM_ICON                = $(AM_NAME).svg
+MP_ICON                = $(MP_NAME).svg
+TG_ICON                = $(TG_NAME).svg
 
-icon_DATA = $(AM_ICON) $(MP_ICON) $(TG_ICON)
+# File icons (note that MicroPeak uses the application icon for files)
 
-EXTRA_DIST = $(icon_DATA) $(AM_FILES) $(MP_FILES) $(TG_FILES)
+EEPROM_ICON    = $(EEPROM_NAME).svg
+TELEM_ICON     = $(TELEM_NAME).svg
+MPD_ICON       = $(MPD_NAME).svg
 
-res:
-       echo $(RES)
+# Files needed for Mac OSX icons
 
-all-local: $(ICO_FILES) $(ICNS_FILES)
+MAC_AM_FILES   = $(shell for i in $(MAC_RES); do echo $(AM_NAME)-$$i.png; done)
+MAC_MP_FILES   = $(shell for i in $(MAC_RES); do echo $(MP_NAME)-$$i.png; done)
+MAC_TG_FILES   = $(shell for i in $(MAC_RES); do echo $(TG_NAME)-$$i.png; done)
+MAC_EEPROM_FILES= $(shell for i in $(MAC_RES); do echo $(EEPROM_NAME)-$$i.png; done)
+MAC_TELEM_FILES        = $(shell for i in $(MAC_RES); do echo $(TELEM_NAME)-$$i.png; done)
+MAC_MPD_FILES  = $(shell for i in $(MAC_RES); do echo $(MPD_NAME)-$$i.png; done)
 
-clean-local:
-       $(RM) altus-metrum-*.png telegps-*.png micropeak-*.png *.build *.ico *.icns *.o *.exe
+ICNS_FILES     = $(AM_NAME).icns $(MP_NAME).icns $(TG_NAME).icns \
+                 $(EEPROM_NAME).icns $(TELEM_NAME).icns $(MPD_NAME).icns
 
-$(AM_FILES): altusmetrum.build
+# Files needed for Windows icons
 
-altusmetrum.build: altusmetrum.svg
-       for i in $(RES); do rsvg-convert -w $$i -h $$i -o altus-metrum-$$i.png altusmetrum.svg; done && touch $@
+WIN_AM_FILES   = $(shell for i in $(WIN_RES); do echo $(AM_NAME)-$$i.png; done)
+WIN_MP_FILES   = $(shell for i in $(WIN_RES); do echo $(MP_NAME)-$$i.png; done)
+WIN_TG_FILES   = $(shell for i in $(WIN_RES); do echo $(TG_NAME)-$$i.png; done)
+WIN_EEPROM_FILES= $(shell for i in $(WIN_RES); do echo $(EEPROM_NAME)-$$i.png; done)
+WIN_TELEM_FILES        = $(shell for i in $(WIN_RES); do echo $(TELEM_NAME)-$$i.png; done)
+WIN_MPD_FILES  = $(shell for i in $(WIN_RES); do echo $(MPD_NAME)-$$i.png; done)
 
-$(TG_FILES): telegps.build
+ICO_FILES      = $(AM_NAME).ico $(MP_NAME).ico $(TG_NAME).ico \
+                 $(EEPROM_NAME).ico $(TELEM_NAME).ico $(MPD_NAME).ico
 
-telegps.build: telegps.svg
-       for i in $(RES); do rsvg-convert -w $$i -h $$i -o telegps-$$i.png telegps.svg; done && touch $@
+EXE_FILES      = $(AM_NAME).exe $(MP_NAME).exe $(TG_NAME).exe \
+                 $(EEPROM_NAME).exe $(TELEM_NAME).exe $(MPD_NAME).exe
 
-$(MP_FILES): micropeak.build
+# Files needed for Java internal icons
 
-micropeak.build: micropeak.svg
-       for i in $(RES); do rsvg-convert -w $$i -h $$i -o micropeak-$$i.png micropeak.svg; done && touch $@
+JAVA_AM_FILES  = $(shell for i in $(JAVA_RES); do echo $(AM_NAME)-$$i.png; done)
+JAVA_MP_FILES  = $(shell for i in $(JAVA_RES); do echo $(MP_NAME)-$$i.png; done)
+JAVA_TG_FILES  = $(shell for i in $(JAVA_RES); do echo $(TG_NAME)-$$i.png; done)
 
-#clean-local:
-#      $(RM) -f $(ICO_FILES)
+JAVA_FILES     = $(JAVA_AM_FILES) $(JAVA_MP_FILES) $(JAVA_TG_FILES)
 
-altus-metrum.ico: $(WIN_AM_FILES)
-       icotool -c -o $@ $(WIN_AM_FILES)
+# PNG files needed by anyone
 
-micro-peak.ico: $(WIN_MP_FILES)
-       icotool -c -o $@ $(WIN_MP_FILES)
+AM_FILES       = $(shell for i in $(RES); do echo $(AM_NAME)-$$i.png; done)
+MP_FILES       = $(shell for i in $(RES); do echo $(MP_NAME)-$$i.png; done)
+TG_FILES       = $(shell for i in $(RES); do echo $(TG_NAME)-$$i.png; done)
+EEPROM_FILES   = $(shell for i in $(RES); do echo $(EEPROM_NAME)-$$i.png; done)
+TELEM_FILES    = $(shell for i in $(RES); do echo $(TELEM_NAME)-$$i.png; done)
+IN_MPD_FILES   = $(shell for i in $(RES); do echo $(MPD_NAME)-$$i.png; done)
 
-telegps.ico: $(WIN_TG_FILES)
-       icotool -c -o $@ $(WIN_TG_FILES)
+ICON_THEME=$(datadir)/icons/hicolor
 
-AltosUIIcon.icns: $(MAC_AM_FILES)
-       png2icns $@ $(MAC_AM_FILES)
+appicondir = $(ICON_THEME)/scalable/apps
+appicon_DATA = $(AM_ICON) $(MP_ICON) $(TG_ICON)
 
-TeleGPS.icns: $(MAC_TG_FILES)
-       png2icns $@ $(MAC_TG_FILES)
+MIME_ICONS = $(EEPROM_ICON) $(TELEM_ICON) $(MPD_ICON)
 
-MicroPeak.icns: $(MAC_MP_FILES)
-       png2icns $@ $(MAC_MP_FILES)
+mimeicondir = $(ICON_THEME)/scalable/mimetypes
+mimeicon_DATA = $(MIME_ICONS)
 
-MINGCC32=i686-w64-mingw32-gcc
-MINGWINDRES=i686-w64-mingw32-windres
+mimedir = $(datadir)/mime/packages
+mime_DATA = org-altusmetrum-mimetypes.xml
+
+EXTRA_DIST = $(appicon_DATA) $(mimeicon_DATA) $(mime_DATA) windows-stub.c
+
+res:
+       echo $(RES)
+
+java-altosui:
+       @echo $(JAVA_AM_FILES)
+
+java-micropeak:
+       @echo $(JAVA_MP_FILES)
+
+java-telegps:
+       @echo $(JAVA_TG_FILES)
 
-SUFFIXES=.rc .exe
+fat: all $(ICO_FILES) $(ICNS_FILES) $(EXE_FILES)
 
-fat: all micro-peak.exe altus-metrum.exe telegps.exe
+all-local: $(JAVA_FILES)
 
-altus-metrum.o: altus-metrum.ico
-micro-peak.o: micro-peak.ico
-telegps.o: telegps.ico
+clean-local:
+       $(RM) $(AM_NAME)-*.png $(TG_NAME)-*.png $(MP_NAME)-*.png
+       $(RM) $(EEPROM_NAME)-*.png $(TELEM_NAME)-*.png $(MPD_NAME)-*.png
+       $(RM) *.build *.ico *.rc *.icns *.o *.exe $(MPD_ICON)
+
+install-data-hook:
+       update-mime-database $(datadir)/mime
+       update-icon-caches $(ICON_THEME)
+
+$(MPD_ICON): $(MP_ICON)
+       $(LN_S) $(MP_ICON) $@
+
+$(AM_FILES): $(AM_NAME).build
+$(MP_FILES): $(MP_NAME).build
+$(TG_FILES): $(TG_NAME).build
+
+SUFFIXES=.svg .build .icns .ico .rc .o .exe
+
+.svg.build:
+       for i in $(RES); do rsvg-convert -w $$i -h $$i -o $*-$$i.png $*.svg; done && touch $@
+
+.build.icns:
+       png2icns $@ $(shell for i in $(MAC_RES); do echo $*-$$i.png; done)
+
+.build.ico:
+       icotool -c -o $@ $(shell for i in $(WIN_RES); do echo $*-$$i.png; done)
+
+.ico.rc:
+       echo '101 ICON "$*.ico"' > $@
+
+MINGCC32=i686-w64-mingw32-gcc
+MINGWINDRES=i686-w64-mingw32-windres
 
 .rc.o:
        $(MINGWINDRES) $*.rc $@
diff --git a/icon/altus-metrum.rc b/icon/altus-metrum.rc
deleted file mode 100644 (file)
index bbd0360..0000000
+++ /dev/null
@@ -1 +0,0 @@
-101    ICON    "altus-metrum.ico"
diff --git a/icon/altusmetrum-altosui.svg b/icon/altusmetrum-altosui.svg
new file mode 100644 (file)
index 0000000..e8935a6
--- /dev/null
@@ -0,0 +1,250 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   width="214.27165"
+   height="266.00192"
+   version="1.0"
+   sodipodi:version="0.32"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="altusmetrum.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/keithp/src/cc1111/altus-logo/bottom.png"
+   inkscape:export-xdpi="119.89881"
+   inkscape:export-ydpi="119.89881">
+  <metadata
+     id="metadata14">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs12">
+    <linearGradient
+       id="linearGradient3165">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3167" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3169" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3177">
+      <stop
+         style="stop-color:#da7000;stop-opacity:1;"
+         offset="0"
+         id="stop3179" />
+      <stop
+         id="stop3447"
+         offset="0.24528302"
+         style="stop-color:#a63852;stop-opacity:1;" />
+      <stop
+         style="stop-color:#7200a4;stop-opacity:1;"
+         offset="1"
+         id="stop3181" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3169">
+      <stop
+         style="stop-color:#ff8a00;stop-opacity:1;"
+         offset="0"
+         id="stop3171" />
+      <stop
+         id="stop3445"
+         offset="0.71698111"
+         style="stop-color:#c24573;stop-opacity:0.98039216;" />
+      <stop
+         style="stop-color:#8500e7;stop-opacity:0.96078432;"
+         offset="1"
+         id="stop3173" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 121 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="191 : 121 : 1"
+       inkscape:persp3d-origin="95.5 : 80.666667 : 1"
+       id="perspective16" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3175"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3171"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3020"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3022"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3024"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3026"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3028"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3030"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <filter
+       id="filter3005"
+       inkscape:label="Drop Shadow"
+       color-interpolation-filters="sRGB">
+      <feFlood
+         id="feFlood3007"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite3009"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur3011"
+         stdDeviation="80"
+         result="blur" />
+      <feOffset
+         id="feOffset3013"
+         dx="100"
+         dy="100"
+         result="offset" />
+      <feComposite
+         id="feComposite3015"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     inkscape:cy="128.91168"
+     inkscape:cx="271.89232"
+     inkscape:zoom="2.4559706"
+     inkscape:window-height="1177"
+     inkscape:window-width="1462"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10.0"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="false"
+     inkscape:window-x="266"
+     inkscape:window-y="43"
+     inkscape:current-layer="svg2"
+     inkscape:window-maximized="0"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="20"
+     fit-margin-bottom="20" />
+  <g
+     transform="matrix(0.1,0,0,0.1,1.967113,2.4742836)"
+     id="g3"
+     style="fill:url(#radialGradient3175);fill-opacity:1;stroke:url(#radialGradient3171);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;filter:url(#filter3005)">
+    <g
+       transform="translate(20.61545,-27.69425)"
+       style="fill:url(#radialGradient3028);fill-opacity:1;fill-rule:evenodd;stroke:url(#radialGradient3030);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+       id="g5">
+      <path
+         d="m 931.07168,1164.597 248.86992,-331.80265 416.1687,1338.32935 286.6484,267.1042 -520.4224,0 -270.2797,-262.2181 0,-1033.0627 -160.98492,106.6818 -160.98492,-106.6818 0,1033.0627 -270.2797,262.2181 -520.4224,0 286.6484,-267.1042 416.1687,-1338.32935 248.86992,331.80265 z"
+         id="path7"
+         style="fill:url(#radialGradient3020);fill-opacity:1;stroke:url(#radialGradient3022);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+         inkscape:connector-curvature="0" />
+      <path
+         d="m 931.07168,27.69425 224.03682,720.46517 -63.341,76.00913 L 931.07168,486.3269 770.37586,824.16855 707.03486,748.15942 931.07168,27.69425 z"
+         id="path9"
+         style="fill:url(#radialGradient3024);fill-opacity:1;stroke:url(#radialGradient3026);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+         inkscape:connector-curvature="0" />
+    </g>
+  </g>
+</svg>
diff --git a/icon/altusmetrum-micropeak.svg b/icon/altusmetrum-micropeak.svg
new file mode 100644 (file)
index 0000000..d37130f
--- /dev/null
@@ -0,0 +1,219 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="49.03825"
+   height="43.606411"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="micropeak.svg">
+  <defs
+     id="defs4">
+    <linearGradient
+       id="linearGradient5343">
+      <stop
+         style="stop-color:#7200a4;stop-opacity:1;"
+         offset="0"
+         id="stop5345" />
+      <stop
+         style="stop-color:#da7000;stop-opacity:1;"
+         offset="1"
+         id="stop5347" />
+    </linearGradient>
+    <marker
+       inkscape:stockid="Arrow2Send"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Send"
+       style="overflow:visible">
+      <path
+         id="path3798"
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(-0.3,0,0,-0.3,0.69,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Send"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Send"
+       style="overflow:visible">
+      <path
+         id="path3780"
+         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+         transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Mend"
+       style="overflow:visible">
+      <path
+         id="path3792"
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="scale(-0.6,-0.6)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible">
+      <path
+         id="path3768"
+         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Lend"
+       style="overflow:visible">
+      <path
+         id="path3786"
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5343"
+       id="linearGradient5349"
+       x1="255.48561"
+       y1="275.90405"
+       x2="280.61411"
+       y2="275.90405"
+       gradientUnits="userSpaceOnUse" />
+    <filter
+       id="filter3027"
+       inkscape:label="Drop Shadow"
+       color-interpolation-filters="sRGB">
+      <feFlood
+         id="feFlood3029"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite3031"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur3033"
+         stdDeviation="1.6"
+         result="blur" />
+      <feOffset
+         id="feOffset3035"
+         dx="2"
+         dy="2"
+         result="offset" />
+      <feComposite
+         id="feComposite3037"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="8.160856"
+     inkscape:cx="33.152671"
+     inkscape:cy="27.859227"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1277"
+     inkscape:window-height="894"
+     inkscape:window-x="543"
+     inkscape:window-y="242"
+     inkscape:window-maximized="0"
+     fit-margin-top="-3"
+     fit-margin-left="-4"
+     fit-margin-right="-1"
+     fit-margin-bottom="0" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-241.43522,-252.43073)">
+    <g
+       id="g3000"
+       style="filter:url(#filter3027)">
+      <g
+         id="text2985"
+         style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#7200a4;fill-opacity:1;stroke:none;font-family:Minion Pro;-inkscape-font-specification:Minion Pro">
+        <path
+           inkscape:connector-curvature="0"
+           id="path3003"
+           style="font-size:36px;font-weight:500;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#7200a4;font-family:ITC Benguiat Gothic Std;-inkscape-font-specification:ITC Benguiat Gothic Std Medium"
+           d="m 257.20241,268.30647 c 0,-1.07999 -0.396,-1.872 -1.584,-1.872 -1.188,0 -1.584,0.79201 -1.584,1.872 l 0,8.676 c 0,2.88 -2.052,5.112 -4.824,5.112 -3.06,0 -4.104,-1.872 -4.104,-5.076 l 0,-8.712 c 0,-1.07999 -0.396,-1.872 -1.584,-1.872 -1.188,0 -1.584,0.79201 -1.584,1.872 l 0,21.924 c 0,1.08 0.396,1.872 1.584,1.872 1.188,0 1.584,-0.792 1.584,-1.872 l 0,-6.156 c 0.792,0.612 2.088,0.972 3.564,0.972 2.304,0 4.428,-0.792 5.652,-2.988 l 0.072,0.072 0,1.26 c 0,0.864 0.54,1.44 1.404,1.44 0.864,0 1.404,-0.576 1.404,-1.44 l 0,-15.084" />
+      </g>
+      <path
+         sodipodi:nodetypes="cssc"
+         inkscape:connector-curvature="0"
+         id="path2991"
+         d="m 256.93561,290.70327 c 3.04022,-0.24413 4.30317,-2.66932 5.38268,-5.56604 1.68059,-4.50963 3.67214,-15.86904 8.62227,-20.55527 4.0668,-3.85 8.22354,-3.46656 8.22354,-3.46656"
+         style="fill:none;stroke:url(#linearGradient5349);stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:none" />
+      <path
+         inkscape:transform-center-y="-0.40889198"
+         inkscape:transform-center-x="-0.29194889"
+         d="m 282.7522,267.42614 -3.93403,-2.77705 -4.51792,1.66641 1.42544,-4.59964 -2.98096,-3.78185 4.815,-0.0657 2.67559,-4.00372 1.55039,4.55904 4.63457,1.30742 -3.85681,2.88333 z"
+         inkscape:randomized="0"
+         inkscape:rounded="0"
+         inkscape:flatsided="false"
+         sodipodi:arg2="1.7014539"
+         sodipodi:arg1="1.0731354"
+         sodipodi:r2="3.6257365"
+         sodipodi:r1="7.2514729"
+         sodipodi:cy="261.05426"
+         sodipodi:cx="279.29056"
+         sodipodi:sides="5"
+         id="path5341"
+         style="fill:none;stroke:#da7000;stroke-width:1.10000002;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         sodipodi:type="star" />
+    </g>
+  </g>
+</svg>
diff --git a/icon/altusmetrum-telegps.svg b/icon/altusmetrum-telegps.svg
new file mode 100644 (file)
index 0000000..1e390f3
--- /dev/null
@@ -0,0 +1,324 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="151.43401"
+   height="144.50209"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="telegps.svg">
+  <defs
+     id="defs4">
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3175"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient3169">
+      <stop
+         style="stop-color:#ff8a00;stop-opacity:1;"
+         offset="0"
+         id="stop3171" />
+      <stop
+         id="stop3445"
+         offset="0.71698111"
+         style="stop-color:#c24573;stop-opacity:0.98039216;" />
+      <stop
+         style="stop-color:#8500e7;stop-opacity:0.96078432;"
+         offset="1"
+         id="stop3173" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3171"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient3165">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3167" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3169" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient2838"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <linearGradient
+       id="linearGradient3181">
+      <stop
+         style="stop-color:#ff8a00;stop-opacity:1;"
+         offset="0"
+         id="stop3183" />
+      <stop
+         id="stop3185"
+         offset="0.71698111"
+         style="stop-color:#c24573;stop-opacity:0.98039216;" />
+      <stop
+         style="stop-color:#8500e7;stop-opacity:0.96078432;"
+         offset="1"
+         id="stop3187" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient2840"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <linearGradient
+       id="linearGradient3190">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3192" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3194" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient2830"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <linearGradient
+       id="linearGradient3197">
+      <stop
+         style="stop-color:#ff8a00;stop-opacity:1;"
+         offset="0"
+         id="stop3199" />
+      <stop
+         id="stop3201"
+         offset="0.71698111"
+         style="stop-color:#c24573;stop-opacity:0.98039216;" />
+      <stop
+         style="stop-color:#8500e7;stop-opacity:0.96078432;"
+         offset="1"
+         id="stop3203" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient2832"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <linearGradient
+       id="linearGradient3206">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3208" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3210" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient2834"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <linearGradient
+       id="linearGradient3213">
+      <stop
+         style="stop-color:#ff8a00;stop-opacity:1;"
+         offset="0"
+         id="stop3215" />
+      <stop
+         id="stop3217"
+         offset="0.71698111"
+         style="stop-color:#c24573;stop-opacity:0.98039216;" />
+      <stop
+         style="stop-color:#8500e7;stop-opacity:0.96078432;"
+         offset="1"
+         id="stop3219" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient2836"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <linearGradient
+       id="linearGradient3222">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3224" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3226" />
+    </linearGradient>
+    <radialGradient
+       r="951.68701"
+       fy="2305.2668"
+       fx="951.68713"
+       cy="2305.2668"
+       cx="951.68713"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse"
+       id="radialGradient3232"
+       xlink:href="#linearGradient3169"
+       inkscape:collect="always" />
+    <radialGradient
+       r="951.68701"
+       fy="1205.2668"
+       fx="951.68713"
+       cy="1205.2668"
+       cx="951.68713"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse"
+       id="radialGradient3234"
+       xlink:href="#linearGradient3165"
+       inkscape:collect="always" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient4101"
+       cx="194.54575"
+       cy="361.16367"
+       fx="194.54575"
+       fy="361.16367"
+       r="70.597672"
+       gradientTransform="matrix(1,0,0,0.95908583,137.14286,74.776711)"
+       gradientUnits="userSpaceOnUse" />
+    <filter
+       id="filter3238"
+       inkscape:label="Drop Shadow"
+       color-interpolation-filters="sRGB">
+      <feFlood
+         id="feFlood3240"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite3242"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur3244"
+         stdDeviation="4"
+         result="blur" />
+      <feOffset
+         id="feOffset3246"
+         dx="5"
+         dy="5"
+         result="offset" />
+      <feComposite
+         id="feComposite3248"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="3.959798"
+     inkscape:cx="91.754359"
+     inkscape:cy="68.172898"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     fit-margin-top="-12"
+     fit-margin-left="-12"
+     fit-margin-right="-6"
+     fit-margin-bottom="-6"
+     inkscape:window-width="996"
+     inkscape:window-height="970"
+     inkscape:window-x="930"
+     inkscape:window-y="553"
+     inkscape:window-maximized="0" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-258.97144,-351.91262)">
+    <path
+       style="fill:url(#radialGradient4101);fill-opacity:1;filter:url(#filter3238)"
+       d="m 261.09094,466.61035 1.9122,-1.69399 39.0721,-36.4688 20.74158,22.05252 -40.71991,38.37279 z m 36.24983,1.34654 -14.08636,-15.38433 -15.33887,14.40857 14.50759,15.23741 z m 18.98704,-17.58715 -14.47613,-15.53942 -14.95191,14.42099 14.19976,15.37575 z m 43.2565,3.24033 -5.69326,-6.00917 -2.76929,1.85727 c -5.01515,3.36349 -10.61773,4.75193 -13.55344,3.35884 -0.90785,-0.4308 -11.20677,-10.85557 -16.46128,-16.61505 -6.3177,-6.92484 -17.77225,-18.68338 -18.08204,-21.53696 l -0.25491,-2.34789 -6.68224,-3.00173 -6.68224,-3.00173 -0.12416,-2.54849 c -0.24316,-4.99109 2.61694,-11.66135 7.10652,-16.57368 6.51922,-7.13306 14.23173,-10.81215 21.4071,-10.21178 l 2.49577,0.20881 2.34108,7.3087 2.34109,7.3087 2.0542,0.21626 c 1.12981,0.11895 2.29245,0.36702 2.58364,0.55127 0.29119,0.18424 11.17756,11.55849 16.63562,17.46044 5.67391,6.13537 16.35301,17.71615 16.74619,18.65715 1.36492,3.26672 -0.56522,9.34479 -4.44838,14.00803 -0.92939,1.1161 -1.6875,2.14976 -1.6847,2.29703 0.003,0.14726 2.44601,2.88431 5.42933,6.08233 2.98332,3.19801 5.42421,6.02814 5.42421,6.28919 0,0.66794 -0.91528,1.72591 -1.73982,2.01104 -0.50334,0.17406 -2.27007,-1.42112 -6.38899,-5.76858 z m -13.8944,-6.52384 c 0.96195,-0.49074 2.46683,-1.3673 3.34417,-1.94791 l 1.59519,-1.05564 -1.69025,-1.72225 c -1.71532,-1.74777 -2.09589,-2.99732 -1.1891,-3.90412 0.98407,-0.98406 2.33559,-0.53387 3.9423,1.31314 l 1.57825,1.81431 1.43638,-1.7099 c 1.7115,-2.03742 3.3933,-5.47555 3.39008,-6.9304 -0.0104,-4.68327 -7.01613,-2.68794 -13.36898,3.80766 -4.26282,4.35861 -6.32786,9.57528 -4.26584,10.77629 1.19252,0.69458 3.36009,0.51166 5.2278,-0.44118 z m -37.53066,-44.39022 c 2.23934,-2.70633 7.29399,-6.99375 10.13666,-8.59806 1.69887,-0.95877 2.21231,-1.46174 2.04152,-1.99985 -0.1255,-0.3954 -1.05734,-3.0661 -2.07077,-5.93487 l -1.84259,-5.21596 -1.60649,0.12825 c -4.1301,0.32972 -9.06228,2.86043 -13.29918,6.82384 -4.03277,3.77245 -7.7843,10.20829 -7.89014,13.53572 l -0.0463,1.4539 5.4085,2.47197 5.4085,2.47197 1.02919,-1.54008 c 0.56606,-0.84704 1.79503,-2.46562 2.73105,-3.59683 z m 32.91039,-10.47213 40.55794,-38.76942 c 7.09795,7.71166 14.5366,15.63755 20.65837,22.2503 l -40.53088,38.2414 z m 35.73645,1.02093 -14.2595,-15.3791 -15.29495,14.35785 14.65467,15.14661 z m 18.6801,-17.55816 -14.10162,-15.40128 -15.32812,14.3973 14.52992,15.24342 z"
+       id="path3063"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccccccccccccccscssascccssscccscasscsssssccssscssssscssscssccccsccccccccccccccccc" />
+  </g>
+</svg>
diff --git a/icon/altusmetrum.svg b/icon/altusmetrum.svg
deleted file mode 100644 (file)
index e8935a6..0000000
+++ /dev/null
@@ -1,250 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   id="svg2"
-   width="214.27165"
-   height="266.00192"
-   version="1.0"
-   sodipodi:version="0.32"
-   inkscape:version="0.48.4 r9939"
-   sodipodi:docname="altusmetrum.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   inkscape:export-filename="/home/keithp/src/cc1111/altus-logo/bottom.png"
-   inkscape:export-xdpi="119.89881"
-   inkscape:export-ydpi="119.89881">
-  <metadata
-     id="metadata14">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <defs
-     id="defs12">
-    <linearGradient
-       id="linearGradient3165">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop3167" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop3169" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient3177">
-      <stop
-         style="stop-color:#da7000;stop-opacity:1;"
-         offset="0"
-         id="stop3179" />
-      <stop
-         id="stop3447"
-         offset="0.24528302"
-         style="stop-color:#a63852;stop-opacity:1;" />
-      <stop
-         style="stop-color:#7200a4;stop-opacity:1;"
-         offset="1"
-         id="stop3181" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient3169">
-      <stop
-         style="stop-color:#ff8a00;stop-opacity:1;"
-         offset="0"
-         id="stop3171" />
-      <stop
-         id="stop3445"
-         offset="0.71698111"
-         style="stop-color:#c24573;stop-opacity:0.98039216;" />
-      <stop
-         style="stop-color:#8500e7;stop-opacity:0.96078432;"
-         offset="1"
-         id="stop3173" />
-    </linearGradient>
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 121 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="191 : 121 : 1"
-       inkscape:persp3d-origin="95.5 : 80.666667 : 1"
-       id="perspective16" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient3175"
-       cx="951.68713"
-       cy="2305.2668"
-       fx="951.68713"
-       fy="2305.2668"
-       r="951.68701"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       gradientUnits="userSpaceOnUse" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3165"
-       id="radialGradient3171"
-       cx="951.68713"
-       cy="1205.2668"
-       fx="951.68713"
-       fy="1205.2668"
-       r="951.68701"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       gradientUnits="userSpaceOnUse" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient3020"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="2305.2668"
-       fx="951.68713"
-       fy="2305.2668"
-       r="951.68701" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3165"
-       id="radialGradient3022"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="1205.2668"
-       fx="951.68713"
-       fy="1205.2668"
-       r="951.68701" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient3024"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="2305.2668"
-       fx="951.68713"
-       fy="2305.2668"
-       r="951.68701" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3165"
-       id="radialGradient3026"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="1205.2668"
-       fx="951.68713"
-       fy="1205.2668"
-       r="951.68701" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient3028"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="2305.2668"
-       fx="951.68713"
-       fy="2305.2668"
-       r="951.68701" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3165"
-       id="radialGradient3030"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="1205.2668"
-       fx="951.68713"
-       fy="1205.2668"
-       r="951.68701" />
-    <filter
-       id="filter3005"
-       inkscape:label="Drop Shadow"
-       color-interpolation-filters="sRGB">
-      <feFlood
-         id="feFlood3007"
-         flood-opacity="0.604"
-         flood-color="rgb(0,0,0)"
-         result="flood" />
-      <feComposite
-         id="feComposite3009"
-         in2="SourceGraphic"
-         in="flood"
-         operator="in"
-         result="composite1" />
-      <feGaussianBlur
-         id="feGaussianBlur3011"
-         stdDeviation="80"
-         result="blur" />
-      <feOffset
-         id="feOffset3013"
-         dx="100"
-         dy="100"
-         result="offset" />
-      <feComposite
-         id="feComposite3015"
-         in2="offset"
-         in="SourceGraphic"
-         operator="over"
-         result="composite2" />
-    </filter>
-  </defs>
-  <sodipodi:namedview
-     inkscape:cy="128.91168"
-     inkscape:cx="271.89232"
-     inkscape:zoom="2.4559706"
-     inkscape:window-height="1177"
-     inkscape:window-width="1462"
-     inkscape:pageshadow="2"
-     inkscape:pageopacity="0.0"
-     guidetolerance="10.0"
-     gridtolerance="10.0"
-     objecttolerance="10.0"
-     borderopacity="1.0"
-     bordercolor="#666666"
-     pagecolor="#ffffff"
-     id="base"
-     showgrid="false"
-     inkscape:window-x="266"
-     inkscape:window-y="43"
-     inkscape:current-layer="svg2"
-     inkscape:window-maximized="0"
-     fit-margin-top="0"
-     fit-margin-left="0"
-     fit-margin-right="20"
-     fit-margin-bottom="20" />
-  <g
-     transform="matrix(0.1,0,0,0.1,1.967113,2.4742836)"
-     id="g3"
-     style="fill:url(#radialGradient3175);fill-opacity:1;stroke:url(#radialGradient3171);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;filter:url(#filter3005)">
-    <g
-       transform="translate(20.61545,-27.69425)"
-       style="fill:url(#radialGradient3028);fill-opacity:1;fill-rule:evenodd;stroke:url(#radialGradient3030);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
-       id="g5">
-      <path
-         d="m 931.07168,1164.597 248.86992,-331.80265 416.1687,1338.32935 286.6484,267.1042 -520.4224,0 -270.2797,-262.2181 0,-1033.0627 -160.98492,106.6818 -160.98492,-106.6818 0,1033.0627 -270.2797,262.2181 -520.4224,0 286.6484,-267.1042 416.1687,-1338.32935 248.86992,331.80265 z"
-         id="path7"
-         style="fill:url(#radialGradient3020);fill-opacity:1;stroke:url(#radialGradient3022);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
-         inkscape:connector-curvature="0" />
-      <path
-         d="m 931.07168,27.69425 224.03682,720.46517 -63.341,76.00913 L 931.07168,486.3269 770.37586,824.16855 707.03486,748.15942 931.07168,27.69425 z"
-         id="path9"
-         style="fill:url(#radialGradient3024);fill-opacity:1;stroke:url(#radialGradient3026);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
-         inkscape:connector-curvature="0" />
-    </g>
-  </g>
-</svg>
diff --git a/icon/application-vnd.altusmetrum.eeprom.svg b/icon/application-vnd.altusmetrum.eeprom.svg
new file mode 100644 (file)
index 0000000..7b481cd
--- /dev/null
@@ -0,0 +1,397 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   width="214.27165"
+   height="266.00192"
+   version="1.0"
+   sodipodi:version="0.32"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="application-vnd-altusmetrum-eeprom.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/keithp/src/cc1111/altus-logo/bottom.png"
+   inkscape:export-xdpi="119.89881"
+   inkscape:export-ydpi="119.89881">
+  <metadata
+     id="metadata14">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs12">
+    <linearGradient
+       id="linearGradient3165">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3167" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3169" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3177">
+      <stop
+         style="stop-color:#da7000;stop-opacity:1;"
+         offset="0"
+         id="stop3179" />
+      <stop
+         id="stop3447"
+         offset="0.24528302"
+         style="stop-color:#a63852;stop-opacity:1;" />
+      <stop
+         style="stop-color:#7200a4;stop-opacity:1;"
+         offset="1"
+         id="stop3181" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3169">
+      <stop
+         style="stop-color:#ff8a00;stop-opacity:1;"
+         offset="0"
+         id="stop3171" />
+      <stop
+         id="stop3445"
+         offset="0.71698111"
+         style="stop-color:#c24573;stop-opacity:0.98039216;" />
+      <stop
+         style="stop-color:#8500e7;stop-opacity:0.96078432;"
+         offset="1"
+         id="stop3173" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 121 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="191 : 121 : 1"
+       inkscape:persp3d-origin="95.5 : 80.666667 : 1"
+       id="perspective16" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3175"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3171"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3020"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3022"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3024"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3026"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3028"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3030"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <filter
+       id="filter3005"
+       inkscape:label="Drop Shadow"
+       color-interpolation-filters="sRGB">
+      <feFlood
+         id="feFlood3007"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite3009"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur3011"
+         stdDeviation="80"
+         result="blur" />
+      <feOffset
+         id="feOffset3013"
+         dx="100"
+         dy="100"
+         result="offset" />
+      <feComposite
+         id="feComposite3015"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient4415"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient4417"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient4419"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient4421"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient4423"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient4425"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient4427"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient4429"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <filter
+       id="filter4485"
+       style="color-interpolation-filters:sRGB;"
+       inkscape:label="Drop Shadow">
+      <feFlood
+         id="feFlood4487"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite4489"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur4491"
+         in="composite"
+         stdDeviation="8"
+         result="blur" />
+      <feOffset
+         id="feOffset4493"
+         dx="10"
+         dy="10"
+         result="offset" />
+      <feComposite
+         id="feComposite4495"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     inkscape:cy="128.91168"
+     inkscape:cx="213.59793"
+     inkscape:zoom="2.4559706"
+     inkscape:window-height="1177"
+     inkscape:window-width="1462"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10.0"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="false"
+     inkscape:window-x="899"
+     inkscape:window-y="94"
+     inkscape:current-layer="svg2"
+     inkscape:window-maximized="0"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="20"
+     fit-margin-bottom="20" />
+  <g
+     id="g4439"
+     style="filter:url(#filter4485)">
+    <g
+       style="fill:url(#radialGradient4427);fill-opacity:1;stroke:url(#radialGradient4429);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;"
+       id="g3"
+       transform="matrix(0.1,0,0,0.1,1.967113,2.4742836)">
+      <g
+         id="g5"
+         style="fill:url(#radialGradient4423);fill-opacity:1;fill-rule:evenodd;stroke:url(#radialGradient4425);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;"
+         transform="translate(20.61545,-27.69425)">
+        <path
+           inkscape:connector-curvature="0"
+           style="fill:url(#radialGradient4415);fill-opacity:1;stroke:url(#radialGradient4417);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;"
+           id="path7"
+           d="m 931.07168,1164.597 248.86992,-331.80265 416.1687,1338.32935 286.6484,267.1042 -520.4224,0 -270.2797,-262.2181 0,-1033.0627 -160.98492,106.6818 -160.98492,-106.6818 0,1033.0627 -270.2797,262.2181 -520.4224,0 286.6484,-267.1042 416.1687,-1338.32935 248.86992,331.80265 z" />
+        <path
+           inkscape:connector-curvature="0"
+           style="fill:url(#radialGradient4419);fill-opacity:1;stroke:url(#radialGradient4421);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;"
+           id="path9"
+           d="m 931.07168,27.69425 224.03682,720.46517 -63.341,76.00913 L 931.07168,486.3269 770.37586,824.16855 707.03486,748.15942 931.07168,27.69425 z" />
+      </g>
+    </g>
+    <g
+       transform="matrix(2.8009121,0,0,2.8009121,97.173402,128.84062)"
+       id="g4373"
+       style="fill-rule:evenodd">
+      <path
+         id="rect3922"
+         d="m 30.19825,5.3569063 c 0.5796,0 1.046698,0.6864133 1.046698,1.5381453 l 0,25.8484734 c 0,0.851692 -0.467114,1.538145 -1.046698,1.538145 l -29.0366268,0 c -0.57960004,0 -1.04669856,-0.686421 -1.04669856,-1.538145 0,0 0.002884,-25.8275138 2.6458e-4,-25.8479191 0,-0.8516925 0.46711441,-1.5381453 1.04669858,-1.5381453 l 29.0366272,0 z"
+         inkscape:connector-curvature="0"
+         style="fill:#333333;stroke:#000000;stroke-width:0.22984983"
+         sodipodi:nodetypes="cssssccscc" />
+      <path
+         style="fill:#999999;stroke:#000000;stroke-width:0.26240885"
+         id="path4952"
+         d="m 4.3596675,0.13120443 0,0.7176181 -1.2452482,3.12200877 0,1.4500325 5.4990161,0 0,-1.4500325 -1.2406962,-3.12200877 0,-0.7176181 -3.0131735,0 z m 6.6261025,0 0,0.7176181 -1.2452487,3.12200877 0,1.4500325 5.4990167,0 0,-1.4500325 -1.240696,-3.12200877 0,-0.7176181 -3.013174,0 z m 6.621594,0 0,0.7176181 -1.240696,3.12200877 0,1.4500325 5.499015,0 0,-1.4500325 -1.240696,-3.12200877 0,-0.7176181 -3.017682,0 z m 6.626102,0 0,0.7176181 -1.240696,3.12200877 0,1.4500325 5.499015,0 0,-1.4500325 -1.240696,-3.12200877 0,-0.7176181 -3.017682,0 z"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccc" />
+      <path
+         style="fill:#999999;stroke:#000000;stroke-width:0.26240885"
+         id="path4974"
+         d="m 3.1147829,34.371248 0,1.450032 1.2452481,3.122009 0,0.717618 3.0131736,0 0,-0.717618 1.2406961,-3.122009 0,-1.450032 -5.499016,0 z m 6.626102,0 0,1.450032 1.2452481,3.122009 0,0.717618 3.013173,0 0,-0.717618 1.240697,-3.122009 0,-1.450032 -5.4990163,0 z m 6.6261021,0 0,1.450032 1.240696,3.122009 0,0.717618 3.017683,0 0,-0.717618 1.240696,-3.122009 0,-1.450032 -5.499017,0 z m 6.626102,0 0,1.450032 1.240696,3.122009 0,0.717618 3.017683,0 0,-0.717618 1.240696,-3.122009 0,-1.450032 -5.499017,0 z"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccc" />
+    </g>
+  </g>
+</svg>
diff --git a/icon/application-vnd.altusmetrum.micropeak.svg b/icon/application-vnd.altusmetrum.micropeak.svg
new file mode 120000 (symlink)
index 0000000..6efd320
--- /dev/null
@@ -0,0 +1 @@
+altusmetrum-micropeak.svg
\ No newline at end of file
diff --git a/icon/application-vnd.altusmetrum.telemetry.svg b/icon/application-vnd.altusmetrum.telemetry.svg
new file mode 100644 (file)
index 0000000..4bcc085
--- /dev/null
@@ -0,0 +1,397 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   width="214.27165"
+   height="266.00192"
+   version="1.0"
+   sodipodi:version="0.32"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="application-vnd.altusmetrum.telemetry.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/keithp/src/cc1111/altus-logo/bottom.png"
+   inkscape:export-xdpi="119.89881"
+   inkscape:export-ydpi="119.89881">
+  <metadata
+     id="metadata14">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs12">
+    <linearGradient
+       id="linearGradient3165">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3167" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3169" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3177">
+      <stop
+         style="stop-color:#da7000;stop-opacity:1;"
+         offset="0"
+         id="stop3179" />
+      <stop
+         id="stop3447"
+         offset="0.24528302"
+         style="stop-color:#a63852;stop-opacity:1;" />
+      <stop
+         style="stop-color:#7200a4;stop-opacity:1;"
+         offset="1"
+         id="stop3181" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3169">
+      <stop
+         style="stop-color:#ff8a00;stop-opacity:1;"
+         offset="0"
+         id="stop3171" />
+      <stop
+         id="stop3445"
+         offset="0.71698111"
+         style="stop-color:#c24573;stop-opacity:0.98039216;" />
+      <stop
+         style="stop-color:#8500e7;stop-opacity:0.96078432;"
+         offset="1"
+         id="stop3173" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 121 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="191 : 121 : 1"
+       inkscape:persp3d-origin="95.5 : 80.666667 : 1"
+       id="perspective16" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3175"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3171"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3020"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3022"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3024"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3026"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3169"
+       id="radialGradient3028"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="2305.2668"
+       fx="951.68713"
+       fy="2305.2668"
+       r="951.68701" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient3030"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
+       cx="951.68713"
+       cy="1205.2668"
+       fx="951.68713"
+       fy="1205.2668"
+       r="951.68701" />
+    <filter
+       id="filter3005"
+       inkscape:label="Drop Shadow"
+       color-interpolation-filters="sRGB">
+      <feFlood
+         id="feFlood3007"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite3009"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur3011"
+         stdDeviation="80"
+         result="blur" />
+      <feOffset
+         id="feOffset3013"
+         dx="100"
+         dy="100"
+         result="offset" />
+      <feComposite
+         id="feComposite3015"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+    <filter
+       id="filter4113"
+       style="color-interpolation-filters:sRGB;"
+       inkscape:label="Drop Shadow">
+      <feFlood
+         id="feFlood4115"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite4117"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur4119"
+         in="composite"
+         stdDeviation="6"
+         result="blur" />
+      <feOffset
+         id="feOffset4121"
+         dx="7.5"
+         dy="7.5"
+         result="offset" />
+      <feComposite
+         id="feComposite4123"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+    <filter
+       id="filter4125"
+       style="color-interpolation-filters:sRGB;"
+       inkscape:label="Drop Shadow">
+      <feFlood
+         id="feFlood4127"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite4129"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur4131"
+         in="composite"
+         stdDeviation="6"
+         result="blur" />
+      <feOffset
+         id="feOffset4133"
+         dx="7.5"
+         dy="7.5"
+         result="offset" />
+      <feComposite
+         id="feComposite4135"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+    <filter
+       id="filter3082"
+       style="color-interpolation-filters:sRGB;"
+       inkscape:label="Drop Shadow">
+      <feFlood
+         id="feFlood3084"
+         flood-opacity="0.604"
+         flood-color="rgb(0,0,0)"
+         result="flood" />
+      <feComposite
+         id="feComposite3086"
+         in2="SourceGraphic"
+         in="flood"
+         operator="in"
+         result="composite1" />
+      <feGaussianBlur
+         id="feGaussianBlur3088"
+         in="composite"
+         stdDeviation="6"
+         result="blur" />
+      <feOffset
+         id="feOffset3090"
+         dx="7.5"
+         dy="7.5"
+         result="offset" />
+      <feComposite
+         id="feComposite3092"
+         in2="offset"
+         in="SourceGraphic"
+         operator="over"
+         result="composite2" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     inkscape:cy="184.51843"
+     inkscape:cx="98.017058"
+     inkscape:zoom="1.7366335"
+     inkscape:window-height="1177"
+     inkscape:window-width="1462"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10.0"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="false"
+     inkscape:window-x="225"
+     inkscape:window-y="54"
+     inkscape:current-layer="svg2"
+     inkscape:window-maximized="0"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="20"
+     fit-margin-bottom="20" />
+  <path
+     sodipodi:type="arc"
+     style="opacity:0.98999999000000005;fill:none;fill-opacity:1;stroke:#8a08e8;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0;stroke-dasharray:none;stroke-dashoffset:0"
+     id="path3011"
+     sodipodi:cx="328.79059"
+     sodipodi:cy="127.97095"
+     sodipodi:rx="40.106342"
+     sodipodi:ry="37.459732"
+     d="m 368.89693,127.97095 a 40.106342,37.459732 0 1 1 -80.21268,0 40.106342,37.459732 0 1 1 80.21268,0 z" />
+  <g
+     id="g3032"
+     style="filter:url(#filter3082)">
+    <g
+       style="fill:url(#radialGradient3175);fill-opacity:1;stroke:url(#radialGradient3171);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;"
+       id="g3"
+       transform="matrix(0.1,0,0,0.1,1.967113,2.4742836)">
+      <g
+         id="g5"
+         style="fill:url(#radialGradient3028);fill-opacity:1;fill-rule:evenodd;stroke:url(#radialGradient3030);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;"
+         transform="translate(20.61545,-27.69425)">
+        <path
+           inkscape:connector-curvature="0"
+           style="fill:url(#radialGradient3020);fill-opacity:1;stroke:url(#radialGradient3022);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;"
+           id="path7"
+           d="m 931.07168,1164.597 248.86992,-331.80265 416.1687,1338.32935 286.6484,267.1042 -520.4224,0 -270.2797,-262.2181 0,-1033.0627 -160.98492,106.6818 -160.98492,-106.6818 0,1033.0627 -270.2797,262.2181 -520.4224,0 286.6484,-267.1042 416.1687,-1338.32935 248.86992,331.80265 z" />
+        <path
+           inkscape:connector-curvature="0"
+           style="fill:url(#radialGradient3024);fill-opacity:1;stroke:url(#radialGradient3026);stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;"
+           id="path9"
+           d="m 931.07168,27.69425 224.03682,720.46517 -63.341,76.00913 L 931.07168,486.3269 770.37586,824.16855 707.03486,748.15942 931.07168,27.69425 z" />
+      </g>
+    </g>
+    <g
+       transform="translate(16.698976,134.16763)"
+       id="g3916">
+      <path
+         style="fill:#8a0ae8;fill-opacity:1;fill-rule:evenodd;stroke:#8a0ae8;stroke-width:8.48192120000000038;stroke-linecap:round;stroke-opacity:1;"
+         inkscape:connector-curvature="0"
+         d="m 117.80725,-96.247891 c 0,0 5.41921,5.552354 5.41921,16.111148 m -5.41921,16.044574 c 0,0 5.41921,-5.552354 5.41921,-16.111149"
+         id="path14345" />
+      <path
+         style="fill:#8a0ae8;fill-opacity:1;fill-rule:evenodd;stroke:#8a0ae8;stroke-width:8.48192120000000038;stroke-linecap:round;stroke-opacity:1;"
+         inkscape:connector-curvature="0"
+         d="m 136.30179,-112.33241 c 0,0 10.83841,11.11802 10.83841,32.235612 m -10.83841,32.089148 c 0,0 10.83841,-11.104709 10.83841,-32.222298"
+         id="path14347" />
+      <path
+         style="fill:#8a0ae8;fill-opacity:1;fill-rule:evenodd;stroke:#8a0ae8;stroke-width:8.48192120000000038;stroke-linecap:round;stroke-opacity:1;"
+         inkscape:connector-curvature="0"
+         d="m 156.46069,-128.40361 c 0,0 16.27093,16.65706 16.27093,48.333442 m -16.27093,48.147037 c 0,0 16.27093,-16.670379 16.27093,-48.346762"
+         id="path14349" />
+    </g>
+    <g
+       transform="translate(-17.850629,134.16763)"
+       id="g3911">
+      <path
+         style="fill:#8a0ae8;fill-opacity:1;fill-rule:evenodd;stroke:#8a0ae8;stroke-width:8.48192120000000038;stroke-linecap:round;stroke-opacity:1;"
+         inkscape:connector-curvature="0"
+         d="m 77.476121,-96.247891 c 0,0 -5.419205,5.552354 -5.419205,16.111148 m 5.419205,16.044574 c 0,0 -5.419205,-5.552354 -5.419205,-16.111149"
+         id="path14351" />
+      <path
+         style="fill:#8a0ae8;fill-opacity:1;fill-rule:evenodd;stroke:#8a0ae8;stroke-width:8.48192120000000038;stroke-linecap:round;stroke-opacity:1;"
+         inkscape:connector-curvature="0"
+         d="m 59.554132,-112.33241 c 0,0 -10.851724,11.11802 -10.851724,32.235612 m 10.851724,32.089148 c 0,0 -10.851724,-11.104709 -10.851724,-32.222298"
+         id="path14353" />
+      <path
+         style="fill:#8a0ae8;fill-opacity:1;fill-rule:evenodd;stroke:#8a0ae8;stroke-width:8.48192120000000038;stroke-linecap:round;stroke-opacity:1;"
+         inkscape:connector-curvature="0"
+         d="m 39.381908,-128.40361 c 0,0 -16.257613,16.65706 -16.257613,48.333442 m 16.257613,48.147037 c 0,0 -16.257613,-16.670379 -16.257613,-48.346762"
+         id="path14355" />
+    </g>
+  </g>
+</svg>
diff --git a/icon/creating-linux-icons b/icon/creating-linux-icons
new file mode 100644 (file)
index 0000000..5b034c0
--- /dev/null
@@ -0,0 +1,29 @@
+# To create linux icons and file associations
+
+1) Create mime type and install
+
+       http://www.freedesktop.org/wiki/Specifications/AddingMIMETutor/
+
+       # xdg-mime install --mode system org-altusmetrum-mimetypes.xml
+       # update-mime-database /usr/local/share/mime
+
+       On debian, 
+
+2) Create icons and install
+
+       For mime type   application/vnd.altusmetrum.telemetry
+       icon name       application-vnd.altusmetrum.telemetry.svg
+
+       All mime icons go in
+
+       /usr/share/icons/hicolor/scalable/mimetypes
+
+       Update the icon database
+
+       # update-icon-caches /usr/share/icons/hicolor
+
+3) Create .desktop file and install
+
+       # xdg-desktop-menu install --mode system altusmetrum-altosui.desktop
+
+       # update-desktop-database
diff --git a/icon/micro-peak.rc b/icon/micro-peak.rc
deleted file mode 100644 (file)
index 4efe777..0000000
+++ /dev/null
@@ -1 +0,0 @@
-101    ICON    "micro-peak.ico"
diff --git a/icon/micropeak.svg b/icon/micropeak.svg
deleted file mode 100644 (file)
index d37130f..0000000
+++ /dev/null
@@ -1,219 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="49.03825"
-   height="43.606411"
-   id="svg2"
-   version="1.1"
-   inkscape:version="0.48.4 r9939"
-   sodipodi:docname="micropeak.svg">
-  <defs
-     id="defs4">
-    <linearGradient
-       id="linearGradient5343">
-      <stop
-         style="stop-color:#7200a4;stop-opacity:1;"
-         offset="0"
-         id="stop5345" />
-      <stop
-         style="stop-color:#da7000;stop-opacity:1;"
-         offset="1"
-         id="stop5347" />
-    </linearGradient>
-    <marker
-       inkscape:stockid="Arrow2Send"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="Arrow2Send"
-       style="overflow:visible">
-      <path
-         id="path3798"
-         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
-         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
-         transform="matrix(-0.3,0,0,-0.3,0.69,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="Arrow1Send"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="Arrow1Send"
-       style="overflow:visible">
-      <path
-         id="path3780"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="Arrow2Mend"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="Arrow2Mend"
-       style="overflow:visible">
-      <path
-         id="path3792"
-         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
-         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
-         transform="scale(-0.6,-0.6)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="Arrow1Lend"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="Arrow1Lend"
-       style="overflow:visible">
-      <path
-         id="path3768"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="Arrow2Lend"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="Arrow2Lend"
-       style="overflow:visible">
-      <path
-         id="path3786"
-         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
-         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
-         transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient5343"
-       id="linearGradient5349"
-       x1="255.48561"
-       y1="275.90405"
-       x2="280.61411"
-       y2="275.90405"
-       gradientUnits="userSpaceOnUse" />
-    <filter
-       id="filter3027"
-       inkscape:label="Drop Shadow"
-       color-interpolation-filters="sRGB">
-      <feFlood
-         id="feFlood3029"
-         flood-opacity="0.604"
-         flood-color="rgb(0,0,0)"
-         result="flood" />
-      <feComposite
-         id="feComposite3031"
-         in2="SourceGraphic"
-         in="flood"
-         operator="in"
-         result="composite1" />
-      <feGaussianBlur
-         id="feGaussianBlur3033"
-         stdDeviation="1.6"
-         result="blur" />
-      <feOffset
-         id="feOffset3035"
-         dx="2"
-         dy="2"
-         result="offset" />
-      <feComposite
-         id="feComposite3037"
-         in2="offset"
-         in="SourceGraphic"
-         operator="over"
-         result="composite2" />
-    </filter>
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="8.160856"
-     inkscape:cx="33.152671"
-     inkscape:cy="27.859227"
-     inkscape:document-units="px"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:window-width="1277"
-     inkscape:window-height="894"
-     inkscape:window-x="543"
-     inkscape:window-y="242"
-     inkscape:window-maximized="0"
-     fit-margin-top="-3"
-     fit-margin-left="-4"
-     fit-margin-right="-1"
-     fit-margin-bottom="0" />
-  <metadata
-     id="metadata7">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(-241.43522,-252.43073)">
-    <g
-       id="g3000"
-       style="filter:url(#filter3027)">
-      <g
-         id="text2985"
-         style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#7200a4;fill-opacity:1;stroke:none;font-family:Minion Pro;-inkscape-font-specification:Minion Pro">
-        <path
-           inkscape:connector-curvature="0"
-           id="path3003"
-           style="font-size:36px;font-weight:500;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#7200a4;font-family:ITC Benguiat Gothic Std;-inkscape-font-specification:ITC Benguiat Gothic Std Medium"
-           d="m 257.20241,268.30647 c 0,-1.07999 -0.396,-1.872 -1.584,-1.872 -1.188,0 -1.584,0.79201 -1.584,1.872 l 0,8.676 c 0,2.88 -2.052,5.112 -4.824,5.112 -3.06,0 -4.104,-1.872 -4.104,-5.076 l 0,-8.712 c 0,-1.07999 -0.396,-1.872 -1.584,-1.872 -1.188,0 -1.584,0.79201 -1.584,1.872 l 0,21.924 c 0,1.08 0.396,1.872 1.584,1.872 1.188,0 1.584,-0.792 1.584,-1.872 l 0,-6.156 c 0.792,0.612 2.088,0.972 3.564,0.972 2.304,0 4.428,-0.792 5.652,-2.988 l 0.072,0.072 0,1.26 c 0,0.864 0.54,1.44 1.404,1.44 0.864,0 1.404,-0.576 1.404,-1.44 l 0,-15.084" />
-      </g>
-      <path
-         sodipodi:nodetypes="cssc"
-         inkscape:connector-curvature="0"
-         id="path2991"
-         d="m 256.93561,290.70327 c 3.04022,-0.24413 4.30317,-2.66932 5.38268,-5.56604 1.68059,-4.50963 3.67214,-15.86904 8.62227,-20.55527 4.0668,-3.85 8.22354,-3.46656 8.22354,-3.46656"
-         style="fill:none;stroke:url(#linearGradient5349);stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:none" />
-      <path
-         inkscape:transform-center-y="-0.40889198"
-         inkscape:transform-center-x="-0.29194889"
-         d="m 282.7522,267.42614 -3.93403,-2.77705 -4.51792,1.66641 1.42544,-4.59964 -2.98096,-3.78185 4.815,-0.0657 2.67559,-4.00372 1.55039,4.55904 4.63457,1.30742 -3.85681,2.88333 z"
-         inkscape:randomized="0"
-         inkscape:rounded="0"
-         inkscape:flatsided="false"
-         sodipodi:arg2="1.7014539"
-         sodipodi:arg1="1.0731354"
-         sodipodi:r2="3.6257365"
-         sodipodi:r1="7.2514729"
-         sodipodi:cy="261.05426"
-         sodipodi:cx="279.29056"
-         sodipodi:sides="5"
-         id="path5341"
-         style="fill:none;stroke:#da7000;stroke-width:1.10000002;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
-         sodipodi:type="star" />
-    </g>
-  </g>
-</svg>
diff --git a/icon/org-altusmetrum-mimetypes.xml b/icon/org-altusmetrum-mimetypes.xml
new file mode 100644 (file)
index 0000000..e8103c0
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info
+    xmlns="http://www.freedesktop.org/standards/shared-mime-info">
+  <mime-type type="application/vnd.altusmetrum.telemetry">
+    <comment>Altus Metrum Telemetry File</comment>
+    <glob pattern="*.telem"/>
+  </mime-type>
+  <mime-type type="application/vnd.altusmetrum.eeprom">
+    <comment>Altus Metrum Eeprom Log File</comment>
+    <glob pattern="*.eeprom"/>
+  </mime-type>
+  <mime-type type="application/vnd.altusmetrum.micropeak">
+    <comment>Altus Metrum MicroPeak Log File</comment>
+    <glob pattern="*.mpd"/>
+  </mime-type>
+</mime-info>
diff --git a/icon/telegps.rc b/icon/telegps.rc
deleted file mode 100644 (file)
index 7f5957f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-101    ICON    "telegps.ico"
diff --git a/icon/telegps.svg b/icon/telegps.svg
deleted file mode 100644 (file)
index 1e390f3..0000000
+++ /dev/null
@@ -1,324 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="151.43401"
-   height="144.50209"
-   id="svg2"
-   version="1.1"
-   inkscape:version="0.48.4 r9939"
-   sodipodi:docname="telegps.svg">
-  <defs
-     id="defs4">
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient3175"
-       cx="951.68713"
-       cy="2305.2668"
-       fx="951.68713"
-       fy="2305.2668"
-       r="951.68701"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       id="linearGradient3169">
-      <stop
-         style="stop-color:#ff8a00;stop-opacity:1;"
-         offset="0"
-         id="stop3171" />
-      <stop
-         id="stop3445"
-         offset="0.71698111"
-         style="stop-color:#c24573;stop-opacity:0.98039216;" />
-      <stop
-         style="stop-color:#8500e7;stop-opacity:0.96078432;"
-         offset="1"
-         id="stop3173" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3165"
-       id="radialGradient3171"
-       cx="951.68713"
-       cy="1205.2668"
-       fx="951.68713"
-       fy="1205.2668"
-       r="951.68701"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       id="linearGradient3165">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop3167" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop3169" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient2838"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="2305.2668"
-       fx="951.68713"
-       fy="2305.2668"
-       r="951.68701" />
-    <linearGradient
-       id="linearGradient3181">
-      <stop
-         style="stop-color:#ff8a00;stop-opacity:1;"
-         offset="0"
-         id="stop3183" />
-      <stop
-         id="stop3185"
-         offset="0.71698111"
-         style="stop-color:#c24573;stop-opacity:0.98039216;" />
-      <stop
-         style="stop-color:#8500e7;stop-opacity:0.96078432;"
-         offset="1"
-         id="stop3187" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3165"
-       id="radialGradient2840"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="1205.2668"
-       fx="951.68713"
-       fy="1205.2668"
-       r="951.68701" />
-    <linearGradient
-       id="linearGradient3190">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop3192" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop3194" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient2830"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="2305.2668"
-       fx="951.68713"
-       fy="2305.2668"
-       r="951.68701" />
-    <linearGradient
-       id="linearGradient3197">
-      <stop
-         style="stop-color:#ff8a00;stop-opacity:1;"
-         offset="0"
-         id="stop3199" />
-      <stop
-         id="stop3201"
-         offset="0.71698111"
-         style="stop-color:#c24573;stop-opacity:0.98039216;" />
-      <stop
-         style="stop-color:#8500e7;stop-opacity:0.96078432;"
-         offset="1"
-         id="stop3203" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3165"
-       id="radialGradient2832"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="1205.2668"
-       fx="951.68713"
-       fy="1205.2668"
-       r="951.68701" />
-    <linearGradient
-       id="linearGradient3206">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop3208" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop3210" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient2834"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="2305.2668"
-       fx="951.68713"
-       fy="2305.2668"
-       r="951.68701" />
-    <linearGradient
-       id="linearGradient3213">
-      <stop
-         style="stop-color:#ff8a00;stop-opacity:1;"
-         offset="0"
-         id="stop3215" />
-      <stop
-         id="stop3217"
-         offset="0.71698111"
-         style="stop-color:#c24573;stop-opacity:0.98039216;" />
-      <stop
-         style="stop-color:#8500e7;stop-opacity:0.96078432;"
-         offset="1"
-         id="stop3219" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3165"
-       id="radialGradient2836"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       cx="951.68713"
-       cy="1205.2668"
-       fx="951.68713"
-       fy="1205.2668"
-       r="951.68701" />
-    <linearGradient
-       id="linearGradient3222">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop3224" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop3226" />
-    </linearGradient>
-    <radialGradient
-       r="951.68701"
-       fy="2305.2668"
-       fx="951.68713"
-       cy="2305.2668"
-       cx="951.68713"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       gradientUnits="userSpaceOnUse"
-       id="radialGradient3232"
-       xlink:href="#linearGradient3169"
-       inkscape:collect="always" />
-    <radialGradient
-       r="951.68701"
-       fy="1205.2668"
-       fx="951.68713"
-       cy="1205.2668"
-       cx="951.68713"
-       gradientTransform="matrix(1,0,0,1.2664529,0,-321.14689)"
-       gradientUnits="userSpaceOnUse"
-       id="radialGradient3234"
-       xlink:href="#linearGradient3165"
-       inkscape:collect="always" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3169"
-       id="radialGradient4101"
-       cx="194.54575"
-       cy="361.16367"
-       fx="194.54575"
-       fy="361.16367"
-       r="70.597672"
-       gradientTransform="matrix(1,0,0,0.95908583,137.14286,74.776711)"
-       gradientUnits="userSpaceOnUse" />
-    <filter
-       id="filter3238"
-       inkscape:label="Drop Shadow"
-       color-interpolation-filters="sRGB">
-      <feFlood
-         id="feFlood3240"
-         flood-opacity="0.604"
-         flood-color="rgb(0,0,0)"
-         result="flood" />
-      <feComposite
-         id="feComposite3242"
-         in2="SourceGraphic"
-         in="flood"
-         operator="in"
-         result="composite1" />
-      <feGaussianBlur
-         id="feGaussianBlur3244"
-         stdDeviation="4"
-         result="blur" />
-      <feOffset
-         id="feOffset3246"
-         dx="5"
-         dy="5"
-         result="offset" />
-      <feComposite
-         id="feComposite3248"
-         in2="offset"
-         in="SourceGraphic"
-         operator="over"
-         result="composite2" />
-    </filter>
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="3.959798"
-     inkscape:cx="91.754359"
-     inkscape:cy="68.172898"
-     inkscape:document-units="px"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     fit-margin-top="-12"
-     fit-margin-left="-12"
-     fit-margin-right="-6"
-     fit-margin-bottom="-6"
-     inkscape:window-width="996"
-     inkscape:window-height="970"
-     inkscape:window-x="930"
-     inkscape:window-y="553"
-     inkscape:window-maximized="0" />
-  <metadata
-     id="metadata7">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(-258.97144,-351.91262)">
-    <path
-       style="fill:url(#radialGradient4101);fill-opacity:1;filter:url(#filter3238)"
-       d="m 261.09094,466.61035 1.9122,-1.69399 39.0721,-36.4688 20.74158,22.05252 -40.71991,38.37279 z m 36.24983,1.34654 -14.08636,-15.38433 -15.33887,14.40857 14.50759,15.23741 z m 18.98704,-17.58715 -14.47613,-15.53942 -14.95191,14.42099 14.19976,15.37575 z m 43.2565,3.24033 -5.69326,-6.00917 -2.76929,1.85727 c -5.01515,3.36349 -10.61773,4.75193 -13.55344,3.35884 -0.90785,-0.4308 -11.20677,-10.85557 -16.46128,-16.61505 -6.3177,-6.92484 -17.77225,-18.68338 -18.08204,-21.53696 l -0.25491,-2.34789 -6.68224,-3.00173 -6.68224,-3.00173 -0.12416,-2.54849 c -0.24316,-4.99109 2.61694,-11.66135 7.10652,-16.57368 6.51922,-7.13306 14.23173,-10.81215 21.4071,-10.21178 l 2.49577,0.20881 2.34108,7.3087 2.34109,7.3087 2.0542,0.21626 c 1.12981,0.11895 2.29245,0.36702 2.58364,0.55127 0.29119,0.18424 11.17756,11.55849 16.63562,17.46044 5.67391,6.13537 16.35301,17.71615 16.74619,18.65715 1.36492,3.26672 -0.56522,9.34479 -4.44838,14.00803 -0.92939,1.1161 -1.6875,2.14976 -1.6847,2.29703 0.003,0.14726 2.44601,2.88431 5.42933,6.08233 2.98332,3.19801 5.42421,6.02814 5.42421,6.28919 0,0.66794 -0.91528,1.72591 -1.73982,2.01104 -0.50334,0.17406 -2.27007,-1.42112 -6.38899,-5.76858 z m -13.8944,-6.52384 c 0.96195,-0.49074 2.46683,-1.3673 3.34417,-1.94791 l 1.59519,-1.05564 -1.69025,-1.72225 c -1.71532,-1.74777 -2.09589,-2.99732 -1.1891,-3.90412 0.98407,-0.98406 2.33559,-0.53387 3.9423,1.31314 l 1.57825,1.81431 1.43638,-1.7099 c 1.7115,-2.03742 3.3933,-5.47555 3.39008,-6.9304 -0.0104,-4.68327 -7.01613,-2.68794 -13.36898,3.80766 -4.26282,4.35861 -6.32786,9.57528 -4.26584,10.77629 1.19252,0.69458 3.36009,0.51166 5.2278,-0.44118 z m -37.53066,-44.39022 c 2.23934,-2.70633 7.29399,-6.99375 10.13666,-8.59806 1.69887,-0.95877 2.21231,-1.46174 2.04152,-1.99985 -0.1255,-0.3954 -1.05734,-3.0661 -2.07077,-5.93487 l -1.84259,-5.21596 -1.60649,0.12825 c -4.1301,0.32972 -9.06228,2.86043 -13.29918,6.82384 -4.03277,3.77245 -7.7843,10.20829 -7.89014,13.53572 l -0.0463,1.4539 5.4085,2.47197 5.4085,2.47197 1.02919,-1.54008 c 0.56606,-0.84704 1.79503,-2.46562 2.73105,-3.59683 z m 32.91039,-10.47213 40.55794,-38.76942 c 7.09795,7.71166 14.5366,15.63755 20.65837,22.2503 l -40.53088,38.2414 z m 35.73645,1.02093 -14.2595,-15.3791 -15.29495,14.35785 14.65467,15.14661 z m 18.6801,-17.55816 -14.10162,-15.40128 -15.32812,14.3973 14.52992,15.24342 z"
-       id="path3063"
-       inkscape:connector-curvature="0"
-       sodipodi:nodetypes="ccccccccccccccccscssascccssscccscasscsssssccssscssssscssscssccccsccccccccccccccccc" />
-  </g>
-</svg>
index f9a6135..81dd074 100644 (file)
@@ -11,7 +11,7 @@ micropeak-windows.nsi
 MicroPeak-Linux-*
 MicroPeak-Mac-*
 MicroPeak-Windows-*
-micropeak.desktop
+altusmetrum-micropeak.desktop
 *.dll
 *.dylib
 *.so
index 8f75107..b1dc6ce 100644 (file)
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleIconFile</key>
-       <string>MicroPeak.icns</string>
+       <string>altusmetrum-micropeak.icns</string>
        <key>CFBundleDocumentTypes</key>
        <array>
          <dict>
            <key>CFBundleTypeName</key>
            <string>MicroPeak data file</string>
            <key>CFBundleTypeIconFile</key>
-           <string>MicroPeak.icns</string>
+           <string>application-vnd.altusmetrum.micropeak.icns</string>
            <key>CFBundleTypeExtensions</key>
            <array>
              <string>mpd</string>
index 37d5ca6..6270fd7 100644 (file)
@@ -56,23 +56,31 @@ ALTOSUILIB_CLASS=\
 ICONDIR=$(top_srcdir)/icon
 
 JAVA_ICONS=\
-       $(ICONDIR)/micropeak-16.png \
-       $(ICONDIR)/micropeak-32.png \
-       $(ICONDIR)/micropeak-48.png \
-       $(ICONDIR)/micropeak-64.png \
-       $(ICONDIR)/micropeak-128.png \
-       $(ICONDIR)/micropeak-256.png
+       $(ICONDIR)/altusmetrum-micropeak-16.png \
+       $(ICONDIR)/altusmetrum-micropeak-32.png \
+       $(ICONDIR)/altusmetrum-micropeak-48.png \
+       $(ICONDIR)/altusmetrum-micropeak-64.png \
+       $(ICONDIR)/altusmetrum-micropeak-128.png\
+       $(ICONDIR)/altusmetrum-micropeak-256.png
 
 # icon base names for jar
-ICONJAR= -C $(ICONDIR) micropeak-16.png \
-       -C $(ICONDIR) micropeak-32.png \
-       -C $(ICONDIR) micropeak-48.png \
-       -C $(ICONDIR) micropeak-64.png \
-       -C $(ICONDIR) micropeak-128.png \
-       -C $(ICONDIR) micropeak-256.png
-
-WINDOWS_ICON=$(ICONDIR)/micro-peak.ico $(ICONDIR)/micro-peak.exe
-MACOSX_ICON=$(ICONDIR)/MicroPeak.icns
+ICONJAR= \
+       -C $(ICONDIR) altusmetrum-micropeak-16.png \
+       -C $(ICONDIR) altusmetrum-micropeak-32.png \
+       -C $(ICONDIR) altusmetrum-micropeak-48.png \
+       -C $(ICONDIR) altusmetrum-micropeak-64.png \
+       -C $(ICONDIR) altusmetrum-micropeak-128.png\
+       -C $(ICONDIR) altusmetrum-micropeak-256.png
+
+WINDOWS_ICONS  =\
+       ../icon/altusmetrum-micropeak.ico \
+       ../icon/altusmetrum-micropeak.exe
+       ../icon/application-vnd.altusmetrum.micropeak.ico \
+       ../icon/application-vnd.altusmetrum.micropeak.ico
+
+MACOSX_ICONS   =\
+       ../icon/altusmetrum-micropeak.icns \
+       ../icon/application-vnd.altusmetrum.micropeak.icns
 
 desktopdir = $(datadir)/applications
 desktop_file = altusmetrum-micropeak.desktop
@@ -106,14 +114,14 @@ DOC=$(MICROPEAK_DOC)
 
 FAT_FILES=$(FATJAR) $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS) $(FREETTS_CLASS) $(JFREECHART_CLASS) $(JCOMMON_CLASS)
 
-LINUX_FILES=$(FAT_FILES) libaltos.so $(FIRMWARE) $(DOC) micropeak.desktop.in ../icon/micropeak.svg
-LINUX_EXTRA=micropeak-fat micropeak.desktop.in
+LINUX_FILES=$(FAT_FILES) libaltos.so $(FIRMWARE) $(DOC) $(desktop_file).in ../icon/altusmetrum-micropeak.svg
+LINUX_EXTRA=micropeak-fat $(desktop_file).in
 
 MACOSX_DRIVER_URL=http://www.ftdichip.com/Drivers/VCP/MacOSX/FTDIUSBSerialDriver_v2_2_18.dmg
 MACOSX_DRIVER=FTDIUSBSerialDriver_v2_2_18.dmg
 MACOSX_INFO_PLIST=Info.plist
 MACOSX_README=ReadMe-Mac.rtf
-MACOSX_FILES=$(FAT_FILES) libaltos.dylib $(MACOSX_INFO_PLIST) $(MACOSX_DRIVER) $(MACOSX_README) $(DOC) $(MACOSX_ICON)
+MACOSX_FILES=$(FAT_FILES) libaltos.dylib $(MACOSX_INFO_PLIST) $(MACOSX_DRIVER) $(MACOSX_README) $(DOC) $(MACOSX_ICONS)
 
 $(MACOSX_DRIVER):
        wget $(MACOSX_DRIVER_URL)
@@ -124,7 +132,7 @@ WINDOWS_DRIVER=CDM20824_Setup.exe
 $(WINDOWS_DRIVER):
        wget $(WINDOWS_DRIVER_URL)
 
-WINDOWS_FILES=$(FAT_FILES) altos.dll altos64.dll $(DOC) $(WINDOWS_ICON) $(WINDOWS_DRIVER)
+WINDOWS_FILES=$(FAT_FILES) altos.dll altos64.dll $(DOC) $(WINDOWS_ICONS) $(WINDOWS_DRIVER)
 
 if FATINSTALL
 
@@ -261,7 +269,7 @@ $(MACOSX_DIST): $(MACOSX_FILES)
        cp -p Info.plist macosx/MicroPeak.app/Contents
        cp -p $(MACOSX_DRIVER) macosx
        mkdir -p macosx/MicroPeak.app/Contents/Resources/Java
-       cp -p $(MACOSX_ICON) macosx/MicroPeak.app/Contents/Resources
+       cp -p $(MACOSX_ICONS) macosx/MicroPeak.app/Contents/Resources
        cp -p $(FATJAR) macosx/MicroPeak.app/Contents/Resources/Java/micropeak.jar
        cp -p libaltos.dylib macosx/MicroPeak.app/Contents/Resources/Java
        cp -p $(ALTOSLIB_CLASS) macosx/MicroPeak.app/Contents/Resources/Java
diff --git a/micropeak/MicroPeak.app/Contents/Resources/MicroPeak.icns b/micropeak/MicroPeak.app/Contents/Resources/MicroPeak.icns
deleted file mode 100644 (file)
index 9ba83bf..0000000
Binary files a/micropeak/MicroPeak.app/Contents/Resources/MicroPeak.icns and /dev/null differ
index f7d258e..782b470 100644 (file)
@@ -3,7 +3,7 @@ Type=Application
 Name=MicroPeak
 GenericName=MicroPeak Download and Analysis
 Comment=View and log data from MicroPeak altimeters
-Icon=%icondir%/micropeak.svg
+Icon=%icondir%/altusmetrum-micropeak.svg
 Exec=%bindir%/micropeak %f
 Terminal=false
 MimeType=application/vnd.altusmetrum.micropeak
index d8e4750..848523b 100644 (file)
@@ -4,11 +4,13 @@
 !include java.nsh
 !include refresh-sh.nsh
 
-!define REG_NAME "MicroPeak"
-!define PROG_ID "org.altusmetrum.micropeak.1"
-!define FAT_NAME "micropeak-fat.jar"
-!define ICO_ICO "micro-peak.ico"
-!define ICO_EXE "micro-peak.exe"
+!define REG_NAME       "MicroPeak"
+!define PROG_ID                "org.altusmetrum.micropeak.1"
+!define PROG_ID_MPD    "org.altusmetrum.micropeak.mpd.1"
+!define FAT_NAME       "micropeak-fat.jar"
+!define WIN_APP_ICON   "altusmetrum-micropeak.ico"
+!define WIN_APP_EXE    "altusmetrum-micropeak.exe"
+!define WIN_MPD_EXE    "application-vnd.altusmetrum.micropeak.exe"
 
 Name "${REG_NAME} Installer"
 
@@ -82,13 +84,13 @@ Section "${REG_NAME} Application"
 
        File "*.dll"
 
-       File "../icon/${ICO_ICO}"
+       File "../icon/${WIN_APP_ICON}"
 
-       CreateShortCut "$SMPROGRAMS\${REG_NAME}.lnk" "$SYSDIR\javaw.exe" "-jar ${FAT_NAME}" "$INSTDIR\${ICO_ICO}"
+       CreateShortCut "$SMPROGRAMS\${REG_NAME}.lnk" "$SYSDIR\javaw.exe" "-jar ${FAT_NAME}" "$INSTDIR\${WIN_APP_ICON}"
 SectionEnd
 
 Section "${REG_NAME} Desktop Shortcut"
-       CreateShortCut "$DESKTOP\${REG_NAME}.lnk" "$INSTDIR\${FAT_NAME}"  "" "$INSTDIR\${ICO_ICO}"
+       CreateShortCut "$DESKTOP\${REG_NAME}.lnk" "$INSTDIR\${FAT_NAME}"  "" "$INSTDIR\${WIN_APP_ICON}"
 SectionEnd
 
 Section "Documentation"
@@ -102,24 +104,28 @@ Section "File Associations"
 
        SetOutPath $INSTDIR
 
-       File "../icon/${ICO_EXE}"
+       File "../icon/${WIN_APP_EXE}"
+       File "../icon/${WIN_MPD_EXE}"
 
        ; application elements
        
-       WriteRegStr HKCR "${PROG_ID}"                   ""                              "MicroPeak Data File"
-       WriteRegStr HKCR "${PROG_ID}"                   "FriendlyTypeName"              "MicroPeak Data File"
-       WriteRegStr HKCR "${PROG_ID}\CurVer"            ""                              "${PROG_ID}"
-       WriteRegStr HKCR "${PROG_ID}\DefaultIcon"       ""                              '"$INSTDIR\${ICO_EXE}",-101'
-  WriteRegExpandStr HKCR "${PROG_ID}\shell\play\command" ""                            '"%SYSTEMROOT%\System32\javaw.exe" -Djava.library.path="$INSTDIR" -jar "$INSTDIR\${FAT_NAME}" "%1"'
+       DeleteRegKey HKCR "${PROG_ID}"
+       DeleteRegKey HKCR "${PROG_ID_MPD}"
+
+       WriteRegStr HKCR "${PROG_ID_MPD}"               ""                              "MicroPeak Data File"
+       WriteRegStr HKCR "${PROG_ID_MPD}"               "FriendlyTypeName"              "MicroPeak Data File"
+       WriteRegStr HKCR "${PROG_ID_MPD}\CurVer"        ""                              "${PROG_ID_MPD}"
+       WriteRegStr HKCR "${PROG_ID_MPD}\DefaultIcon"   ""                              '"$INSTDIR\${WIN_MPD_EXE}",-101'
+  WriteRegExpandStr HKCR "${PROG_ID_MPD}\shell\play\command" ""                                '"%SYSTEMROOT%\System32\javaw.exe" -Djava.library.path="$INSTDIR" -jar "$INSTDIR\${FAT_NAME}" "%1"'
 
        ; .mpd elements
 
-       WriteRegStr HKCR ".mpd"                         ""                              "${PROG_ID}"
+       WriteRegStr HKCR ".mpd"                         ""                              "${PROG_ID_MPD}"
        WriteRegStr HKCR ".mpd"                         "PerceivedType"                 "MicroPeak Data File"
-       WriteRegStr HKCR ".mpd"                         "Content Type"                  "application/micropeak"
+       WriteRegStr HKCR ".mpd"                         "Content Type"                  "application/vnd.altusmetrum.micropeak"
 
-       WriteRegStr HKCR ".mpd\OpenWithProgids"         "${PROG_ID}"                    ""
-       WriteRegStr HKCR ".mpd\${PROG_ID}"              ""                              "${REG_NAME}"
+       WriteRegStr HKCR ".mpd\OpenWithProgids"         "${PROG_ID_MPD}"                        ""
+       WriteRegStr HKCR ".mpd\${PROG_ID_MPD}"          ""                              "${REG_NAME}"
 
        Call RefreshShellIcons
 SectionEnd
@@ -153,15 +159,16 @@ Section "Uninstall"
        DetailPrint "Delete uninstall reg entries"
 
        DeleteRegKey   HKCR "${PROG_ID}"
+       DeleteRegKey   HKCR "${PROG_ID_MPD}"
 
-       DeleteRegKey   HKCR ".mpd\${PROG_ID}"
-       DeleteRegValue HKCR ".mpd\OpenWithProgids" "${PROG_ID}"
+       DeleteRegKey   HKCR ".mpd\${PROG_ID_MPD}"
+       DeleteRegValue HKCR ".mpd\OpenWithProgids" "${PROG_ID_MPD}"
 
        Delete "$INSTDIR\${FAT_NAME}"
        Delete "$INSTDIR\uninstall-${REG_NAME}.exe"
 
-       Delete "$INSTDIR\${ICO_ICO}"
-       Delete "$INSTDIR\${ICO_EXE}"
+       Delete "$INSTDIR\${WIN_APP_ICON}"
+       Delete "$INSTDIR\${WIN_APP_EXE}"
 
        ; Remove shortcuts, if any
        Delete "$SMPROGRAMS\${REG_NAME}.lnk"
index edb509f..37e46ad 100644 (file)
@@ -17,7 +17,7 @@ TeleGPS-Linux-*.tar.bz2
 TeleGPS-Linux-*.sh
 TeleGPS-Mac-*.zip
 TeleGPS-Windows-*.exe
-telegps.desktop
+altusmetrum-telegps.desktop
 telegps-windows.log
 *.dll
 *.dylib
index 7dbb77d..89870a8 100644 (file)
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleIconFile</key>
-       <string>TeleGPS.icns</string>
+       <string>altusmetrum-telegps.icns</string>
        <key>CFBundleDocumentTypes</key>
        <array>
          <dict>
            <key>CFBundleTypeName</key>
            <string>Telemetry</string>
            <key>CFBundleTypeIconFile</key>
-           <string>TeleGPS.icns</string>
+           <string>application-vnd.altusmetrum.telemetry.icns</string>
            <key>CFBundleTypeExtensions</key>
            <array>
              <string>telem</string>
@@ -42,7 +42,7 @@
            <key>CFBundleTypeName</key>
            <string>Eeprom</string>
            <key>CFBundleTypeIconFile</key>
-           <string>TeleGPS.icns</string>
+           <string>application-vnd.altusmetrum.eeprom.icns</string>
            <key>CFBundleTypeExtensions</key>
            <array>
              <string>eeprom</string>
index c4f6a58..a7defb8 100644 (file)
@@ -58,23 +58,34 @@ ALTOSUILIB_CLASS=\
 ICONDIR=$(top_srcdir)/icon
 
 JAVA_ICONS=\
-       $(ICONDIR)/telegps-16.png \
-       $(ICONDIR)/telegps-32.png \
-       $(ICONDIR)/telegps-48.png \
-       $(ICONDIR)/telegps-64.png \
-       $(ICONDIR)/telegps-128.png \
-       $(ICONDIR)/telegps-256.png
+       $(ICONDIR)/altusmetrum-telegps-16.png \
+       $(ICONDIR)/altusmetrum-telegps-32.png \
+       $(ICONDIR)/altusmetrum-telegps-48.png \
+       $(ICONDIR)/altusmetrum-telegps-64.png \
+       $(ICONDIR)/altusmetrum-telegps-128.png\
+       $(ICONDIR)/altusmetrum-telegps-256.png
 
 # icon base names for jar
-ICONJAR= -C $(ICONDIR) telegps-16.png \
-       -C $(ICONDIR) telegps-32.png \
-       -C $(ICONDIR) telegps-48.png \
-       -C $(ICONDIR) telegps-64.png \
-       -C $(ICONDIR) telegps-128.png \
-       -C $(ICONDIR) telegps-256.png
-
-WINDOWS_ICON=$(ICONDIR)/telegps.ico $(ICONDIR)/telegps.exe
-MACOSX_ICON=$(ICONDIR)/TeleGPS.icns
+ICONJAR= \
+       -C $(ICONDIR) altusmetrum-telegps-16.png \
+       -C $(ICONDIR) altusmetrum-telegps-32.png \
+       -C $(ICONDIR) altusmetrum-telegps-48.png \
+       -C $(ICONDIR) altusmetrum-telegps-64.png \
+       -C $(ICONDIR) altusmetrum-telegps-128.png\
+       -C $(ICONDIR) altusmetrum-telegps-256.png
+
+WINDOWS_ICONS  =\
+       ../icon/altusmetrum-telegps.ico \
+       ../icon/altusmetrum-telegps.exe
+       ../icon/application-vnd.altusmetrum.eeprom.ico \
+       ../icon/application-vnd.altusmetrum.eeprom.exe \
+       ../icon/application-vnd.altusmetrum.telemetry.ico \
+       ../icon/application-vnd.altusmetrum.telemetry.exe
+
+MACOSX_ICONS   =\
+       ../icon/altusmetrum-telegps.icns \
+       ../icon/application-vnd.altusmetrum.eeprom.icns \
+       ../icon/application-vnd.altusmetrum.telemetry.icns
 
 # Firmware
 FIRMWARE_TD_0_2=$(top_srcdir)/src/teledongle-v0.2/teledongle-v0.2-$(VERSION).ihx
@@ -120,15 +131,15 @@ DOC=$(TELEGPS_DOC)
 
 FAT_FILES=$(FATJAR) $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS) $(FREETTS_CLASS) $(JFREECHART_CLASS) $(JCOMMON_CLASS)
 
-LINUX_FILES=$(FAT_FILES) libaltos.so $(FIRMWARE) $(DOC) $(desktop_file).in ../icon/telegps.svg
+LINUX_FILES=$(FAT_FILES) libaltos.so $(FIRMWARE) $(DOC) $(desktop_file).in ../icon/altusmetrum-telegps.svg
 LINUX_EXTRA=telegps-fat $(desktop_file).in
 
 MACOSX_INFO_PLIST=Info.plist
 MACOSX_README=ReadMe-Mac.rtf
-MACOSX_FILES=$(FAT_FILES) libaltos.dylib $(MACOSX_INFO_PLIST) $(MACOSX_README) $(DOC) $(MACOSX_ICON)
+MACOSX_FILES=$(FAT_FILES) libaltos.dylib $(MACOSX_INFO_PLIST) $(MACOSX_README) $(DOC) $(MACOSX_ICONS)
 MACOSX_EXTRA=$(FIRMWARE)
 
-WINDOWS_FILES=$(FAT_FILES) altos.dll altos64.dll $(top_srcdir)/altusmetrum.inf $(top_srcdir)/altusmetrum.cat $(DOC) $(WINDOWS_ICON)
+WINDOWS_FILES=$(FAT_FILES) altos.dll altos64.dll $(top_srcdir)/altusmetrum.inf $(top_srcdir)/altusmetrum.cat $(DOC) $(WINDOWS_ICONS)
 
 if FATINSTALL
 
@@ -194,7 +205,7 @@ $(FATJAR): classtelegps.stamp Manifest-fat.txt $(ALTOSLIB_CLASS) $(ALTOSUILIB_CL
                -C classes org \
                -C ../libaltos libaltosJNI
 
-classaltosui.stamp: $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS)
+classtelegps.stamp: $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS)
 
 libaltos.so: build-libaltos
        -rm -f "$@"
@@ -269,7 +280,7 @@ $(MACOSX_DIST): $(MACOSX_FILES) $(MACOSX_EXTRA) Makefile
        cp -a $(DOC) macosx/Doc
        cp -p Info.plist macosx/TeleGPS.app/Contents
        mkdir -p macosx/AltOS-$(VERSION) macosx/TeleGPS.app/Contents/Resources/Java
-       cp -p $(MACOSX_ICON) macosx/TeleGPS.app/Contents/Resources
+       cp -p $(MACOSX_ICONS) macosx/TeleGPS.app/Contents/Resources
        cp -p $(FATJAR) macosx/TeleGPS.app/Contents/Resources/Java/telegps.jar
        cp -p libaltos.dylib macosx/TeleGPS.app/Contents/Resources/Java
        cp -p $(ALTOSLIB_CLASS) macosx/TeleGPS.app/Contents/Resources/Java
index 76c1eb4..7a1b353 100644 (file)
@@ -3,7 +3,7 @@ Type=Application
 Name=TeleGPS
 GenericName=TeleGPS monitor, download and analysis
 Comment=View and log data from TeleGPS tracking devices
-Icon=%icondir%/telegps.svg
+Icon=%icondir%/altusmetrum-telegps.svg
 Exec=%bindir%/telegps %f
 Terminal=false
 MimeType=application/vnd.altusmetrum.telemetry;application/vnd.altusmetrum.eeprom
index 3f9648f..603d497 100644 (file)
@@ -4,12 +4,14 @@
 !include java.nsh
 !include refresh-sh.nsh
 
-!define REG_NAME "TeleGPS"
-!define PROG_ID "org.altusmetrum.telegps.1"
-!define PROG_ALTOSUI "org.altusmetrum.altosui.1"
-!define FAT_NAME "telegps-fat.jar"
-!define ICO_ICO "telegps.ico"
-!define ICO_EXE "telegps.exe"
+!define REG_NAME       "TeleGPS"
+!define PROG_ID_TELEM  "altusmetrum.telegps.telem.1"
+!define PROG_ID_EEPROM "altusmetrum.telegps.eeprom.1"
+!define FAT_NAME       "telegps-fat.jar"
+!define WIN_APP_ICON   "altusmetrum-telegps.ico"
+!define WIN_APP_EXE    "altusmetrum-telegps.exe"
+!define WIN_TELEM_EXE  "application-vnd.altusmetrum.telemetry.exe"
+!define WIN_EEPROM_EXE "application-vnd.altusmetrum.eeprom.exe"
 
 Name "${REG_NAME} Installer"
 
@@ -104,13 +106,13 @@ Section "${REG_NAME} Application"
 
        File "*.dll"
 
-       File "../icon/${ICO_ICO}"
+       File "../icon/${WIN_APP_ICON}"
 
-       CreateShortCut "$SMPROGRAMS\${REG_NAME}.lnk" "$SYSDIR\javaw.exe" "-jar ${FAT_NAME}" "$INSTDIR\${ICO_ICO}"
+       CreateShortCut "$SMPROGRAMS\${REG_NAME}.lnk" "$SYSDIR\javaw.exe" "-jar ${FAT_NAME}" "$INSTDIR\${WIN_APP_ICON}"
 SectionEnd
 
 Section "${REG_NAME} Desktop Shortcut"
-       CreateShortCut "$DESKTOP\${REG_NAME}.lnk" "$INSTDIR\${FAT_NAME}"  "" "$INSTDIR\${ICO_ICO}"
+       CreateShortCut "$DESKTOP\${REG_NAME}.lnk" "$INSTDIR\${FAT_NAME}"  "" "$INSTDIR\${WIN_APP_ICON}"
 SectionEnd
 
 Section "TeleGPS, TeleDongle and TeleBT Firmware"
@@ -134,35 +136,51 @@ SectionEnd
 
 Section "File Associations"
 
+       ${DisableX64FSRedirection}
+
        SetOutPath $INSTDIR
 
-       File "../icon/${ICO_EXE}"
+       File "../icon/${WIN_APP_EXE}"
+       File "../icon/${WIN_TELEM_EXE}"
+       File "../icon/${WIN_EEPROM_EXE}"
 
-       ; application elements
-       
-       WriteRegStr HKCR "${PROG_ID}"                   ""                              "Altus Metrum Data File"
-       WriteRegStr HKCR "${PROG_ID}"                   "FriendlyTypeName"              "Altus Metrum Data File"
-       WriteRegStr HKCR "${PROG_ID}\CurVer"            ""                              "${PROG_ID}"
-       WriteRegStr HKCR "${PROG_ID}\DefaultIcon"       ""                              '"$INSTDIR\${ICO_EXE}",-101'
-  WriteRegExpandStr HKCR "${PROG_ID}\shell\play\command" ""                            '"%SYSTEMROOT%\System32\javaw.exe" -Djava.library.path="$INSTDIR" -jar "$INSTDIR\${FAT_NAME}" "%1"'
+       DeleteRegKey HKCR "${PROG_ID_TELEM}"
+       DeleteRegKey HKCR "${PROG_ID_EEPROM}"
+
+       DeleteRegKey   HKCR ".eeprom\${PROG_ID_EEPROM}"
+       DeleteRegValue HKCR ".eeprom\OpenWithProgids" "${PROG_ID_EEPROM}"
+       DeleteRegKey   HKCR ".telem\${PROG_ID_EEPROM}"
+       DeleteRegValue HKCR ".telem\OpenWithProgids" "${PROG_ID_EEPROM}"
 
        ; .eeprom elements
 
-       WriteRegStr HKCR ".eeprom"                      ""                              "${PROG_ALTOSUI}"
+       WriteRegStr HKCR "${PROG_ID_EEPROM}"            ""                              "Altus Metrum Log File"
+       WriteRegStr HKCR "${PROG_ID_EEPROM}"            "FriendlyTypeName"              "Altus Metrum Log File"
+       WriteRegStr HKCR "${PROG_ID_EEPROM}\CurVer"     ""                              "${PROG_ID_EEPROM}"
+       WriteRegStr HKCR "${PROG_ID_EEPROM}\DefaultIcon" ""                             '"$INSTDIR\${WIN_EEPROM_EXE}",-101'
+  WriteRegExpandStr HKCR "${PROG_ID_EEPROM}\shell\open\command" ""                     '"%SYSTEMROOT%\System32\javaw.exe" -Djava.library.path="$INSTDIR" -jar "$INSTDIR\${FAT_NAME}" "%1"'
+
+       WriteRegStr HKCR ".eeprom"                      ""                              "${PROG_ID_EEPROM}"
        WriteRegStr HKCR ".eeprom"                      "PerceivedType"                 "Altus Metrum Log File"
-       WriteRegStr HKCR ".eeprom"                      "Content Type"                  "application/altosui"
+       WriteRegStr HKCR ".eeprom"                      "Content Type"                  "application/vnd.altusmetrum.eeprom"
 
-       WriteRegStr HKCR ".eeprom\OpenWithProgids"      "${PROG_ID}"                    ""
-       WriteRegStr HKCR ".eeprom\${PROG_ID}"           ""                              "${REG_NAME}"
+       WriteRegStr HKCR ".eeprom\OpenWithProgids"      "${PROG_ID_EEPROM}"             ""
+       WriteRegStr HKCR ".eeprom\${PROG_ID_EEPROM}"    ""                              "${REG_NAME}"
        
        ; .telem elements
        
-       WriteRegStr HKCR ".telem"                       ""                              "${PROG_ALTOSUI}"
+       WriteRegStr HKCR "${PROG_ID_TELEM}"             ""                              "Altus Metrum Telemetry File"
+       WriteRegStr HKCR "${PROG_ID_TELEM}"             "FriendlyTypeName"              "Altus Metrum Telemetry File"
+       WriteRegStr HKCR "${PROG_ID_TELEM}\CurVer"      ""                              "${PROG_ID_TELEM}"
+       WriteRegStr HKCR "${PROG_ID_TELEM}\DefaultIcon" ""                              '"$INSTDIR\${WIN_TELEM_EXE}",-101'
+  WriteRegExpandStr HKCR "${PROG_ID_TELEM}\shell\open\command" ""                      '"%SYSTEMROOT%\System32\javaw.exe" -Djava.library.path="$INSTDIR" -jar "$INSTDIR\${FAT_NAME}" "%1"'
+
+       WriteRegStr HKCR ".telem"                       ""                              "${PROG_ID_TELEM}"
        WriteRegStr HKCR ".telem"                       "PerceivedType"                 "Altus Metrum Telemetry File"
-       WriteRegStr HKCR ".telem"                       "Content Type"                  "application/altosui"
+       WriteRegStr HKCR ".telem"                       "Content Type"                  "application/vnd.altusmetrum.telemetry"
 
-       WriteRegStr HKCR ".telem\OpenWithProgids"       "${PROG_ID}"                    ""
-       WriteRegStr HKCR ".telem\${PROG_ID}"            ""                              "${REG_NAME}"
+       WriteRegStr HKCR ".telem\OpenWithProgids"       "${PROG_ID_TELEM}"              ""
+       WriteRegStr HKCR ".telem\${PROG_ID_TELEM}"      ""                              "${REG_NAME}"
 
        Call RefreshShellIcons
 SectionEnd
@@ -195,21 +213,22 @@ Section "Uninstall"
 
        DetailPrint "Delete uninstall reg entries"
 
-       DeleteRegKey   HKCR "${PROG_ID}"
+       DeleteRegKey   HKCR "${PROG_ID_EEPROM}"
+       DeleteRegKey   HKCR "${PROG_ID_TELEM}"
 
-       DeleteRegKey   HKCR ".eeprom\${PROG_ID}"
-       DeleteRegValue HKCR ".eeprom\OpenWithProgids" "${PROG_ID}"
+       DeleteRegKey   HKCR ".eeprom\${PROG_ID_EEPROM}"
+       DeleteRegValue HKCR ".eeprom\OpenWithProgids" "${PROG_ID_EEPROM}"
 
-       DeleteRegKey   HKCR ".telem\${PROG_ID}"
-       DeleteRegValue HKCR ".telem\OpenWithProgids" "${PROG_ID}"
+       DeleteRegKey   HKCR ".telem\${PROG_ID_TELEM}"
+       DeleteRegValue HKCR ".telem\OpenWithProgids" "${PROG_ID_TELEM}"
 
        DetailPrint "Delete file association reg entries"
 
        Delete "$INSTDIR\${FAT_NAME}"
        Delete "$INSTDIR\uninstall-${REG_NAME}.exe"
 
-       Delete "$INSTDIR\${ICO_ICO}"
-       Delete "$INSTDIR\${ICO_EXE}"
+       Delete "$INSTDIR\${WIN_APP_ICON}"
+       Delete "$INSTDIR\${WIN_APP_EXE}"
 
        ; Remove shortcuts, if any
        Delete "$SMPROGRAMS\${REG_NAME}.lnk"