Skip to content

Commit 5797ab7

Browse files
mf-fxMarcus Funch
authored andcommitted
Make desktop program list script list snaps
Fix minor error in browser_set_default.sh Minor documentation update
1 parent 24da2ab commit 5797ab7

File tree

4 files changed

+32
-24
lines changed

4 files changed

+32
-24
lines changed

os2borgerpc/chrome/chrome_replace_firefox_in_launcher.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
#!/usr/bin/env bash
22

3+
# In 22.04 Firefox is a snap, in 20.04 it's an apt package.
4+
# Once everyone has upgraded, support for the latter can be removed
35
if [ -d "/snap/firefox" ]; then
46
sed -i "s/firefox_firefox/google-chrome/" /etc/dconf/db/os2borgerpc.d/02-launcher-favorites
57
else

os2borgerpc/desktop/desktop_print_program_list.sh

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,28 +4,34 @@
44
55
#
66
# Arguments
7-
# 1: Default is to print programs available. Write 'skrivebord' to print
8-
# programs already on the desktop.
7+
# 1: Default is to print programs available/installed. Write 'skrivebord' to list
8+
# programs already on the desktop, or "menu" to list programs in the launcher.
99

1010
lower() {
1111
echo "$@" | tr '[:upper:]' '[:lower:]'
1212
}
1313

14-
DESKTOP="$(lower "$1")"
14+
find_desktop_files_path() {
15+
PTH_LOCAL=$1
16+
# - shellcheck says find handles non-alphanumeric file names better than ls
17+
find "$PTH_LOCAL" -maxdepth 1 | grep --fixed-strings .desktop | xargs basename --suffix .desktop
18+
}
19+
20+
LOCATION="$(lower "$1")"
1521

16-
USER=user
22+
SHADOW_DESKTOP=/home/.skjult/Skrivebord
23+
SNAP_DESKTOP_FILE_PATH="/var/lib/snapd/desktop/applications"
24+
APT_DESKTOP_FILE_PATH="/usr/share/applications"
1725

18-
if [ "$DESKTOP" = "menu" ];
19-
then
26+
if [ "$LOCATION" = "menu" ]; then
2027
# Print only the last line only and format it a bit more nicely
2128
tail -n 1 /etc/dconf/db/os2borgerpc.d/02-launcher-favorites | sed "s/favorite-apps=\[\|'\|\]\ \|.desktop//g" | tr ',' '\n'
2229
exit
23-
elif [ "$DESKTOP" = "skrivebord" ]
24-
then
25-
PTH="/home/$USER/Skrivebord/"
30+
elif [ "$LOCATION" = "skrivebord" ]; then
31+
PTH="$SHADOW_DESKTOP/"
2632
else
27-
PTH=/usr/share/applications/
33+
PTH=$APT_DESKTOP_FILE_PATH/
34+
find_desktop_files_path $SNAP_DESKTOP_FILE_PATH
2835
fi
2936

30-
# - shellcheck says find handles non-alphanumeric file names better than ls
31-
find $PTH -maxdepth 1 | sed "s,$PTH\|.desktop,,g"
37+
find_desktop_files_path "$PTH"

os2borgerpc/desktop/desktop_program_shortcut.sh

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,31 +13,31 @@
1313
# This parameter IS case-sensitive as some applications have
1414
# capitalized characters in their filename.
1515

16-
set -x
17-
1816
ADD="$1"
1917
PROGRAM="$2"
2018

21-
SHADOW=".skjult"
19+
SHADOW_DESKTOP="/home/.skjult/Skrivebord"
20+
SNAP_DESKTOP_FILE_PATH="/var/lib/snapd/desktop/applications"
21+
APT_DESKTOP_FILE_PATH="/usr/share/applications"
2222

2323
# TODO?: Make it replace all desktop icons which are copies with symlinks?
2424

25-
mkdir --parents /home/$SHADOW/Skrivebord
25+
mkdir --parents $SHADOW_DESKTOP
2626

2727
if [ "$ADD" = 'True' ]; then
28-
if [ -f "/var/lib/snapd/desktop/applications/${PROGRAM}_$PROGRAM.desktop" ]; then
29-
DESKTOP_FILE=/var/lib/snapd/desktop/applications/${PROGRAM}_$PROGRAM.desktop
28+
if [ -f "$SNAP_DESKTOP_FILE_PATH/${PROGRAM}_$PROGRAM.desktop" ]; then
29+
DESKTOP_FILE=$SNAP_DESKTOP_FILE_PATH/${PROGRAM}_$PROGRAM.desktop
3030
else
31-
DESKTOP_FILE=/usr/share/applications/$PROGRAM.desktop
31+
DESKTOP_FILE=$APT_DESKTOP_FILE_PATH/$PROGRAM.desktop
3232
fi
3333

3434
# Remove it first as it may be a copy and not symlink (ln --force can't overwrite regular files)
35-
rm "/home/$SHADOW/Skrivebord/$PROGRAM.desktop"
35+
rm "$SHADOW_DESKTOP/$PROGRAM.desktop"
3636

37-
ln --symbolic --force "$DESKTOP_FILE" /home/$SHADOW/Skrivebord/
37+
ln --symbolic --force "$DESKTOP_FILE" $SHADOW_DESKTOP/
3838
else
39-
if [ -f "/home/$SHADOW/Skrivebord/${PROGRAM}_$PROGRAM.desktop" ]; then
39+
if [ -f "$SHADOW_DESKTOP/${PROGRAM}_$PROGRAM.desktop" ]; then
4040
PROGRAM=${PROGRAM}_$PROGRAM
4141
fi
42-
rm --force "/home/$SHADOW/Skrivebord/$PROGRAM.desktop"
42+
rm --force "$SHADOW_DESKTOP/$PROGRAM.desktop"
4343
fi

os2borgerpc/os2borgerpc/browser_set_default.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ FILE="/usr/share/applications/defaults.list"
1717

1818
# They can type in "chrome" but the desktop file is called google-chrome
1919
if [ "$BROWSER" = "chrome" ]; then
20-
BROWSER=google-chrome.desktop
20+
BROWSER=google-chrome
2121
fi
2222

2323
# Handle snaps, which have names like firefox_firefox.desktop

0 commit comments

Comments
 (0)