summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--altosui/linux-install.sh57
-rw-r--r--micropeak/.gitignore1
-rw-r--r--micropeak/Makefile.am27
-rw-r--r--micropeak/micropeak.desktop.in10
4 files changed, 84 insertions, 11 deletions
diff --git a/altosui/linux-install.sh b/altosui/linux-install.sh
index d7ec9517..957b1aad 100644
--- a/altosui/linux-install.sh
+++ b/altosui/linux-install.sh
@@ -141,13 +141,15 @@ esac
BIN="$target_abs"/AltOS
-desktop="$target"/AltOS/altos.desktop
-
-rm -f "$desktop"
-sed -e "s;%bindir%;$BIN;" -e "s;%icondir%;$BIN;" "$target"/AltOS/altos.desktop.in > "$desktop"
+for infile in "$target"/AltOS/*.desktop.in; do
+ desktop="$target"/AltOS/`basename "$infile" .in`
+ rm -f "$desktop"
+ sed -e "s;%bindir%;$BIN;" -e "s;%icondir%;$BIN;" "$infile" > "$desktop"
+ chmod +x "$desktop"
+done
#
-# Figure out where to install the .desktop file. If we can, write it
+# Figure out where to install the .desktop files. If we can, write it
# to the public /usr/share/applications, otherwise, write it to the
# per-user ~/.local/share/applications
#
@@ -172,9 +174,9 @@ case "$apps" in
;;
esac
-echo -n "Installing .desktop file to $apps..."
+echo -n "Installing .desktop files to $apps..."
-cp "$desktop" "$apps"
+cp "$target"/AltOS/*.desktop "$apps"
case "$?" in
0)
@@ -189,7 +191,48 @@ esac
# Install icon to desktop if desired
#
+if [ -d $HOME/Desktop ]; then
+ default_desktop=n
+ if [ "$can_ask" = "y" ]; then
+ :
+ else
+ default_desktop=y
+ fi
+
+ answered=n
+ while [ "$answered" = "n" ]; do
+ echo -n "Install icons to desktop? [default: $default_desktop] "
+ if [ "$can_ask" = "y" ]; then
+ read do_desktop
+ else
+ echo
+ do_desktop=""
+ fi
+
+ case "$do_desktop" in
+ "")
+ do_desktop=$default_desktop
+ ;;
+ esac
+ case "$do_desktop" in
+ [yYnN]*)
+ answered=y
+ ;;
+ esac
+ done
+
+ echo -n "Installing desktop icons..."
+ case "$do_desktop" in
+ [yY]*)
+ for d in "$target"/AltOS/*.desktop; do
+ ln -f -s "$d" "$HOME/Desktop/"
+ done
+ ;;
+ esac
+
+ echo " done."
+fi
finish 0
diff --git a/micropeak/.gitignore b/micropeak/.gitignore
index 6a6475f0..f9a61359 100644
--- a/micropeak/.gitignore
+++ b/micropeak/.gitignore
@@ -11,6 +11,7 @@ micropeak-windows.nsi
MicroPeak-Linux-*
MicroPeak-Mac-*
MicroPeak-Windows-*
+micropeak.desktop
*.dll
*.dylib
*.so
diff --git a/micropeak/Makefile.am b/micropeak/Makefile.am
index 1a614cbd..519fa8cf 100644
--- a/micropeak/Makefile.am
+++ b/micropeak/Makefile.am
@@ -73,6 +73,10 @@ ICONJAR= -C $(ICONDIR) micropeak-16.png \
WINDOWS_ICON=$(ICONDIR)/micro-peak.ico
+desktopdir = $(datadir)/applications
+desktop_file = micropeak.desktop
+desktop_DATA = $(desktop_file)
+
all-local: micropeak-test micropeak-jdb $(JAR)
clean-local:
@@ -84,7 +88,13 @@ clean-local:
micropeak micropeak-test micropeak-jdb macosx linux windows micropeak-windows.log \
micropeak-windows.nsi
+EXTRA_DIST = $(desktop_file).in
+
+$(desktop_file): $(desktop_file).in
+ sed -e 's#%bindir%#@bindir@#' -e 's#%icondir%#$(datadir)/icons/hicolor/scalable/apps#' ${srcdir}/micropeak.desktop.in > $@
+
LINUX_DIST=MicroPeak-Linux-$(VERSION).tar.bz2
+LINUX_SH=MicroPeak-Linux-$(VERSION).sh
MACOSX_DIST=MicroPeak-Mac-$(VERSION).dmg
WINDOWS_DIST=MicroPeak-Windows-$(VERSION_DASH).exe
@@ -94,8 +104,8 @@ DOC=$(MICROPEAK_DOC)
FAT_FILES=$(FATJAR) $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS) $(FREETTS_CLASS) $(JFREECHART_CLASS) $(JCOMMON_CLASS)
-LINUX_FILES=$(FAT_FILES) libaltos.so $(FIRMWARE) $(DOC)
-LINUX_EXTRA=micropeak-fat
+LINUX_FILES=$(FAT_FILES) libaltos.so $(FIRMWARE) $(DOC) micropeak.desktop.in ../icon/micropeak.svg
+LINUX_EXTRA=micropeak-fat micropeak.desktop.in
MACOSX_DRIVER_URL=http://www.ftdichip.com/Drivers/VCP/MacOSX/FTDIUSBSerialDriver_v2_2_18.dmg
MACOSX_DRIVER=FTDIUSBSerialDriver_v2_2_18.dmg
@@ -119,15 +129,20 @@ if FATINSTALL
FATTARGET=$(FATDIR)/$(VERSION)
LINUX_DIST_TARGET=$(FATTARGET)/$(LINUX_DIST)
+LINUX_SH_TARGET=$(FATTARGET)/$(LINUX_SH)
MACOSX_DIST_TARGET=$(FATTARGET)/$(MACOSX_DIST)
WINDOWS_DIST_TARGET=$(FATTARGET)/$(WINDOWS_DIST)
-fat: $(LINUX_DIST_TARGET) $(MACOSX_DIST_TARGET) $(WINDOWS_DIST_TARGET)
+fat: $(LINUX_DIST_TARGET) $(LINUX_SH_TARGET) $(MACOSX_DIST_TARGET) $(WINDOWS_DIST_TARGET)
$(LINUX_DIST_TARGET): $(LINUX_DIST)
mkdir -p $(FATTARGET)
cp -p $< $@
+$(LINUX_SH_TARGET): $(LINUX_SH)
+ mkdir -p $(FATTARGET)
+ cp -p $< $@
+
$(MACOSX_DIST_TARGET): $(MACOSX_DIST)
mkdir -p $(FATTARGET)
cp -p $< $@
@@ -137,7 +152,7 @@ $(WINDOWS_DIST_TARGET): $(WINDOWS_DIST)
cp -p $< $@
else
-fat: $(LINUX_DIST) $(MACOSX_DIST) $(WINDOWS_DIST)
+fat: $(LINUX_DIST) $(LINUX_SH) $(MACOSX_DIST) $(WINDOWS_DIST)
endif
micropeak: Makefile
@@ -230,6 +245,10 @@ $(LINUX_DIST): $(LINUX_FILES) $(LINUX_EXTRA)
chmod +x linux/MicroPeak/micropeak
tar cjf $@ -C linux MicroPeak
+$(LINUX_SH): $(LINUX_DIST) $(srcdir)/../altosui/linux-install.sh
+ sed 's/AltOS/MicroPeak/g' $(srcdir)/../altosui/linux-install.sh | cat - $(LINUX_DIST) > $@
+ chmod +x $@
+
$(MACOSX_DIST): $(MACOSX_FILES)
-rm -f $@
-rm -rf macosx
diff --git a/micropeak/micropeak.desktop.in b/micropeak/micropeak.desktop.in
new file mode 100644
index 00000000..abdf286f
--- /dev/null
+++ b/micropeak/micropeak.desktop.in
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Type=Application
+Name=MicroPeak
+GenericName=MicroPeak download and analysis
+Comment=View and log data from MicroPeak altimeters
+Icon=%icondir%/micropeak.svg
+Exec=%bindir%/micropeak %f
+Terminal=false
+MimeType=text/plain;
+Categories=Education;Electronics;Science;