Adding automated installshield :D
This commit is contained in:
parent
5a6ee4af0e
commit
5c656aee65
Binary file not shown.
Binary file not shown.
After Width: | Height: | Size: 9.8 KiB |
|
@ -0,0 +1,786 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.22.2 -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.20"/>
|
||||
<object class="GtkWindow" id="installer">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="title" translatable="yes">Chicago 95 Installation</property>
|
||||
<property name="icon_name">application-x-executable</property>
|
||||
<signal name="destroy-event" handler="on_window_destroy" swapped="no"/>
|
||||
<child type="titlebar">
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_left">15</property>
|
||||
<property name="margin_right">15</property>
|
||||
<property name="margin_top">15</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="spacing">10</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="spacing">10</property>
|
||||
<child>
|
||||
<object class="GtkImage">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="pixbuf">install.png</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkStack" id="stack">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<child>
|
||||
<object class="GtkBox" id="welcome">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="label" translatable="yes">Welcome!</property>
|
||||
<attributes>
|
||||
<attribute name="font-desc" value="Sans Bold Italic 16"/>
|
||||
</attributes>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="margin_top">20</property>
|
||||
<property name="label" translatable="yes">This installation program will install Chicago95.
|
||||
|
||||
Press the Next button to start the installation. You can press the cancel button now if you do not want to install Chicago 95 at this time.</property>
|
||||
<property name="wrap">True</property>
|
||||
<property name="max_width_chars">50</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="name">page_welcome</property>
|
||||
<property name="title" translatable="yes">welcome</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox" id="components">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="baseline_position">top</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="label" translatable="yes">Select Components</property>
|
||||
<attributes>
|
||||
<attribute name="font-desc" value="Sans Bold Italic 16"/>
|
||||
</attributes>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="margin_top">20</property>
|
||||
<property name="label" translatable="yes">Choose which components you want to install by checking the
|
||||
boxes below.</property>
|
||||
<property name="max_width_chars">50</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkGrid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_right">8</property>
|
||||
<property name="margin_top">30</property>
|
||||
<property name="column_homogeneous">True</property>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="theme">
|
||||
<property name="label" translatable="yes">GTK Theme</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Installs the theme to ~/.themes/</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_install_theme" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="theme size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">0 k</property>
|
||||
<property name="justify">right</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="icons">
|
||||
<property name="label" translatable="yes">Icons</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Installs the icons to ~/.icons/</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_install_icons" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="cursors">
|
||||
<property name="label" translatable="yes">Cursors</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Installs the cursors to ~/.icons/</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_install_cursors" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="background">
|
||||
<property name="label" translatable="yes">Background</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Sets the background to the lovely blue/green color</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_install_background" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="icons size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">0 k</property>
|
||||
<property name="justify">right</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="cursors size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">0 k</property>
|
||||
<property name="justify">right</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="background size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">0 k</property>
|
||||
<property name="justify">right</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="sounds">
|
||||
<property name="label" translatable="yes">Sound theme</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Installs the sound theme to ~/.local/share/sounds</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_install_sounds" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">4</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="sound size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">0 k</property>
|
||||
<property name="justify">right</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">4</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="font size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">0 k</property>
|
||||
<property name="justify">right</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">5</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="fonts">
|
||||
<property name="label" translatable="yes">Fonts</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Installs the fonts used by XFCE term to ~/.fonts</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_install_fonts" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">5</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkFrame">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_top">20</property>
|
||||
<property name="label_xalign">0</property>
|
||||
<property name="shadow_type">none</property>
|
||||
<child>
|
||||
<object class="GtkAlignment">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="left_padding">30</property>
|
||||
<child>
|
||||
<object class="GtkGrid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_right">4</property>
|
||||
<property name="column_homogeneous">True</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="label" translatable="yes">Disk Space Required:</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="total size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">0 k</property>
|
||||
<property name="justify">right</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="label" translatable="yes">Disk Space Remaining:</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="remaining size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">0 k</property>
|
||||
<property name="justify">right</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child type="label_item">
|
||||
<placeholder/>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">4</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="name">page_components</property>
|
||||
<property name="title" translatable="yes">page1</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox" id="customizations">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="label" translatable="yes">Select Customizations</property>
|
||||
<attributes>
|
||||
<attribute name="font-desc" value="Sans Bold Italic 16"/>
|
||||
</attributes>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="margin_top">20</property>
|
||||
<property name="label" translatable="yes">Choose which customizations you want to install by checking the
|
||||
boxes below.</property>
|
||||
<property name="max_width_chars">50</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkGrid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_top">30</property>
|
||||
<property name="column_homogeneous">True</property>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="thunar">
|
||||
<property name="label" translatable="yes">Thunar Windows spinner</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Enables the Thunar status bar image</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_change_thunar" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="terminal">
|
||||
<property name="label" translatable="yes">Enable terminal theme</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">enables the XFCE terminal theme</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_change_terminal" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="bash">
|
||||
<property name="label" translatable="yes">Change bash prompt</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Adds the DOS prompt to bash and changes the prompt to C:\></property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_change_bash" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="zsh">
|
||||
<property name="label" translatable="yes">Change zsh prompt</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Adds the DOS prompt to oh-my-zsh and installs/enables the zsh theme. Requires Oh-my-zsh be installed.</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_change_zsh" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkCheckButton" id="panel">
|
||||
<property name="label" translatable="yes">Customize XFCE panel</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Creates the iconic Chicago 95 start button and taskbar</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="set_change_panel" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">4</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="name">page_customizations</property>
|
||||
<property name="title" translatable="yes">page2</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox" id="completed">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="label" translatable="yes">Installation Completed!</property>
|
||||
<attributes>
|
||||
<attribute name="font-desc" value="Sans Bold Italic 16"/>
|
||||
</attributes>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="margin_top">20</property>
|
||||
<property name="label" translatable="yes">Chicago 95 has been successfully installed.
|
||||
|
||||
Press the Finish button to exit this installation.</property>
|
||||
<property name="wrap">True</property>
|
||||
<property name="max_width_chars">50</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="name">page_completed</property>
|
||||
<property name="title" translatable="yes">page0</property>
|
||||
<property name="position">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSeparator">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="margin_bottom">5</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="homogeneous">True</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="back">
|
||||
<property name="label" translatable="yes">< _Back</property>
|
||||
<property name="width_request">74</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_underline">True</property>
|
||||
<signal name="clicked" handler="back_clicked" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="next">
|
||||
<property name="label" translatable="yes">_Next ></property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="use_underline">True</property>
|
||||
<signal name="clicked" handler="next_clicked" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="cancel">
|
||||
<property name="label" translatable="yes">C_ancel</property>
|
||||
<property name="width_request">74</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="margin_left">40</property>
|
||||
<property name="hexpand">False</property>
|
||||
<property name="use_underline">True</property>
|
||||
<signal name="clicked" handler="on_window_destroy" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<object class="GtkWindow" id="main window">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="title" translatable="yes">Chicago 95 Installer</property>
|
||||
<property name="resizable">False</property>
|
||||
<property name="window_position">center</property>
|
||||
<property name="destroy_with_parent">True</property>
|
||||
<property name="accept_focus">False</property>
|
||||
<signal name="destroy-event" handler="on_window_destroy" swapped="no"/>
|
||||
<child type="titlebar">
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkImage">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="pixbuf">setup.png</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<object class="GtkWindow" id="progress">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="title" translatable="yes">Installing</property>
|
||||
<property name="icon_name">preferences-desktop-theme</property>
|
||||
<child type="titlebar">
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_left">15</property>
|
||||
<property name="margin_right">15</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="margin_top">20</property>
|
||||
<property name="label" translatable="yes">Installing component:</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="progress file">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="label" translatable="yes">Installing theme</property>
|
||||
<property name="ellipsize">end</property>
|
||||
<property name="single_line_mode">True</property>
|
||||
<property name="max_width_chars">50</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkProgressBar" id="progress bar">
|
||||
<property name="width_request">300</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="margin_top">10</property>
|
||||
<property name="ellipsize">middle</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="progress cancel">
|
||||
<property name="label" translatable="yes">Cancel</property>
|
||||
<property name="width_request">74</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="halign">center</property>
|
||||
<property name="margin_top">10</property>
|
||||
<property name="margin_bottom">8</property>
|
||||
<signal name="clicked" handler="cancel_install" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</interface>
|
|
@ -0,0 +1,28 @@
|
|||
Manual Steps:
|
||||
|
||||
You're not done yet! Not everything could be automated. Here's what left:
|
||||
|
||||
|
||||
|
||||
!! Enabling the notification theme
|
||||
|
||||
- Open the XFCE settings manager > Notifications.
|
||||
- Choose Chicago95 for the theme.
|
||||
- Adjust Opacity to 100%.
|
||||
|
||||
|
||||
|
||||
!! Start Button
|
||||
|
||||
Open the XFCE settings manager > Panel > Items tab > Double click the Whisker / Application menu item in the item list; alternatively you can also access their settings menu by right clicking the icon from the panelbar and selecting "properties."
|
||||
|
||||
- In the Whisker / Application properties menu click the icon option (*This will appear as the icon badge on your start button that's currently in use.*)
|
||||
- In the "Select An Icon" window, navigate to `/home/$USER/.themes/Chicago95/misc` (*with $USER being your username.*) You may have to click the pull-down menu from "Select icon from" and then select "Image Files" so that you can navigate to a custom icon on your filesystem. You may also have to enable the filechooser to display hidden files. (*Press Ctrl+h to toggle this setting.*)
|
||||
|
||||
`misc/` contains simple small icon badges in different sizes. You may have to experiment a little until you can find a size that fits correctly
|
||||
|
||||
....`misc/GTK2 start buttons/` contains start buttons that are used for the GTK2 version of the Whisker / Application Menu plugin.
|
||||
|
||||
....`misc/Legacy GTK3 start buttons/` contains start buttons that were used for an older GTK3 version of the Whisker / Application Menu plugin.
|
||||
|
||||
*Note: The smallest optimal panel row size for this theme is 24 pixels. If your panel is below that size, you will encounter icon scaling issues.*
|
Binary file not shown.
After Width: | Height: | Size: 289 KiB |
|
@ -0,0 +1,35 @@
|
|||
[Configuration]
|
||||
ColorForeground=#c0c0c0
|
||||
ColorCursor=#c0c0c0c0c0c0
|
||||
ColorSelection=#ffffffffffff
|
||||
ColorPalette=#000000000000;#808000000000;#000080800000;#808080800000;#000000008080;#808000008080;#000080808080;#c0c0c0c0c0c0;#808080808080;#ffff00000000;#0000ffff0000;#ffffffff0000;#0000ffffffff;#ffff0000ffff;#00000000ffff;#ffffffffffff
|
||||
FontName=Less Perfect DOS VGA 12
|
||||
MiscAlwaysShowTabs=FALSE
|
||||
MiscBell=TRUE
|
||||
MiscBellUrgent=FALSE
|
||||
MiscBordersDefault=TRUE
|
||||
MiscCursorBlinks=FALSE
|
||||
MiscCursorShape=TERMINAL_CURSOR_SHAPE_BLOCK
|
||||
MiscDefaultGeometry=80x24
|
||||
MiscInheritGeometry=FALSE
|
||||
MiscMenubarDefault=FALSE
|
||||
MiscMouseAutohide=FALSE
|
||||
MiscMouseWheelZoom=TRUE
|
||||
MiscToolbarDefault=TRUE
|
||||
MiscConfirmClose=TRUE
|
||||
MiscCycleTabs=TRUE
|
||||
MiscTabCloseButtons=TRUE
|
||||
MiscTabCloseMiddleClick=TRUE
|
||||
MiscTabPosition=GTK_POS_TOP
|
||||
MiscHighlightUrls=TRUE
|
||||
MiscMiddleClickOpensUri=FALSE
|
||||
MiscCopyOnSelect=FALSE
|
||||
MiscShowRelaunchDialog=TRUE
|
||||
MiscRewrapOnResize=TRUE
|
||||
MiscUseShiftArrowsToScroll=FALSE
|
||||
MiscSlimTabs=FALSE
|
||||
MiscNewTabAdjacent=FALSE
|
||||
MiscSearchDialogOpacity=100
|
||||
MiscShowUnsafePasteDialog=TRUE
|
||||
FontAllowBold=FALSE
|
||||
|
24
INSTALL.md
24
INSTALL.md
|
@ -35,6 +35,30 @@
|
|||
|
||||
## Installing Chicago95
|
||||
|
||||
|
||||
### Automated Install
|
||||
|
||||
Chicago 95 comes with an automated installer. Run the `installer.py` python script to walk through a guided install of Chicago 95.
|
||||
|
||||
<p align="center">
|
||||
<img src="Screenshots/installer/installer_01.png" alt="Chicago95 Desktop"/>
|
||||
</p>
|
||||
|
||||
Select components:
|
||||
<p align="center">
|
||||
<img src="Screenshots/installer/installer_02.png" alt="Chicago95 Desktop"/>
|
||||
</p>
|
||||
|
||||
Select customization options:
|
||||
<p align="center">
|
||||
<img src="Screenshots/installer/installer_03.png" alt="Chicago95 Desktop"/>
|
||||
</p>
|
||||
|
||||
Complete:
|
||||
<p align="center">
|
||||
<img src="Screenshots/installer/installer_04.png" alt="Chicago95 Desktop"/>
|
||||
</p>
|
||||
|
||||
The following installation steps will require that you enable the `view hidden folders` option in your file manager to see hidden files.
|
||||
|
||||
<a name="install_single"/>
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 530 KiB |
Binary file not shown.
After Width: | Height: | Size: 36 KiB |
Binary file not shown.
After Width: | Height: | Size: 31 KiB |
|
@ -0,0 +1,502 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
import gi
|
||||
import gc
|
||||
gi.require_version('Gtk', '3.0')
|
||||
from gi.repository import Gtk, Gdk, GLib
|
||||
import os
|
||||
import subprocess
|
||||
import time
|
||||
|
||||
from pathlib import Path
|
||||
from pprint import pprint
|
||||
import shutil
|
||||
|
||||
|
||||
UI_FILE = "installer.glade"
|
||||
|
||||
running_folder = os.path.dirname(os.path.abspath(__file__))
|
||||
|
||||
assets = "/Extras/"
|
||||
|
||||
#HOME_FOLDER = '/home/phil/Chicago95/Cursors/'
|
||||
|
||||
|
||||
class InstallGUI:
|
||||
def __init__(self):
|
||||
self.set_style()
|
||||
self.builder = Gtk.Builder()
|
||||
self.builder.add_from_file(running_folder + assets + UI_FILE)
|
||||
self.builder.connect_signals(self)
|
||||
self.get_sizes()
|
||||
self.set_options()
|
||||
window = self.builder.get_object('main window')
|
||||
#window.connect('delete-event', lambda x,y: Gtk.main_quit())
|
||||
self.window_installer = self.builder.get_object('installer')
|
||||
self.window_installer.connect('delete-event', lambda x,y: Gtk.main_quit())
|
||||
self.progress_window = self.builder.get_object('progress')
|
||||
self.progress_window.connect('delete-event', lambda x,y: Gtk.main_quit())
|
||||
window.show_all()
|
||||
self.window_installer.show_all()
|
||||
|
||||
def set_style(self):
|
||||
# From https://gist.github.com/carlos-jenkins/8923124
|
||||
provider = Gtk.CssProvider()
|
||||
provider.load_from_path(running_folder + "/Theme/Chicago95/gtk-3.24/gtk.css")
|
||||
screen = Gdk.Display.get_default_screen(Gdk.Display.get_default())
|
||||
# I was unable to found instrospected version of this
|
||||
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION = 600
|
||||
Gtk.StyleContext.add_provider_for_screen( screen, provider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION )
|
||||
|
||||
def on_window_destroy(self, window):
|
||||
print("closing window")
|
||||
Gtk.main_quit()
|
||||
return False
|
||||
|
||||
def folder_size(self, path='.'):
|
||||
return int(subprocess.check_output(['du','-sk', path]).split()[0].decode('utf-8'))
|
||||
|
||||
def get_sizes(self):
|
||||
# Get sizes
|
||||
statvfs = os.statvfs(running_folder)
|
||||
statvfs.f_frsize * statvfs.f_blocks # Size of filesystem in bytes
|
||||
statvfs.f_frsize * statvfs.f_bfree # Actual number of free bytes
|
||||
self.available_kb = (statvfs.f_frsize * statvfs.f_bavail) / 1024
|
||||
self.theme_size_kb = self.folder_size(running_folder+"/Theme")
|
||||
self.icons_size_kb = self.folder_size(running_folder+"/Icons")
|
||||
self.cursors_size_kb = self.folder_size(running_folder+"/Cursors")
|
||||
self.background_size_kb = 0
|
||||
self.sounds_size_kb = self.folder_size(running_folder+"/sounds")
|
||||
self.fonts_size_kb = self.folder_size(running_folder+"/Fonts")
|
||||
self.total_size_kb = (self.theme_size_kb + self.icons_size_kb + self.cursors_size_kb +
|
||||
self.background_size_kb + self.sounds_size_kb + self.fonts_size_kb)
|
||||
def set_options(self):
|
||||
self.install_theme = True
|
||||
self.install_icons = True
|
||||
self.install_cursors = True
|
||||
self.install_background = True
|
||||
self.install_sounds = True
|
||||
self.install_fonts = True
|
||||
self.thunar = True
|
||||
self.terminal_colors = True
|
||||
self.bash = True
|
||||
self.zsh = False
|
||||
self.panel = True
|
||||
|
||||
def next_clicked(self, button):
|
||||
stack = self.builder.get_object('stack')
|
||||
current_page = stack.get_visible_child_name()
|
||||
next_button = self.builder.get_object('next')
|
||||
if next_button.get_label() == "Install":
|
||||
self.install_chicago95()
|
||||
return
|
||||
|
||||
if next_button.get_label() == "Finish":
|
||||
print("Install completed")
|
||||
Gtk.main_quit()
|
||||
return False
|
||||
|
||||
if current_page == 'page_welcome':
|
||||
#component_page = self.builder.get_object('page_components')
|
||||
component_page = stack.get_child_by_name('page_components')
|
||||
back_button = self.builder.get_object('back')
|
||||
back_button.set_sensitive(True)
|
||||
|
||||
# Get the labels
|
||||
self.theme_size = self.builder.get_object('theme size')
|
||||
self.icons_size = self.builder.get_object('icons size')
|
||||
self.cursors_size = self.builder.get_object('cursors size')
|
||||
self.background_size = self.builder.get_object('background size')
|
||||
self.sounds_size = self.builder.get_object('sound size')
|
||||
self.fonts_size = self.builder.get_object('font size')
|
||||
self.remaining_size = self.builder.get_object('remaining size')
|
||||
self.total_size = self.builder.get_object('total size')
|
||||
# Change the labels
|
||||
self.theme_size.set_label("{} k".format(self.theme_size_kb))
|
||||
self.icons_size.set_label("{} k".format(self.icons_size_kb))
|
||||
self.cursors_size.set_label("{} k".format(self.cursors_size_kb))
|
||||
self.sounds_size.set_label("{} k".format(self.sounds_size_kb))
|
||||
self.fonts_size.set_label("{} k".format(self.fonts_size_kb))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
|
||||
|
||||
else:
|
||||
component_page = stack.get_child_by_name('page_customizations')
|
||||
next_button.set_label("Install")
|
||||
|
||||
stack.set_visible_child(component_page)
|
||||
|
||||
def back_clicked(self, button):
|
||||
stack = self.builder.get_object('stack')
|
||||
current_page = stack.get_visible_child_name()
|
||||
|
||||
if current_page == 'page_components':
|
||||
#component_page = self.builder.get_object('page_components')
|
||||
component_page = stack.get_child_by_name('page_welcome')
|
||||
back_button = self.builder.get_object('back')
|
||||
back_button.set_sensitive(False)
|
||||
|
||||
else:
|
||||
component_page = stack.get_child_by_name('page_components')
|
||||
next_button = self.builder.get_object('next')
|
||||
next_button.set_label("Next")
|
||||
|
||||
stack.set_visible_child(component_page)
|
||||
|
||||
def install_chicago95(self):
|
||||
components = "\tTheme:\t\t{}\n\tIcons:\t\t{}\n\tCursors:\t{}\n\tBackground:\t{}\n\tSounds:\t\t{}\n\tFonts:\t\t{}".format(self.install_theme, self.install_icons, self.install_cursors, self.install_background, self.install_sounds, self.install_fonts)
|
||||
customizations = "\tThunar Graphics:\t{}\n\tChange Terminal Colors:\t{}\n\tSet Bash Prompt:\t{}\n\tSet zsh promt/theme:\t{}\n\tCustomize Panel:\t{}".format(self.thunar, self.terminal_colors, self.bash, self.zsh, self.panel)
|
||||
|
||||
print("Installing Chicago 95 with the following options:\n Components:\n {}\n Customizations:\n {}".format(components, customizations))
|
||||
self.copy_files = {}
|
||||
if self.install_theme:
|
||||
# Does ~/.themes exist?
|
||||
Path(os.path.expanduser("~/.themes")).mkdir(parents=True, exist_ok=True)
|
||||
self.copy_files.update(self.get_files(running_folder+"/Theme/Chicago95/", os.path.expanduser("~/.themes"), "Theme"))
|
||||
self.copy_files["install_theme"] = self.install_theme
|
||||
if self.install_icons:
|
||||
Path(os.path.expanduser("~/.icons")).mkdir(parents=True, exist_ok=True)
|
||||
self.copy_files.update(self.get_files(running_folder+"/Icons/Chicago95/", os.path.expanduser("~/.icons"), "Icons"))
|
||||
self.copy_files["install_icons"] = self.install_icons
|
||||
if self.install_cursors:
|
||||
Path(os.path.expanduser("~/.icons")).mkdir(parents=True, exist_ok=True)
|
||||
self.copy_files.update(self.get_files(running_folder+"/Cursors/", os.path.expanduser("~/.icons"), "Cursors"))
|
||||
self.copy_files["install_cursors"] = self.install_cursors
|
||||
if self.install_background:
|
||||
self.copy_files["install_background"] = self.install_background
|
||||
if self.install_sounds:
|
||||
Path(os.path.expanduser("~/.local/share/sounds")).mkdir(parents=True, exist_ok=True)
|
||||
self.copy_files.update(self.get_files(running_folder+"/sounds/Chicago95/", os.path.expanduser("~/.local/share/sounds"), "sounds"))
|
||||
self.copy_files["install_sounds"] = self.install_sounds
|
||||
if self.install_fonts:
|
||||
Path(os.path.expanduser("~/.fonts")).mkdir(parents=True, exist_ok=True)
|
||||
self.copy_files.update(self.get_files(running_folder+"/Fonts/", os.path.expanduser("~/.fonts"), "Fonts"))
|
||||
self.copy_files["install_fonts"] = self.install_fonts
|
||||
if self.thunar:
|
||||
self.copy_files["thunar"] = self.thunar
|
||||
if self.terminal_colors:
|
||||
Path(os.path.expanduser("~/.local/share/xfce4/terminal/colorschemes")).mkdir(parents=True, exist_ok=True)
|
||||
Path(os.path.expanduser("~/.config/xfce4/terminal/")).mkdir(parents=True, exist_ok=True)
|
||||
self.copy_files[running_folder+"/Extras/Chicago95.theme"] = os.path.expanduser("~/.local/share/xfce4/terminal/colorschemes")
|
||||
self.copy_files[running_folder+"/Extras/terminalrc"] = os.path.expanduser("~/.config/xfce4/terminal/")
|
||||
if os.path.exists(os.path.expanduser("~/.config/xfce4/terminal/terminalrc")):
|
||||
shutil.copyfile(os.path.expanduser("~/.config/xfce4/terminal/terminalrc"),os.path.expanduser("~/.config/xfce4/terminal/backup.terminalrc.chicago95"))
|
||||
self.copy_files["terminal_colors"] = self.terminal_colors
|
||||
if self.bash:
|
||||
self.copy_files["bash"] = self.bash
|
||||
if self.zsh:
|
||||
self.copy_files["zsh"] = self.zsh
|
||||
if self.panel:
|
||||
self.copy_files["panel"] = self.panel
|
||||
|
||||
self.window_installer.hide()
|
||||
self.progress_bar = self.builder.get_object('progress bar')
|
||||
self.progress_label = self.builder.get_object('progress file')
|
||||
first_file_name = list(self.copy_files.keys())[0].split("/")[-1]
|
||||
self.progress_label.set_label(first_file_name)
|
||||
self.progress_bar.set_fraction(0.0)
|
||||
frac = 1.0 / len(self.copy_files)
|
||||
self.progress_window.show_all()
|
||||
self.task = self.install()
|
||||
self.id = GLib.idle_add(self.task.__next__)
|
||||
|
||||
|
||||
def install(self):
|
||||
i = 0.0
|
||||
print("Installing Chicago 95")
|
||||
for from_file in self.copy_files:
|
||||
self.progress_label.set_label(from_file.split("/")[-1])
|
||||
i += 1.0
|
||||
self.progress_bar.set_fraction(i / len(self.copy_files))
|
||||
# copy action here
|
||||
if isinstance(self.copy_files[from_file], str):
|
||||
if not os.path.isdir(os.path.dirname(self.copy_files[from_file])):
|
||||
Path(os.path.dirname(self.copy_files[from_file])).mkdir(parents=True, exist_ok=True)
|
||||
try:
|
||||
shutil.copy(from_file, self.copy_files[from_file], follow_symlinks=False)
|
||||
except FileExistsError:
|
||||
pass # We need to do this if we're overwritting the theme cause of symlinks
|
||||
else:
|
||||
if from_file == "install_theme" and self.copy_files["install_theme"]:
|
||||
print("Enabling Theme in XFCE4")
|
||||
self.xfconf_query('xsettings', '/Net/ThemeName', "Chicago95")
|
||||
self.xfconf_query('xfwm4', '/general/theme', "Chicago95")
|
||||
self.xfconf_query('xfwm4', '/general/title_font', "Sans Bold 8")
|
||||
self.xfconf_query("xfwm4","/general/shadow_delta_height","0")
|
||||
self.xfconf_query("xfwm4","/general/shadow_delta_width","0")
|
||||
self.xfconf_query("xfwm4","/general/shadow_delta_x","0")
|
||||
self.xfconf_query("xfwm4","/general/shadow_delta_y","-3")
|
||||
self.xfconf_query("xfwm4","/general/shadow_opacity","50")
|
||||
self.xfconf_query("xfwm4","/general/show_dock_shadow","false")
|
||||
self.xfconf_query("xfwm4","/general/show_frame_shadow","false")
|
||||
self.xfconf_query("xfwm4","/general/show_popup_shadow","false")
|
||||
self.xfconf_query("xfwm4","/general/title_shadow_active","false")
|
||||
self.xfconf_query("xfwm4","/general/title_shadow_inactive","false")
|
||||
|
||||
elif from_file == "install_icons" and self.copy_files["install_icons"]:
|
||||
print("Enabling Icons in XFCE4")
|
||||
self.xfconf_query('xsettings', '/Net/FallbackIconTheme', 'Adwaita')
|
||||
self.xfconf_query('xsettings', '/Net/IconThemeName', "Chicago95")
|
||||
self.xfconf_query('xfce4-desktop','/desktop-icons/file-icons/show-filesystem', 'true')
|
||||
self.xfconf_query('xfce4-desktop','/desktop-icons/file-icons/show-home', 'true')
|
||||
self.xfconf_query('xfce4-desktop','/desktop-icons/file-icons/show-trash','true')
|
||||
elif from_file == "install_background" and self.copy_files["install_background"]:
|
||||
print("Changing background")
|
||||
r = "{:6f}".format(0/255)
|
||||
g = "{:6f}".format(128/255)
|
||||
b = "{:6f}".format(128/255)
|
||||
a = "1.000000"
|
||||
try:
|
||||
self.xfconf_query('xfce4-desktop', '/backdrop/screen0/monitorVirtual1/workspace0/image-style', "0")
|
||||
args = ['xfconf-query', '-c' ,'xfce4-desktop' ,
|
||||
'-p' ,'/backdrop/screen0/monitorVirtual1/workspace0/rgba1' ,
|
||||
'-t' ,'double' ,'-s' ,'0.000000' ,'-t' ,'double' ,'-s' ,
|
||||
'0.500000' ,'-t' ,'double' ,'-s', '0.500000' ,'-t' ,'double' ,
|
||||
'-s' ,'1.000000']
|
||||
subprocess.check_call(args, stdout=subprocess.DEVNULL)
|
||||
except:
|
||||
self.xfconf_query('xfce4-desktop', '/backdrop/screen0/monitor0/workspace0/image-style', "0")
|
||||
args = ['xfconf-query', '-c' ,'xfce4-desktop' ,
|
||||
'-p' ,'/backdrop/screen0/monitor0/workspace0/rgba1' ,
|
||||
'-t' ,'double' ,'-s' ,'0.000000' ,'-t' ,'double' ,'-s' ,
|
||||
'0.500000' ,'-t' ,'double' ,'-s', '0.500000' ,'-t' ,'double' ,
|
||||
'-s' ,'1.000000']
|
||||
subprocess.check_call(args, stdout=subprocess.DEVNULL)
|
||||
elif from_file == "install_cursors" and self.copy_files["install_cursors"]:
|
||||
print("Enabling Cursors in XFCE4")
|
||||
self.xfconf_query('xsettings', '/Gtk/CursorThemeName', "Chicago95_Cursor_White")
|
||||
elif from_file == "install_sounds" and self.copy_files["install_sounds"]:
|
||||
print("Enabling Sounds in XFCE4")
|
||||
self.xfconf_query('xsettings', '/Net/EnableEventSounds', "true")
|
||||
self.xfconf_query('xsettings', '/Net/EnableInputFeedbackSounds', "true")
|
||||
self.xfconf_query('xsettings', '/Net/SoundThemeName', "Chicago95")
|
||||
elif from_file == "install_fonts" and self.copy_files["install_fonts"]:
|
||||
print("Enabling Fonts in XFCE4")
|
||||
# LOL this is a lie we don't have to do anything
|
||||
elif from_file == "thunar" and self.copy_files["thunar"]:
|
||||
print(os.path.expanduser("~/.themes/Chicago95/gtk-3.24/apps/thunar.css"))
|
||||
if os.path.exists(os.path.expanduser("~/.themes/Chicago95/gtk-3.24/apps/thunar.css")):
|
||||
print("Enabling authenticity in Thunar")
|
||||
shutil.move( os.path.expanduser("~/.themes/Chicago95/gtk-3.24/apps/thunar.css"),os.path.expanduser("~/.themes/Chicago95/gtk-3.24/apps/thunar.css.bak") )
|
||||
fileh = open(os.path.expanduser("~/.themes/Chicago95/gtk-3.24/apps/thunar.css.bak"),"r")
|
||||
nfileh = open(os.path.expanduser("~/.themes/Chicago95/gtk-3.24/apps/thunar.css"),"w")
|
||||
next_line = False
|
||||
for line in fileh:
|
||||
if next_line:
|
||||
if "/*" in line:
|
||||
line = line.replace("/*","")
|
||||
if "c95" in line:
|
||||
line = line.replace("c95", "msw")
|
||||
if "\*" in line:
|
||||
line = line.replace("\*","")
|
||||
next_line = False
|
||||
|
||||
if "You can enable the spin button theme by uncommenting the following!" in line:
|
||||
next_line = True
|
||||
nfileh.write(line)
|
||||
fileh.close()
|
||||
nfileh.close()
|
||||
else:
|
||||
print("Chicago95 theme not installed, cannot modify thunar")
|
||||
elif from_file == "terminal_colors" and self.copy_files["terminal_colors"]:
|
||||
print("Enabling Terminal color theme")
|
||||
# This is done through the copy/paste of terminalrc
|
||||
elif from_file == "bash" and self.copy_files["bash"]:
|
||||
print("Enabling bash prompt")
|
||||
prompts_file = open(running_folder+"/Extras/DOSrc", "r")
|
||||
prompts = prompts_file.read()
|
||||
prompts_file.close()
|
||||
if os.path.exists(os.path.expanduser("~/.bashrc")):
|
||||
shutil.copyfile(os.path.expanduser("~/.bashrc"),os.path.expanduser("~/.config/xfce4/terminal/backup.bashrc.chicago95"))
|
||||
bashrc_out = open(os.path.expanduser("~/.bashrc"), "a")
|
||||
bashrc_out.write(prompts)
|
||||
bashrc_out.close()
|
||||
else:
|
||||
bashrc_out = open(os.path.expanduser("~/.bashrc"), "w")
|
||||
bashrc_out.write(prompts)
|
||||
bashrc_out.close()
|
||||
|
||||
elif from_file == "zsh" and self.copy_files["zsh"]:
|
||||
if os.path.exists(os.path.expanduser("~/.oh-my-zsh")):
|
||||
print("Enabling zsh theme/prompt")
|
||||
|
||||
prompts_file = open(running_folder+"/Extras/ZSHDOSrc", "r")
|
||||
prompts = prompts_file.read()
|
||||
prompts_file.close()
|
||||
|
||||
shutil.copyfile(running_folder+"/Extras/Chicago95.zsh-theme", os.path.expanduser("~/.oh-my-zsh/themes"))
|
||||
shutil.move( os.path.expanduser("~/.zshrc"),os.path.expanduser("~/.backup.zshrc.chicago95") )
|
||||
fileh = open(os.path.expanduser("~/.backup.zshrc.chicago95"),"r")
|
||||
nfileh = open(os.path.expanduser("~/.zshrc"),"w")
|
||||
for line in fileh:
|
||||
if "ZSH_THEME" in line:
|
||||
line = "ZSH_THEME=Chicago95"
|
||||
nfileh.write(line)
|
||||
fileh.close()
|
||||
nfileh.close()
|
||||
else:
|
||||
print("Oh my zsh not installed, cannot install theme")
|
||||
elif from_file == "panel" and self.copy_files["panel"]:
|
||||
print("Generating XFCE panel")
|
||||
#xfce4-panel-profiles load Extras/Chicago95_Panel_Preferences.tar.bz2
|
||||
subprocess.check_call(["xfce4-panel-profiles", "load", running_folder+"/Extras/Chicago95_Panel_Preferences.tar.bz2"], stdout=subprocess.DEVNULL)
|
||||
gc.collect()
|
||||
yield True
|
||||
|
||||
stack = self.builder.get_object('stack')
|
||||
stack.set_visible_child(stack.get_child_by_name('page_completed'))
|
||||
self.progress_window.hide()
|
||||
next_button = self.builder.get_object('next')
|
||||
back_button = self.builder.get_object('back')
|
||||
back_button.set_sensitive(False)
|
||||
next_button.set_label("Finish")
|
||||
self.window_installer.show_all()
|
||||
GLib.source_remove(self.id)
|
||||
subprocess.Popen(["mousepad", running_folder+"/Extras/post_install.txt"])
|
||||
yield False
|
||||
|
||||
def xfconf_query(self, channel, prop, new_value):
|
||||
xfconf_query_path = subprocess.check_output(["which", "xfconf-query"]).strip()
|
||||
print("Changing xfconf setting {}/{} to {}".format(channel, prop, new_value))
|
||||
args = [
|
||||
xfconf_query_path,
|
||||
"--channel", channel,
|
||||
"--property", prop,
|
||||
"--set", new_value
|
||||
]
|
||||
subprocess.check_call(args, stdout=subprocess.DEVNULL)
|
||||
|
||||
def cancel_install(self, button):
|
||||
print("cancelling install")
|
||||
Gtk.main_quit()
|
||||
return False
|
||||
|
||||
def get_files(self, from_folder, target_folder, target):
|
||||
theme_files = {}
|
||||
for root, dirs, files in os.walk(from_folder, topdown=False):
|
||||
for name in files:
|
||||
if root[-1] != "/":
|
||||
root = root + "/"
|
||||
|
||||
loc = root.find(target)
|
||||
to_dir = root[loc+len(target):]
|
||||
|
||||
from_file = "{}{}".format(root, name)
|
||||
to_file = "{}{}{}".format(target_folder,to_dir, name)
|
||||
theme_files[from_file] = to_file
|
||||
|
||||
return theme_files
|
||||
|
||||
# Set toggle handling
|
||||
|
||||
def set_install_theme(self, toggle):
|
||||
if self.install_theme:
|
||||
self.install_theme = False
|
||||
self.total_size_kb = self.total_size_kb - self.theme_size_kb
|
||||
self.theme_size.set_label("{} k".format(0))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb - self.theme_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
else:
|
||||
self.install_theme = True
|
||||
self.total_size_kb = self.total_size_kb + self.theme_size_kb
|
||||
self.theme_size.set_label("{} k".format(self.theme_size_kb))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb + self.theme_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
|
||||
|
||||
def set_install_icons(self, toggle):
|
||||
if self.install_icons:
|
||||
self.install_icons = False
|
||||
self.total_size_kb = self.total_size_kb - self.icons_size_kb
|
||||
self.icons_size.set_label("{} k".format(0))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb - self.icons_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
else:
|
||||
self.install_icons = True
|
||||
self.total_size_kb = self.total_size_kb + self.icons_size_kb
|
||||
self.icons_size.set_label("{} k".format(self.icons_size_kb))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb + self.icons_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
|
||||
def set_install_cursors(self, toggle):
|
||||
if self.install_cursors:
|
||||
self.install_cursors = False
|
||||
self.total_size_kb = self.total_size_kb - self.cursors_size_kb
|
||||
self.cursors_size.set_label("{} k".format(0))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb - self.cursors_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
else:
|
||||
self.install_cursors = True
|
||||
self.total_size_kb = self.total_size_kb + self.cursors_size_kb
|
||||
self.cursors_size.set_label("{} k".format(self.cursors_size_kb))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb + self.cursors_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
|
||||
def set_install_background(self, toggle):
|
||||
if self.install_background:
|
||||
self.install_background = False
|
||||
else:
|
||||
self.install_background = True
|
||||
|
||||
def set_install_sounds(self, toggle):
|
||||
if self.install_sounds:
|
||||
self.install_sounds = False
|
||||
self.total_size_kb = self.total_size_kb - self.sounds_size_kb
|
||||
self.sounds_size.set_label("{} k".format(0))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb - self.sounds_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
else:
|
||||
self.install_sounds = True
|
||||
self.total_size_kb = self.total_size_kb + self.sounds_size_kb
|
||||
self.sounds_size.set_label("{} k".format(self.sounds_size_kb))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb + self.sounds_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
|
||||
def set_install_fonts(self, toggle):
|
||||
if self.install_fonts:
|
||||
self.install_fonts = False
|
||||
self.total_size_kb = self.total_size_kb - self.fonts_size_kb
|
||||
self.fonts_size.set_label("{} k".format(0))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb - self.fonts_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
else:
|
||||
self.install_fonts = True
|
||||
self.total_size_kb = self.total_size_kb + self.fonts_size_kb
|
||||
self.fonts_size.set_label("{} k".format(self.fonts_size_kb))
|
||||
self.remaining_size.set_label("{:.0f} k".format(int(self.available_kb - self.total_size_kb + self.fonts_size_kb)))
|
||||
self.total_size.set_label("{} k".format(self.total_size_kb))
|
||||
|
||||
def set_change_thunar(self, toggle):
|
||||
if self.thunar:
|
||||
self.thunar = False
|
||||
else:
|
||||
self.thunar = True
|
||||
|
||||
def set_change_terminal(self, toggle):
|
||||
if self.terminal_colors:
|
||||
self.terminal_colors = False
|
||||
else:
|
||||
self.terminal_colors = True
|
||||
|
||||
def set_change_bash(self, toggle):
|
||||
if self.bash:
|
||||
self.bash = False
|
||||
else:
|
||||
self.bash = True
|
||||
|
||||
def set_change_zsh(self, toggle):
|
||||
if self.zsh:
|
||||
self.zsh = False
|
||||
else:
|
||||
self.zsh = True
|
||||
|
||||
def set_change_panel(self, toggle):
|
||||
if self.panel:
|
||||
self.panel = False
|
||||
else:
|
||||
self.panel = True
|
||||
|
||||
|
||||
app = InstallGUI()
|
||||
Gtk.main()
|
Loading…
Reference in New Issue