diff --git a/.gitignore b/.gitignore index 37d93f9..988ea1b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /vulkan/build/ /build/ __pycache__ +*.zip diff --git a/gnome/bin/package b/gnome/bin/package new file mode 100755 index 0000000..ccb9d5c --- /dev/null +++ b/gnome/bin/package @@ -0,0 +1,74 @@ +#!/usr/bin/env bash + +UUID="breezydesktop@xronlinux.com" + +# fail on error +set -e +# log executed commands +set -x + +if [[ $EUID -eq 0 ]]; then + echo "This script must NOT be run as root" 1>&2 + exit 1 +fi + +# https://stackoverflow.com/a/246128 +SCRIPTDIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd) + +SRCDIR="$SCRIPTDIR/../breezydesktop@xronlinux.com" +TMPDIR=$(mktemp -d -t breezy-gnome-XXXXXXXXXX) +DESTDIR="$TMPDIR/$UUID" + +cd "$SCRIPTDIR" || exit 1 + +check_command() { + if ! command -v "$1" &>/dev/null; then + echo "Please install \"$1\" and make sure it's available in your \$PATH" + exit 1 + fi +} + +compile_schemas() { + check_command "glib-compile-schemas" + mkdir -p "$DESTDIR/schemas/" + + # the pack command also compiles the schemas but only into the zip file + glib-compile-schemas --targetdir="$DESTDIR/schemas" "$SRCDIR/schemas/" +} + +copy_static_files() { + # Copy non generated files to destdir + cp $SRCDIR/*.js $DESTDIR/ + cp $SRCDIR/*.frag $DESTDIR/ + mkdir -p "$DESTDIR/schemas/" + cp $SRCDIR/schemas/*.xml $DESTDIR/schemas/ + mkdir -p $DESTDIR/dbus-interfaces/ + cp $SRCDIR/dbus-interfaces/*.xml $DESTDIR/dbus-interfaces/ + cp $SRCDIR/metadata.json $DESTDIR/ +} + +pack() { + check_command "gnome-extensions" + + # pack everything into a sharable zip file + extra_source=() + for file in "$DESTDIR"/*; do + extra_source+=("--extra-source=$file") + done + + gnome-extensions pack --force "${extra_source[@]}" "$DESTDIR" +} + +if [ $# -eq 0 ]; then + # No arguments, do everything + compile_schemas + copy_static_files + pack +elif [ "$1" == "build_local" ]; then + compile_schemas + copy_static_files +elif [ "$1" == "pack" ]; then + pack +elif [ "$1" == "copy_static" ]; then + copy_static_files +fi \ No newline at end of file diff --git a/gnome/bin/setup-45.sh b/gnome/bin/setup-45.sh deleted file mode 100755 index 8139e0d..0000000 --- a/gnome/bin/setup-45.sh +++ /dev/null @@ -1,68 +0,0 @@ -if [ -z "$1" ]; then - echo "Usage: $0 username [group]" - exit 1 -fi -user=$1 -user_home=/home/$user - -# Check if a second parameter is provided, if not, use the username as the group -if [ -z "$2" ]; then - group=$user -else - group=$2 -fi - -# go to the downloads directory in user_home -pushd $user_home/Downloads - -rm xrealAirLinuxDriver.tar.gz xreal_driver_setup -wget https://github.com/wheaney/XRLinuxDriver/releases/download/breezy-test-v2/xrealAirLinuxDriver.tar.gz -wget https://github.com/wheaney/XRLinuxDriver/releases/download/breezy-test-v2/xreal_driver_setup - -chmod +x xreal_driver_setup -chown $user:$group xreal* - -sudo ./xreal_driver_setup $user_home/Downloads/xrealAirLinuxDriver.tar.gz - -$user_home/bin/xreal_driver_config -e -$user_home/bin/xreal_driver_config -vd - -sed -i 's/virtual_display/breezy_desktop/g' $user_home/.xreal_driver_config - -if [ ! -d breezy-desktop ]; then - git clone https://github.com/wheaney/breezy-desktop.git - - chown -R $user:$group breezy-desktop - - pushd breezy-desktop - git checkout gnome-45 -else - pushd breezy-desktop - - git fetch origin - git reset --hard origin/gnome-45 -fi - -popd - -extensions_dir=$user_home/.local/share/gnome-shell/extensions - -if [ ! -d $extensions_dir ]; then - mkdir -p $extensions_dir - chown $user:$group $extensions_dir -fi - -# check if the symlink at $extensions_dir/breezydesktop@org.xronlinux already exists -if [ ! -L $extensions_dir/breezydesktop@org.xronlinux ]; then - ln -s $user_home/Downloads/breezy-desktop/gnome/breezydesktop@org.xronlinux $extensions_dir/breezydesktop@org.xronlinux - chown -R $user:$group $extensions_dir/breezydesktop@org.xronlinux -fi - -glib-compile-schemas --targetdir=$extensions_dir/breezydesktop@org.xronlinux/schemas/ $extensions_dir/breezydesktop@org.xronlinux/schemas/ - -sudo cp $extensions_dir/breezydesktop@org.xronlinux/schemas/org.gnome.shell.extensions.breezy-desktop.gschema.xml /usr/share/glib-2.0/schemas/ -sudo glib-compile-schemas /usr/share/glib-2.0/schemas/ - -echo "Breezy Desktop extension is installed. Please log out, log back in, \ - and then run the following command to enable it:\ - gnome-extensions enable breezydesktop@org.xronlinux" diff --git a/gnome/breezydesktop@org.xronlinux/schemas/com.xronlinux.BreezyDesktop.gschema.xml b/gnome/breezydesktop@org.xronlinux/schemas/com.xronlinux.BreezyDesktop.gschema.xml deleted file mode 100644 index 8603943..0000000 --- a/gnome/breezydesktop@org.xronlinux/schemas/com.xronlinux.BreezyDesktop.gschema.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - true - - Enable XR effect - - Enable XR effect - - - - - space', 'Ctrl+Super+Space']]]> - - Re-center display - - Shortcut to re-center the virtual display. - - - - - Return', 'Ctrl+Super+Return']]]> - - Trigger change to display distance - - Shortcut to change the display distance. - - - - - 1.05 - - Display distance - - How far away the display appears. Farther will look smaller, closer will look larger. - - - - - 0.85 - - Display distance start - - Start distance when using the "change distance" shortcut. - - - - - 1.05 - - Display distance end - - End distance when using the "toggle display distance" shortcut. - - - - \ No newline at end of file diff --git a/gnome/breezydesktop@org.xronlinux/schemas/gschemas.compiled b/gnome/breezydesktop@org.xronlinux/schemas/gschemas.compiled deleted file mode 100644 index aae010e..0000000 Binary files a/gnome/breezydesktop@org.xronlinux/schemas/gschemas.compiled and /dev/null differ diff --git a/gnome/breezydesktop@org.xronlinux/IMUAdjust.frag b/gnome/breezydesktop@xronlinux.com/IMUAdjust.frag similarity index 100% rename from gnome/breezydesktop@org.xronlinux/IMUAdjust.frag rename to gnome/breezydesktop@xronlinux.com/IMUAdjust.frag diff --git a/gnome/breezydesktop@org.xronlinux/cursor.js b/gnome/breezydesktop@xronlinux.com/cursor.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/cursor.js rename to gnome/breezydesktop@xronlinux.com/cursor.js diff --git a/gnome/breezydesktop@org.xronlinux/cursormanager.js b/gnome/breezydesktop@xronlinux.com/cursormanager.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/cursormanager.js rename to gnome/breezydesktop@xronlinux.com/cursormanager.js diff --git a/gnome/breezydesktop@org.xronlinux/dbus-interfaces/org.gnome.Mutter.DisplayConfig.xml b/gnome/breezydesktop@xronlinux.com/dbus-interfaces/org.gnome.Mutter.DisplayConfig.xml similarity index 100% rename from gnome/breezydesktop@org.xronlinux/dbus-interfaces/org.gnome.Mutter.DisplayConfig.xml rename to gnome/breezydesktop@xronlinux.com/dbus-interfaces/org.gnome.Mutter.DisplayConfig.xml diff --git a/gnome/breezydesktop@org.xronlinux/extension.js b/gnome/breezydesktop@xronlinux.com/extension.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/extension.js rename to gnome/breezydesktop@xronlinux.com/extension.js diff --git a/gnome/breezydesktop@org.xronlinux/globals.js b/gnome/breezydesktop@xronlinux.com/globals.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/globals.js rename to gnome/breezydesktop@xronlinux.com/globals.js diff --git a/gnome/breezydesktop@org.xronlinux/ipc.js b/gnome/breezydesktop@xronlinux.com/ipc.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/ipc.js rename to gnome/breezydesktop@xronlinux.com/ipc.js diff --git a/gnome/breezydesktop@org.xronlinux/math.js b/gnome/breezydesktop@xronlinux.com/math.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/math.js rename to gnome/breezydesktop@xronlinux.com/math.js diff --git a/gnome/breezydesktop@org.xronlinux/metadata.json b/gnome/breezydesktop@xronlinux.com/metadata.json similarity index 85% rename from gnome/breezydesktop@org.xronlinux/metadata.json rename to gnome/breezydesktop@xronlinux.com/metadata.json index 4343f7e..894c670 100644 --- a/gnome/breezydesktop@org.xronlinux/metadata.json +++ b/gnome/breezydesktop@xronlinux.com/metadata.json @@ -1,5 +1,5 @@ { - "uuid": "breezydesktop@org.xronlinux", + "uuid": "breezydesktop@xronlinux.com", "name": "Breezy GNOME XR Desktop", "description": "XR virtual desktop for GNOME.", "settings-schema": "com.xronlinux.BreezyDesktop", diff --git a/gnome/breezydesktop@org.xronlinux/monitormanager.js b/gnome/breezydesktop@xronlinux.com/monitormanager.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/monitormanager.js rename to gnome/breezydesktop@xronlinux.com/monitormanager.js diff --git a/gnome/breezydesktop@xronlinux.com/schemas/com.xronlinux.BreezyDesktop.gschema.xml b/gnome/breezydesktop@xronlinux.com/schemas/com.xronlinux.BreezyDesktop.gschema.xml new file mode 120000 index 0000000..399c9da --- /dev/null +++ b/gnome/breezydesktop@xronlinux.com/schemas/com.xronlinux.BreezyDesktop.gschema.xml @@ -0,0 +1 @@ +../../../ui/data/com.xronlinux.BreezyDesktop.gschema.xml \ No newline at end of file diff --git a/gnome/breezydesktop@org.xronlinux/shader.js b/gnome/breezydesktop@xronlinux.com/shader.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/shader.js rename to gnome/breezydesktop@xronlinux.com/shader.js diff --git a/gnome/breezydesktop@org.xronlinux/time.js b/gnome/breezydesktop@xronlinux.com/time.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/time.js rename to gnome/breezydesktop@xronlinux.com/time.js diff --git a/gnome/breezydesktop@org.xronlinux/xrEffect.js b/gnome/breezydesktop@xronlinux.com/xrEffect.js similarity index 100% rename from gnome/breezydesktop@org.xronlinux/xrEffect.js rename to gnome/breezydesktop@xronlinux.com/xrEffect.js diff --git a/ui/com.xronlinux.BreezyDesktop.json b/ui/com.xronlinux.BreezyDesktop.json index 666fab7..0044ce7 100644 --- a/ui/com.xronlinux.BreezyDesktop.json +++ b/ui/com.xronlinux.BreezyDesktop.json @@ -61,7 +61,7 @@ "sources" : [ { "type" : "dir", - "url" : "../" + "source" : "./" } ] }