+
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions xdg/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Linux :
-----------
desktop file and application icons installation.
This tells the system that fstl knows to open stl files and allow stl to
be launched using windows key.

Install :
./xdg_install.sh fstl

Uninstall :
./xdg_uninstall.sh fstl

if runned as regular user this will install locally in :
$HOME/.local/share/mime/
$HOME/.local/share/applications/
$HOME/.local/share/icons/

if runned as root this will install system-wide in :
/usr/share/mime
/usr/share/applications
/usr/share/icons

Third script xdg_package_install.sh is to be used when building deb or rpm package.
9 changes: 9 additions & 0 deletions xdg/fstlapp-fstl.desktop
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[Desktop Entry]
Name=fstl
GenericName=Fast STL Viewer
Exec=fstl %U
Terminal=false
Icon=fstlapp-fstl
Type=Application
MimeType=model/stl;
Categories=Utility;
Binary file added xdg/icons/fstlapp-fstl_128x128.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added xdg/icons/fstlapp-fstl_16x16.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added xdg/icons/fstlapp-fstl_22x22.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added xdg/icons/fstlapp-fstl_256x256.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added xdg/icons/fstlapp-fstl_32x32.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added xdg/icons/fstlapp-fstl_48x48.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added xdg/icons/fstlapp-fstl_64x64.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
52 changes: 52 additions & 0 deletions xdg/xdg_install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#!/bin/bash

# This script will install mimetypes, icons and desktop file,
# it takes a name in argument
#
# if runned as regular user this will install locally in :
# $HOME/.local/share/mime/
# $HOME/.local/share/applications/
# $HOME/.local/share/icons/
#
# if runned as root this will install system-wide in :
# /usr/share/mime
# /usr/share/applications
# /usr/share/icons

if [ $# != 1 ]; then
echo "You must provide an application name"
exit 1
fi

name=$1

# echo "Installing mimetypes"
# xdg-mime install fstlapp-$name-mimetypes.xml

echo "Installing desktop file"
xdg-desktop-menu install fstlapp-$name.desktop

echo "Installing apps icons"
iclist="fstlapp-$name"
for im in $iclist
do
xdg-icon-resource install --theme hicolor --context apps --size 16 icons/${im}_16x16.png $im
xdg-icon-resource install --theme hicolor --context apps --size 22 icons/${im}_22x22.png $im
xdg-icon-resource install --theme hicolor --context apps --size 32 icons/${im}_32x32.png $im
xdg-icon-resource install --theme hicolor --context apps --size 48 icons/${im}_48x48.png $im
xdg-icon-resource install --theme hicolor --context apps --size 64 icons/${im}_64x64.png $im
xdg-icon-resource install --theme hicolor --context apps --size 128 icons/${im}_128x128.png $im
xdg-icon-resource install --theme hicolor --context apps --size 256 icons/${im}_256x256.png $im
done

# echo "Installing mimetypes icons"
# iclist="`cat fstlapp-$name-mimetypes.xml | grep "icon name" | sed 's/^.*"\(.*\)".*$/\1/'`"
# for im in $iclist
# do
# xdg-icon-resource install --theme hicolor --context mimetypes --size 16 icons/${im}_16x16.png $im
# xdg-icon-resource install --theme hicolor --context mimetypes --size 22 icons/${im}_22x22.png $im
# xdg-icon-resource install --theme hicolor --context mimetypes --size 32 icons/${im}_32x32.png $im
# xdg-icon-resource install --theme hicolor --context mimetypes --size 48 icons/${im}_48x48.png $im
# xdg-icon-resource install --theme hicolor --context mimetypes --size 64 icons/${im}_64x64.png $im
# done

53 changes: 53 additions & 0 deletions xdg/xdg_package_install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
#!/bin/bash

# For a package installation (rpm or deb), we must proceed a different way
# This script takes two arguments, the first one is the installation
# prefix and the second is the name

if [ $# != 2 ]; then
echo "You must provide two arguments"
exit 1
fi

base=$1
name=$2

# echo "Drop mimetypes file in /usr/share/mime/packages/"
# mkdir -p $base/usr/share/mime/packages/
# cp fstlapp-$name-mimetypes.xml $base/usr/share/mime/packages/

echo "Drop desktop file in /usr/share/applications/"
mkdir -p $base/usr/share/applications/
cp fstlapp-$name.desktop $base/usr/share/applications/

slist="16 22 32 48 64 128 256"
echo "Installing apps icons"
iclist="fstlapp-$name"
for im in $iclist
do
for s in $slist
do
mkdir -p $base/usr/share/icons/hicolor/${s}x${s}/apps
cp icons/${im}_${s}x${s}.png $base/usr/share/icons/hicolor/${s}x${s}/apps/$im.png
done
done

# echo "Installing mimetypes icons"
# iclist="`cat fstlapp-$name-mimetypes.xml | grep "icon name" | sed 's/^.*"\(.*\)".*$/\1/'`"
# for im in $iclist
# do
# for s in $slist
# do
# mkdir -p $base/usr/share/icons/hicolor/${s}x${s}/mimetypes
# cp icons/${im}_${s}x${s}.png $base/usr/share/icons/hicolor/${s}x${s}/mimetypes/$im.png
# done
# done

#
# Put this in the post installation and post uninstallation scripts
#
#echo "Updating mime database"
#update-mime-database /usr/share/mim
#
#echo "Updating desktop database"
#update-desktop-database
50 changes: 50 additions & 0 deletions xdg/xdg_uninstall.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#!/bin/bash

# This script will uninstall mimetypes, icons and desktop file
#
# if runned as regular user this will uninstall locally from :
# $HOME/.local/share/mime/
# $HOME/.local/share/applications/
# $HOME/.local/share/icons/
#
# if runned as root this will uninstall system-wide from :
# /usr/share/mime
# /usr/share/applications
# /usr/share/icons

if [ $# != 1 ]; then
echo "You must provide a name"
exit 1
fi

name=$1

# echo "Uninstalling mimetypes"
# xdg-mime uninstall fstlapp-$name-mimetypes.xml

echo "Uninstalling desktop file"
xdg-desktop-menu uninstall fstlapp-$name.desktop

echo "Uninstalling apps icons"
iclist="fstlapp-$name"
for im in $iclist
do
xdg-icon-resource uninstall --theme hicolor --context apps --size 16 $im
xdg-icon-resource uninstall --theme hicolor --context apps --size 22 $im
xdg-icon-resource uninstall --theme hicolor --context apps --size 32 $im
xdg-icon-resource uninstall --theme hicolor --context apps --size 48 $im
xdg-icon-resource uninstall --theme hicolor --context apps --size 64 $im
xdg-icon-resource uninstall --theme hicolor --context apps --size 128 $im
xdg-icon-resource uninstall --theme hicolor --context apps --size 256 $im
done

# echo "Uninstalling mimetypes icons"
# iclist="`cat fstlapp-$name-mimetypes.xml | grep "icon name" | sed 's/^.*"\(.*\)".*$/\1/'`"
# for im in $iclist
# do
# xdg-icon-resource uninstall --theme hicolor --context mimetypes --size 16 $im
# xdg-icon-resource uninstall --theme hicolor --context mimetypes --size 22 $im
# xdg-icon-resource uninstall --theme hicolor --context mimetypes --size 32 $im
# xdg-icon-resource uninstall --theme hicolor --context mimetypes --size 48 $im
# xdg-icon-resource uninstall --theme hicolor --context mimetypes --size 64 $im
# done
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载