From ae214cf1a21dd9a081852e4a4123cf19c587ba38 Mon Sep 17 00:00:00 2001
From: wheaney <42350981+wheaney@users.noreply.github.com>
Date: Tue, 7 May 2024 16:04:32 -0700
Subject: [PATCH] Reorg and start to add packaging scripts
---
.gitignore | 1 +
gnome/bin/package | 74 ++++++++++++++++++
gnome/bin/setup-45.sh | 68 ----------------
.../com.xronlinux.BreezyDesktop.gschema.xml | 59 --------------
.../schemas/gschemas.compiled | Bin 720 -> 0 bytes
.../IMUAdjust.frag | 0
.../cursor.js | 0
.../cursormanager.js | 0
.../org.gnome.Mutter.DisplayConfig.xml | 0
.../extension.js | 0
.../globals.js | 0
.../ipc.js | 0
.../math.js | 0
.../metadata.json | 2 +-
.../monitormanager.js | 0
.../com.xronlinux.BreezyDesktop.gschema.xml | 1 +
.../shader.js | 0
.../time.js | 0
.../xrEffect.js | 0
ui/com.xronlinux.BreezyDesktop.json | 2 +-
20 files changed, 78 insertions(+), 129 deletions(-)
create mode 100755 gnome/bin/package
delete mode 100755 gnome/bin/setup-45.sh
delete mode 100644 gnome/breezydesktop@org.xronlinux/schemas/com.xronlinux.BreezyDesktop.gschema.xml
delete mode 100644 gnome/breezydesktop@org.xronlinux/schemas/gschemas.compiled
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/IMUAdjust.frag (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/cursor.js (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/cursormanager.js (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/dbus-interfaces/org.gnome.Mutter.DisplayConfig.xml (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/extension.js (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/globals.js (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/ipc.js (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/math.js (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/metadata.json (85%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/monitormanager.js (100%)
create mode 120000 gnome/breezydesktop@xronlinux.com/schemas/com.xronlinux.BreezyDesktop.gschema.xml
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/shader.js (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/time.js (100%)
rename gnome/{breezydesktop@org.xronlinux => breezydesktop@xronlinux.com}/xrEffect.js (100%)
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 aae010ed2b172de76e71dd481aa97e3191c18b3f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 720
zcmZ`$yGjE=6umy;6G6l$qS%NVLXyH(6janAm5NvhGTBTXxXv!Kv!a657J{{%g@WH;
zAyzgj2!h`r*jQL-rRR=GNQ7KCdk$yrW9QEDhR`LU43%RTy!oe{=CaoWZvGy>Vdk?@
zS|Kjjf)N`a`awL}CVS9tQytRxr
zFrVKY9d~nYJBRkDh~yKXw4J$);hgmd{A=(l@RI#nXP*1GeG?9~S_`_1=YVXAbzg1