summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2016-12-24 13:54:04 +0000
committerV3n3RiX <venerix@redcorelinux.org>2016-12-24 13:54:04 +0000
commite29bad9d89695116525de1afd362ff23a9ae77a5 (patch)
treede3f9346645f64c8090e26c9464d949937aec144
parent1464e6b615b555d66be18abf119032e5c0d38eaa (diff)
modularize user interfaces
-rwxr-xr-xaccesoriesui.sh36
-rwxr-xr-xgamesui.sh48
-rwxr-xr-xgraphicsui.sh8
-rwxr-xr-xinternetui.sh8
-rwxr-xr-xlibsisyphus267
-rwxr-xr-xlibsisyphus.sh96
-rwxr-xr-xmultimediaui.sh37
-rwxr-xr-xofficeui.sh41
-rwxr-xr-xsisyphus3
-rwxr-xr-xsystemui.sh8
10 files changed, 284 insertions, 268 deletions
diff --git a/accesoriesui.sh b/accesoriesui.sh
new file mode 100755
index 0000000..5d34689
--- /dev/null
+++ b/accesoriesui.sh
@@ -0,0 +1,36 @@
+#!/usr/bin/env bash
+
+# create accesories user interface
+export local accesoriesui='
+<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
+<vbox>
+<frame Accesories>
+ <hbox space-expand="true" space-extend="true">
+ <table hscrollbar-policy="1" vscrollbar-policy="1" exported-column="1">
+ <variable>accesories</variable>
+ <label>Application Category|Application Name|Application Description</label>
+ <item>app-admin|keepassx|Qt password manager compatible with its Win32 and Pocket PC versions</item>
+ </table>
+ </hbox>
+ <hbox space-expand="false" space-extend="false">
+ <button space-expand="true" space-extend="true" label-text="install">
+ <label>Install package</label>
+ <action>epkg autoinstall $accesories|$showdialog</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="uninstall">
+ <label>Uninstall package</label>
+ <action>epkg autoremove $accesories|$showdialog</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="home">
+ <label>Back home</label>
+ <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=mainui &</action>
+ <action signal="button-release-event">EXIT:ok</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="exit">
+ <label>Exit</label>
+ <action>EXIT:ok</action>
+ </button>
+ </hbox>
+</frame>
+</vbox>
+</window>'
diff --git a/gamesui.sh b/gamesui.sh
new file mode 100755
index 0000000..f1f3af0
--- /dev/null
+++ b/gamesui.sh
@@ -0,0 +1,48 @@
+#!/usr/bin/env bash
+
+# create games user interface
+export local gamesui='
+<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
+<vbox>
+<frame Games>
+ <hbox space-expand="true" space-extend="true">
+ <table hscrollbar-policy="1" vscrollbar-policy="1" exported-column="1">
+ <variable>game</variable>
+ <label>Application Category|Application Name|Application Description</label>
+ <item>app-emulation|playonlinux|Set of scripts to easily install and use Windows games and software</item>
+ <item>app-emulation|steam|Digital distribution client bootstrap package</item>
+ <item>games-action|armagetronad|Fast-paced 3D lightcycle game based on Tron</item>
+ <item>games-action|chromium-bsu|Chromium B.S.U. - an arcade game</item>
+ <item>games-action|supertuxkart|A kart racing game starring Tux, the linux penguin (TuxKart fork)</item>
+ <item>games-action|teeworlds|Online multi-player platform 2D shooter</item>
+ <item>games-board|aisleriot|A collection of solitaire card games for GNOME</item>
+ <item>games-emulation|dosbox|DOS Emulator</item>
+ <item>games-emulation|zsnes|SNES (Super Nintendo) emulator that uses x86 assembly</item>
+ <item>games-fps|urbanterror|Hollywood tactical shooter based on the ioquake3 engine</item>
+ <item>games-fps|xonotic|Fork of Nexuiz, Deathmatch FPS based on DarkPlaces, an advanced Quake 1 engine</item>
+ <item>games-simulation|openttd|OpenTTD is a clone of Transport Tycoon Deluxe</item>
+ <item>games-strategy|0ad|Cross-platform, 3D and historically-based real-time strategy game</item>
+ </table>
+ </hbox>
+ <hbox space-expand="false" space-extend="false">
+ <button space-expand="true" space-extend="true" label-text="install">
+ <label>Install package</label>
+ <action>epkg autoinstall $game|$showdialog</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="uninstall">
+ <label>Uninstall package</label>
+ <action>epkg autoremove $game|$showdialog</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="home">
+ <label>Back home</label>
+ <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=mainui &</action>
+ <action signal="button-release-event">EXIT:ok</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="exit">
+ <label>Exit</label>
+ <action>EXIT:ok</action>
+ </button>
+ </hbox>
+</frame>
+</vbox>
+</window>'
diff --git a/graphicsui.sh b/graphicsui.sh
new file mode 100755
index 0000000..8270773
--- /dev/null
+++ b/graphicsui.sh
@@ -0,0 +1,8 @@
+#!/usr/bin/env bash
+
+# create graphics user interface
+export local graphicsui='
+<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
+<vbox>
+</vbox>
+</window>'
diff --git a/internetui.sh b/internetui.sh
new file mode 100755
index 0000000..d46032d
--- /dev/null
+++ b/internetui.sh
@@ -0,0 +1,8 @@
+#!/usr/bin/env bash
+
+# create internet user interface
+export local internetui='
+<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
+<vbox>
+</vbox>
+</window>'
diff --git a/libsisyphus b/libsisyphus
deleted file mode 100755
index e838fb6..0000000
--- a/libsisyphus
+++ /dev/null
@@ -1,267 +0,0 @@
-#!/usr/bin/env bash
-
-# dialog/progress variables
-export local showdialog="yad --title "sisyphus" --text-info --width 800 --height 600 --center --no-buttons --on-top --sticky --fixed --skip-taskbar --listen --tail &"
-export local showprogress="yad --title "sisyphus" --progress --pulsate --width 800 --center --no-buttons --on-top --sticky --fixed --undecorated --skip-taskbar --auto-close &"
-
-# accesories category ui function
-export local accesoriesui='
-<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
-<vbox>
-<frame Accesories>
- <hbox space-expand="true" space-extend="true">
- <table hscrollbar-policy="1" vscrollbar-policy="1" exported-column="1">
- <variable>accesories</variable>
- <label>Application Category|Application Name|Application Description</label>
- <item>app-admin|keepassx|Qt password manager compatible with its Win32 and Pocket PC versions</item>
- </table>
- </hbox>
- <hbox space-expand="false" space-extend="false">
- <button space-expand="true" space-extend="true" label-text="install">
- <label>Install package</label>
- <action>epkg autoinstall $accesories|$showdialog</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="uninstall">
- <label>Uninstall package</label>
- <action>epkg autoremove $accesories|$showdialog</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="home">
- <label>Back home</label>
- <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=mainui &</action>
- <action signal="button-release-event">EXIT:ok</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="exit">
- <label>Exit</label>
- <action>EXIT:ok</action>
- </button>
- </hbox>
-</frame>
-</vbox>
-</window>'
-
-# games category ui function
-export local gamesui='
-<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
-<vbox>
-<frame Games>
- <hbox space-expand="true" space-extend="true">
- <table hscrollbar-policy="1" vscrollbar-policy="1" exported-column="1">
- <variable>game</variable>
- <label>Application Category|Application Name|Application Description</label>
- <item>app-emulation|playonlinux|Set of scripts to easily install and use Windows games and software</item>
- <item>app-emulation|steam|Digital distribution client bootstrap package</item>
- <item>games-action|armagetronad|Fast-paced 3D lightcycle game based on Tron</item>
- <item>games-action|chromium-bsu|Chromium B.S.U. - an arcade game</item>
- <item>games-action|supertuxkart|A kart racing game starring Tux, the linux penguin (TuxKart fork)</item>
- <item>games-action|teeworlds|Online multi-player platform 2D shooter</item>
- <item>games-board|aisleriot|A collection of solitaire card games for GNOME</item>
- <item>games-emulation|dosbox|DOS Emulator</item>
- <item>games-emulation|zsnes|SNES (Super Nintendo) emulator that uses x86 assembly</item>
- <item>games-fps|urbanterror|Hollywood tactical shooter based on the ioquake3 engine</item>
- <item>games-fps|xonotic|Fork of Nexuiz, Deathmatch FPS based on DarkPlaces, an advanced Quake 1 engine</item>
- <item>games-simulation|openttd|OpenTTD is a clone of Transport Tycoon Deluxe</item>
- <item>games-strategy|0ad|Cross-platform, 3D and historically-based real-time strategy game</item>
- </table>
- </hbox>
- <hbox space-expand="false" space-extend="false">
- <button space-expand="true" space-extend="true" label-text="install">
- <label>Install package</label>
- <action>epkg autoinstall $game|$showdialog</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="uninstall">
- <label>Uninstall package</label>
- <action>epkg autoremove $game|$showdialog</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="home">
- <label>Back home</label>
- <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=mainui &</action>
- <action signal="button-release-event">EXIT:ok</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="exit">
- <label>Exit</label>
- <action>EXIT:ok</action>
- </button>
- </hbox>
-</frame>
-</vbox>
-</window>'
-
-# graphics category ui function
-export local graphicsui='
-<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
-<vbox>
-</vbox>
-</window>'
-
-# internet category ui function
-export local internetui='
-<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
-<vbox>
-</vbox>
-</window>'
-
-# multimedia category ui function
-export local multimediaui='
-<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
-<vbox>
-<frame Multimedia>
- <hbox space-expand="true" space-extend="true">
- <table hscrollbar-policy="1" vscrollbar-policy="1" exported-column="1">
- <variable>multimedia</variable>
- <label>Application Category|Application Name|Application Description</label>
- <item>media-tv|tv-maxe|Program to view free channels</item>
- </table>
- </hbox>
- <hbox space-expand="false" space-extend="false">
- <button space-expand="true" space-extend="true" label-text="install">
- <label>Install package</label>
- <action>epkg autoinstall $multimedia|$showdialog</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="uninstall">
- <label>Uninstall package</label>
- <action>epkg autoremove $multimedia|$showdialog</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="home">
- <label>Back home</label>
- <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=mainui &</action>
- <action signal="button-release-event">EXIT:ok</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="exit">
- <label>Exit</label>
- <action>EXIT:ok</action>
- </button>
- </hbox>
-</frame>
-
-</vbox>
-</window>'
-
-# office category ui function
-export local officeui='
-<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
-<vbox>
-<frame Office>
- <hbox space-expand="true" space-extend="true">
- <table hscrollbar-policy="1" vscrollbar-policy="1" exported-column="1">
- <variable>office</variable>
- <label>Application Category|Application Name|Application Description</label>
- <item>app-office|abiword|Fully featured yet light and fast cross platform word processor documentation</item>
- <item>app-office|fet|Opensource school/high-school/university timetable scheduling software</item>
- <item>app-office|gnucash|A personal finance manager</item>
- <item>app-office|libreoffice|A full office productivity suite</item>
- <item>app-office|wps-office|WPS Office is an office productivity suite</item>
- <item>app-text|qpdfview|A tabbed document viewer</item>
- </table>
- </hbox>
- <hbox space-expand="false" space-extend="false">
- <button space-expand="true" space-extend="true" label-text="install">
- <label>Install package</label>
- <action>epkg autoinstall $office|$showdialog</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="uninstall">
- <label>Uninstall package</label>
- <action>epkg autoremove $office|$showdialog</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="home">
- <label>Back home</label>
- <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=mainui &</action>
- <action signal="button-release-event">EXIT:ok</action>
- </button>
- <button space-expand="true" space-extend="true" label-text="exit">
- <label>Exit</label>
- <action>EXIT:ok</action>
- </button>
- </hbox>
-</frame>
-</vbox>
-</window>'
-
-# system category ui function
-export local systemui='
-<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
-<vbox>
-</vbox>
-</window>'
-
-# main ui function
-export local mainui='
-<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
-<vbox>
-<frame Manage packages by name>
- <hbox>
- <text>
- <label>Enter package(s)</label>
- </text>
- <entry>
- <variable>pkgname</variable>
- </entry>
- </hbox>
- <hbox>
- <button tooltip-text="Search for package(s)">
- <label>Search package(s)</label>
- <action>epkg search $pkgname | $showdialog</action>
- </button>
- <button tooltip-text="Install new package(s) (no confirmation)">
- <label>Install package(s)</label>
- <action>epkg autoinstall $pkgname | $showdialog</action>
- </button>
- <button tooltip-text="Uninstall package(s) safely (no confirmation)">
- <label>Remove package(s)</label>
- <action>epkg autoremove $pkgname | $showdialog</action>
- </button>
- <button tooltip-text="Upgrade system (no confirmation)">
- <label>Upgrade System</label>
- <action>epkg autoupgrade | $showdialog</action>
- </button>
- <button tooltip-text="Remove orphan packages(s) aka no longer needed (no confirmation)">
- <label>Remove orphan package(s)</label>
- <action>epkg autoclean | $showdialog</action>
- </button>
- </hbox>
-</frame>
-<frame Browse packages by category>
- <hbox>
- <button tooltip-text="Accesories">
- <label>Accesories</label>
- <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=accesoriesui &</action>
- <action signal="button-release-event">EXIT:ok</action>
- </button>
- <button tooltip-text="Games">
- <label>Games</label>
- <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=gamesui &</action>
- <action signal="button-release-event">EXIT:ok</action>
- </button>
- <button tooltip-text="Graphics">
- <label>Graphics</label>
- </button>
- <button tooltip-text="Internet">
- <label>Internet</label>
- </button>
- </hbox>
- <hbox>
- <button tooltip-text="Sound & Video">
- <label>Sound & Video</label>
- <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=multimediaui &</action>
- <action signal="button-release-event">EXIT:ok</action>
- </button>
- <button tooltip-text="Office">
- <label>Office</label>
- <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=officeui &</action>
- <action signal="button-release-event">EXIT:ok</action>
- </button>
- <button tooltip-text="System Tools">
- <label>System Tools</label>
- </button>
- </hbox>
-</frame>
-<frame Terminal Emulator>
- <hbox>
- <terminal argv0="/bin/bash">
- <variable>vte1</variable>
- <input>echo epkg</input>
- </terminal>
- </hbox>
-</frame>
-</vbox>
-</window>
-'
diff --git a/libsisyphus.sh b/libsisyphus.sh
new file mode 100755
index 0000000..41e6b43
--- /dev/null
+++ b/libsisyphus.sh
@@ -0,0 +1,96 @@
+#!/usr/bin/env bash
+
+# export yad worker variable
+export local showdialog="yad --title "sisyphus" --text-info --width 800 --height 600 --center --no-buttons --on-top --sticky --fixed --skip-taskbar --listen --tail &"
+
+# import user interfaces
+source accesoriesui.sh
+source gamesui.sh
+source graphicsui.sh
+source internetui.sh
+source multimediaui.sh
+source officeui.sh
+source systemui.sh
+
+# create main user interface
+export local mainui='
+<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
+<vbox>
+<frame Manage packages by name>
+ <hbox>
+ <text>
+ <label>Enter package(s)</label>
+ </text>
+ <entry>
+ <variable>pkgname</variable>
+ </entry>
+ </hbox>
+ <hbox>
+ <button tooltip-text="Search for package(s)">
+ <label>Search package(s)</label>
+ <action>epkg search $pkgname | $showdialog</action>
+ </button>
+ <button tooltip-text="Install new package(s) (no confirmation)">
+ <label>Install package(s)</label>
+ <action>epkg autoinstall $pkgname | $showdialog</action>
+ </button>
+ <button tooltip-text="Uninstall package(s) safely (no confirmation)">
+ <label>Remove package(s)</label>
+ <action>epkg autoremove $pkgname | $showdialog</action>
+ </button>
+ <button tooltip-text="Upgrade system (no confirmation)">
+ <label>Upgrade System</label>
+ <action>epkg autoupgrade | $showdialog</action>
+ </button>
+ <button tooltip-text="Remove orphan packages(s) aka no longer needed (no confirmation)">
+ <label>Remove orphan package(s)</label>
+ <action>epkg autoclean | $showdialog</action>
+ </button>
+ </hbox>
+</frame>
+<frame Browse packages by category>
+ <hbox>
+ <button tooltip-text="Accesories">
+ <label>Accesories</label>
+ <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=accesoriesui &</action>
+ <action signal="button-release-event">EXIT:ok</action>
+ </button>
+ <button tooltip-text="Games">
+ <label>Games</label>
+ <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=gamesui &</action>
+ <action signal="button-release-event">EXIT:ok</action>
+ </button>
+ <button tooltip-text="Graphics">
+ <label>Graphics</label>
+ </button>
+ <button tooltip-text="Internet">
+ <label>Internet</label>
+ </button>
+ </hbox>
+ <hbox>
+ <button tooltip-text="Sound & Video">
+ <label>Sound & Video</label>
+ <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=multimediaui &</action>
+ <action signal="button-release-event">EXIT:ok</action>
+ </button>
+ <button tooltip-text="Office">
+ <label>Office</label>
+ <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=officeui &</action>
+ <action signal="button-release-event">EXIT:ok</action>
+ </button>
+ <button tooltip-text="System Tools">
+ <label>System Tools</label>
+ </button>
+ </hbox>
+</frame>
+<frame Terminal Emulator>
+ <hbox>
+ <terminal argv0="/bin/bash">
+ <variable>vte1</variable>
+ <input>echo epkg</input>
+ </terminal>
+ </hbox>
+</frame>
+</vbox>
+</window>
+'
diff --git a/multimediaui.sh b/multimediaui.sh
new file mode 100755
index 0000000..dc59493
--- /dev/null
+++ b/multimediaui.sh
@@ -0,0 +1,37 @@
+#!/usr/bin/env bash
+
+# create multimedia user interface
+export local multimediaui='
+<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
+<vbox>
+<frame Multimedia>
+ <hbox space-expand="true" space-extend="true">
+ <table hscrollbar-policy="1" vscrollbar-policy="1" exported-column="1">
+ <variable>multimedia</variable>
+ <label>Application Category|Application Name|Application Description</label>
+ <item>media-tv|tv-maxe|Program to view free channels</item>
+ </table>
+ </hbox>
+ <hbox space-expand="false" space-extend="false">
+ <button space-expand="true" space-extend="true" label-text="install">
+ <label>Install package</label>
+ <action>epkg autoinstall $multimedia|$showdialog</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="uninstall">
+ <label>Uninstall package</label>
+ <action>epkg autoremove $multimedia|$showdialog</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="home">
+ <label>Back home</label>
+ <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=mainui &</action>
+ <action signal="button-release-event">EXIT:ok</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="exit">
+ <label>Exit</label>
+ <action>EXIT:ok</action>
+ </button>
+ </hbox>
+</frame>
+
+</vbox>
+</window>'
diff --git a/officeui.sh b/officeui.sh
new file mode 100755
index 0000000..03ee543
--- /dev/null
+++ b/officeui.sh
@@ -0,0 +1,41 @@
+#!/usr/bin/env bash
+
+# create office user interface
+export local officeui='
+<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
+<vbox>
+<frame Office>
+ <hbox space-expand="true" space-extend="true">
+ <table hscrollbar-policy="1" vscrollbar-policy="1" exported-column="1">
+ <variable>office</variable>
+ <label>Application Category|Application Name|Application Description</label>
+ <item>app-office|abiword|Fully featured yet light and fast cross platform word processor documentation</item>
+ <item>app-office|fet|Opensource school/high-school/university timetable scheduling software</item>
+ <item>app-office|gnucash|A personal finance manager</item>
+ <item>app-office|libreoffice|A full office productivity suite</item>
+ <item>app-office|wps-office|WPS Office is an office productivity suite</item>
+ <item>app-text|qpdfview|A tabbed document viewer</item>
+ </table>
+ </hbox>
+ <hbox space-expand="false" space-extend="false">
+ <button space-expand="true" space-extend="true" label-text="install">
+ <label>Install package</label>
+ <action>epkg autoinstall $office|$showdialog</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="uninstall">
+ <label>Uninstall package</label>
+ <action>epkg autoremove $office|$showdialog</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="home">
+ <label>Back home</label>
+ <action signal="button-press-event">gtkdialog --space-expand=true --space-fill=true --program=mainui &</action>
+ <action signal="button-release-event">EXIT:ok</action>
+ </button>
+ <button space-expand="true" space-extend="true" label-text="exit">
+ <label>Exit</label>
+ <action>EXIT:ok</action>
+ </button>
+ </hbox>
+</frame>
+</vbox>
+</window>'
diff --git a/sisyphus b/sisyphus
index a1b872d..3468889 100755
--- a/sisyphus
+++ b/sisyphus
@@ -4,7 +4,8 @@
# It uses gnome-extra/yad, x11-libs/vte && x11-misc/gtkdialog
# Main Author : Ghiunhan Mamut @ Redcore Linux Project
-source libsisyphus
+# import main user interface
+source libsisyphus.sh
main() {
gtkdialog --space-expand=true --space-fill=true --program=mainui &
diff --git a/systemui.sh b/systemui.sh
new file mode 100755
index 0000000..5fc4fe7
--- /dev/null
+++ b/systemui.sh
@@ -0,0 +1,8 @@
+#!/usr/bin/env bash
+
+# create system user interface
+export local systemui='
+<window title="Sisyphus - A simple Epkg GUI" window-position="1" icon-name="gtk-search" modal="true" resizable="false" width-request="800" height-request="600">
+<vbox>
+</vbox>
+</window>'