first attempt for debian10 Slax

This commit is contained in:
TomasM
2019-10-19 19:02:17 +00:00
parent 7bca13b9a6
commit 32afaf7f89
224 changed files with 3924 additions and 0 deletions
+117
View File
@@ -0,0 +1,117 @@
#!/bin/bash
CWD=$(dirname $(readlink -f $0))
NAME=fluxbox
VERSION=1.3.5
# first install stock version
apt-get update
apt-get install --no-install-recommends --yes \
$NAME \
feh \
compton \
volumeicon-alsa \
murrine-themes \
libnotify4 \
scrot
. ../../cleanup
(cd rootcopy && cp --parents -afr * /)
chown guest.users /home/guest
chown -R guest.users /home/guest/.gtkrc-2.0
chown -R guest.users /home/guest/.config
savechanges /$NAME-stock.sb
cd /
unsquashfs /$NAME-stock.sb
# create user directories
for dir in Desktop Documents Downloads Music Pictures Public Templates Videos; do
mkdir -p /squashfs-root/home/guest/$dir
mkdir -p /squashfs-root/root/$dir
done
chown -R guest.users /squashfs-root/home/guest
# then, we want to patch it to implement window resizing!
# so we will recompile whole package
REBUILD=/tmp/$NAME-rebuild-$$
apt-get update
apt-get --yes build-dep $NAME
mkdir -p $REBUILD
cd $REBUILD
apt-get source $NAME
cd $NAME-$VERSION
cat $CWD/patches/fluxbox-slax.diff > debian/patches/fluxbox-slax.diff
echo fluxbox-slax.diff >> debian/patches/series
dpkg-buildpackage -us -uc
rm -Rf debian/$NAME/DEBIAN
rm -Rf debian/$NAME/usr/share/doc
rm -Rf debian/$NAME/usr/share/images
cp debian/$NAME/usr/bin/fluxbox /squashfs-root/usr/bin
# add xlunch from sources
wget -O /tmp/xlunch.tar.gz https://github.com/Tomas-M/xlunch/archive/v4.5.3.tar.gz
cd /tmp
tar -xf xlunch.tar.gz
cd xlunch-4.5.3
make
cp xlunch /squashfs-root/usr/bin
cp extra/gentriesquick /squashfs-root/usr/bin/xlunch_genquick
mkdir -p /squashfs-root/usr/share/icons/hicolor/48x48/apps/
cp extra/ghost.png /squashfs-root/usr/share/icons/hicolor/48x48/apps/xlunch_ghost.png
# add tray icon launcher
wget -O /tmp/systrayiconlauncher.tar.gz https://github.com/Tomas-M/SystrayIconLauncher/archive/master.tar.gz
cd /tmp
tar -xf systrayiconlauncher.tar.gz
cd SystrayIconLauncher-master
apt-get install --yes libgtk2.0-dev
make
cp systrayicon /squashfs-root/usr/bin
# add gtkdialog
wget -O /tmp/gtkdialog.tar.gz https://github.com/Tomas-M/GTKdialog/archive/master.tar.gz
cd /tmp
tar -xf gtkdialog.tar.gz
cd GTKdialog-master
make
cp gtkdialog /squashfs-root/usr/bin
# battery icon app
cd /tmp
wget https://github.com/valr/cbatticon/archive/1.6.7.tar.gz
tar -xf 1.6.7.tar.gz
cd cbatticon-1.6.7
cp -R /usr/include/glib-2.0/* /usr/include
cp -R /usr/include/gtk-2.0/* /usr/include
apt install --yes libnotify-dev
sed -i "s/WITH_GTK3 = 1/WITH_GTK3 = 0/" Makefile
CFLAGS="-O2 \
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include/ \
-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include/ \
-I/usr/include/gdk-pixbuf-2.0/ \
-I/usr/include/atk-1.0/ \
-I/usr/include/cairo \
-I/usr/include/pango-1.0 \
-I/usr/include/glib-2.0 \
-I/usr/include/gtk-2.0" \
make
cp cbatticon /squashfs-root/usr/bin
dir2sb /squashfs-root /03-desktop.sb
@@ -0,0 +1,97 @@
--- a/src/Window.cc 2013-02-13 05:04:05.000000000 -0500
+++ b/src/Window.cc 2017-11-05 17:31:37.516503305 -0500
@@ -2745,6 +2745,14 @@
m_button_grab_x = x - frame().x() - frame().window().borderWidth();
m_button_grab_y = y - frame().y() - frame().window().borderWidth();
+ // If mouse clicked on the border, start window resize instead of move
+ if (m_button_grab_x <= 0 || m_button_grab_x >= (int)frame().window().width()
+ || m_button_grab_y >= (int)frame().window().height() ) {
+ ReferenceCorner dir = getResizeDirection(m_button_grab_x,m_button_grab_y,EDGEORCORNERRESIZE,frame().window().borderWidth(),frame().window().borderWidth());
+ startResizing(m_button_grab_x, m_button_grab_y, dir);
+ return;
+ }
+
moving = true;
Fluxbox *fluxbox = Fluxbox::instance();
@@ -2752,7 +2760,7 @@
// freely map and unmap the window we're moving.
grabPointer(screen().rootWindow().window(), False, ButtonMotionMask |
ButtonReleaseMask, GrabModeAsync, GrabModeAsync,
- screen().rootWindow().window(), frame().theme()->moveCursor(), CurrentTime);
+ screen().rootWindow().window(), None, CurrentTime);
if (menu().isVisible())
menu().hide();
--- a/src/FbTk/FbDrawable.hh
+++ b/src/FbTk/FbDrawable.hh
@@ -52,7 +52,8 @@ public:
LEFT,
RIGHT,
UP,
- DOWN
+ DOWN,
+ MENU
};
// x, y, width and height define a space within which we're drawing a triangle
--- a/src/ToolFactory.cc 2013-02-13 05:04:05.000000000 -0500
+++ b/src/ToolFactory.cc 2017-10-31 12:11:20.000000000 -0400
@@ -101,6 +101,8 @@
cmd_str += " (workspace=[current])";
}
+ if (name.find("menu") != std::string::npos) cmd_str = "Exec fbappselect";
+
FbTk::RefCount<FbTk::Command<void> > cmd(FbTk::CommandParser<void>::instance().parse(cmd_str));
if (cmd == 0) // we need a command
return 0;
@@ -110,6 +112,9 @@
if (name.find("prev") != std::string::npos)
arrow_type = FbTk::FbDrawable::LEFT;
+ if (name.find("menu") != std::string::npos)
+ arrow_type = FbTk::FbDrawable::MENU;
+
ArrowButton *win = new ArrowButton(arrow_type, parent,
0, 0,
button_size, button_size);
--- a/src/FbTk/FbDrawable.cc 2017-10-19 06:06:08.000000000 -0400
+++ a/src/FbTk/FbDrawable.cc 2017-10-19 06:06:57.013131070 -0400
@@ -96,7 +96,7 @@
if (drawable() == 0 || gc == 0 || width == 0 || height == 0)
return;
- XPoint pts[3];
+ XPoint pts[4];
if (scale < 100) scale = 100; // not bigger than the space allowed
else if (scale > 10000) scale = 10000; // not too small...
@@ -115,6 +115,26 @@
}
switch (type) {
+ case FbTk::FbDrawable::MENU:
+ {
+ int s=7; int m=2; int d=2; int sh=-1; //size margin distance
+ pts[0].x=m+sh; pts[0].y=m+sh; pts[1].x=m+s+sh; pts[1].y=m+sh;
+ pts[2].x=m+s+sh; pts[2].y=m+s+sh; pts[3].x=m+sh; pts[3].y=m+s+sh;
+ fillPolygon(gc, pts, 4, Convex, CoordModeOrigin);
+
+ pts[0].x=m+s+d+sh; pts[0].y=m+sh; pts[1].x=m+s+d+s+sh; pts[1].y=m+sh;
+ pts[2].x=m+s+d+s+sh; pts[2].y=m+s+sh; pts[3].x=m+s+d+sh; pts[3].y=m+s+sh;
+ fillPolygon(gc, pts, 4, Convex, CoordModeOrigin);
+
+ pts[0].x=m+sh; pts[0].y=m+s+d+sh; pts[1].x=m+s+sh; pts[1].y=m+s+d+sh;
+ pts[2].x=m+s+sh; pts[2].y=m+s+d+s+sh; pts[3].x=m+sh; pts[3].y=m+s+d+s+sh;
+ fillPolygon(gc, pts, 4, Convex, CoordModeOrigin);
+
+ pts[0].x=m+s+d+sh; pts[0].y=m+s+d+sh; pts[1].x=m+s+d+s+sh; pts[1].y=m+s+d+sh;
+ pts[2].x=m+s+d+s+sh; pts[2].y=m+s+d+s+sh; pts[3].x=m+s+d+sh; pts[3].y=m+s+d+s+sh;
+ fillPolygon(gc, pts, 4, Convex, CoordModeOrigin);
+ return;
+ }
case FbTk::FbDrawable::LEFT:
// start at the tip
pts[0].x = (width / 2) - (ax / 2); pts[0].y = height / 2;
@@ -0,0 +1,4 @@
Terminal;/usr/share/icons/hicolor/128x128/apps/terminal.png;xterm -title Terminal
Web Browser;/usr/share/icons/hicolor/128x128/apps/chromium.png;chromium
Text Editor;/usr/share/icons/hicolor/128x128/apps/editor.png;leafpad
Calculator;/usr/share/icons/hicolor/128x128/apps/calculator.png;qalculate
@@ -0,0 +1,3 @@
Logout;/usr/share/icons/hicolor/128x128/actions/logout.png;logout
Restart;/usr/share/icons/hicolor/128x128/actions/restart.png;restart
Shut down;/usr/share/icons/hicolor/128x128/actions/shutdown.png;shutdown
@@ -0,0 +1,38 @@
{
"AudioCaptureAllowed": false,
"account_id_migration_state": 2,
"account_tracker_service_last_update": "13154004704520013",
"alternate_error_pages": {
"enabled": false
},
"bookmark_bar": {
"show_on_all_tabs": false
},
"browser": {
"check_default_browser": false,
"has_seen_welcome_page": true,
"show_home_button": false,
"window_placement": {
"bottom": 10,
"left": 10,
"maximized": true,
"right": 10,
"top": 10
}
},
"extensions": {
"theme": {
"use_system": true
}
},
"ntp": {
"most_visited_blacklist": {
"c8e0afd1da1d9e29511240861f795a5a": null,
"eacc8c3ad0b50bd698ef8752d5ee24b6": null
}
},
"safebrowsing": {
"enabled": false,
"scout_group_selected": true
}
}
@@ -0,0 +1 @@
include "/usr/share/themes/MurrinaChrome/gtk-2.0/gtkrc"
@@ -0,0 +1,19 @@
[StatusIcon]
stepsize=5
lmb_slider=false
mmb_mute=false
use_horizontal_slider=false
show_sound_level=false
onclick=xterm -e 'alsamixer'
theme=White Gnome
[Hotkeys]
up_enabled=true
down_enabled=true
mute_enabled=true
up=XF86AudioRaiseVolume
down=XF86AudioLowerVolume
mute=XF86AudioMute
[Alsa]
card=default
@@ -0,0 +1,20 @@
[xarchiver]
preferred_format=0
confirm_deletion=true
sort_filename_content=false
store_output=false
icon_size=0
show_archive_comment=false
show_sidebar=false
show_location_bar=false
preferred_temp_dir=/tmp
allow_sub_dir=0
overwrite=false
full_path=true
touch=false
freshen=false
update=false
store_path=false
recurse=true
solid_archive=false
remove_files=false
@@ -0,0 +1,18 @@
[app] (name=fbrun)
[Position] (WINCENTER) {0 0}
[Layer] {2}
[end]
[app] (name=gtkdialog)
[Position] (WINCENTER) {0 0}
[Layer] {2}
[end]
[app] (name=xlunch)
[DECO] {NONE}
[IconHidden] {yes}
[end]
[app] (name=xterm) {1}
[Position] (WINCENTER) {0 0}
[end]
@@ -0,0 +1,76 @@
session.screen0.slit.maxOver: false
session.screen0.slit.placement: TopLeft
session.screen0.slit.layer: Dock
session.screen0.slit.onhead: 0
session.screen0.slit.acceptKdeDockapps: true
session.screen0.slit.alpha: 255
session.screen0.slit.autoHide: false
session.screen0.menu.alpha: 255
session.screen0.clientMenu.usePixmap: true
session.screen0.tab.placement: TopLeft
session.screen0.tab.width: 64
session.screen0.toolbar.maxOver: false
session.screen0.toolbar.tools: RootMenu, iconbar, systemtray, clock
session.screen0.toolbar.autoHide: false
session.screen0.toolbar.widthPercent: 100
session.screen0.toolbar.alpha: 255
session.screen0.toolbar.visible: true
session.screen0.toolbar.placement: BottomCenter
session.screen0.toolbar.layer: Dock
session.screen0.toolbar.height: 0
session.screen0.toolbar.onhead: 1
session.screen0.tabs.usePixmap: true
session.screen0.tabs.maxOver: true
session.screen0.tabs.intitlebar: true
session.screen0.window.focus.alpha: 255
session.screen0.window.unfocus.alpha: 255
session.screen0.iconbar.usePixmap: true
session.screen0.iconbar.alignment: Left
session.screen0.iconbar.iconTextPadding: 10
session.screen0.iconbar.mode: {static groups} (workspace)
session.screen0.iconbar.iconWidth: 128
session.screen0.titlebar.left:
session.screen0.titlebar.right: Minimize Maximize Close
session.screen0.clickRaises: true
session.screen0.maxIgnoreIncrement: false
session.screen0.workspacewarping: true
session.screen0.colPlacementDirection: TopToBottom
session.screen0.maxDisableMove: false
session.screen0.rowPlacementDirection: LeftToRight
session.screen0.focusNewWindows: true
session.screen0.autoRaise: true
session.screen0.opaqueMove: true
session.screen0.maxDisableResize: false
session.screen0.tabFocusModel: ClickToTabFocus
session.screen0.tooltipDelay: 500
session.screen0.fullMaximization: false
session.screen0.noFocusWhileTypingDelay: 0
session.screen0.strftimeFormat: %H:%M
session.screen0.workspaces: 4
session.screen0.allowRemoteActions: false
session.screen0.focusModel: ClickFocus
session.screen0.windowMenu: /root/.fluxbox/windowmenu
session.screen0.workspaceNames: Workspace 1 Ctrl+F1,Workspace 2 Ctrl+F2,Workspace 3 Ctrl+F3,Workspace 4 Ctrl+F4,
session.screen0.edgeSnapThreshold: 10
session.screen0.showwindowposition: false
session.screen0.defaultDeco: NORMAL
session.screen0.menuDelay: 200
session.screen0.windowPlacement: RowMinOverlapPlacement
session.screen0.focusSameHead: false
session.screen0.workspacewarping: false
session.keyFile: ~/.fluxbox/keys
session.menuFile: ~/.fluxbox/menu
session.styleFile: /usr/share/fluxbox/styles/Slax
session.colorsPerChannel: 4
session.forcePseudoTransparency: true
session.ignoreBorder: false
session.doubleClickInterval: 250
session.appsFile: /root/.fluxbox/apps
session.tabPadding: 0
session.cacheLife: 5
session.cacheMax: 200
session.styleOverlay: /root/.fluxbox/overlay
session.autoRaiseDelay: 250
session.slitlistFile: /root/.fluxbox/slitlist
session.tabsAttachArea: Window
session.configVersion: 13
@@ -0,0 +1 @@
en
@@ -0,0 +1,139 @@
# click on the desktop to get menus
OnDesktop Mouse1 :MacroCmd {WindowMenu} {HideMenus}
OnDesktop Mouse2 :WorkspaceMenu
OnDesktop Mouse3 :RootMenu
# scroll on the desktop to change workspaces
#OnDesktop Mouse4 :PrevWorkspace
#OnDesktop Mouse5 :NextWorkspace
# scroll on the toolbar to change current window
#OnToolbar Mouse4 :PrevWindow {static groups} (iconhidden=no)
#OnToolbar Mouse5 :NextWindow {static groups} (iconhidden=no)
# alt + left/right click to move/resize a window
OnWindow Mod1 Mouse1 :MacroCmd {Raise} {Focus} {StartMoving}
OnWindowBorder Move1 :StartMoving
OnWindow Mod1 Mouse3 :MacroCmd {Raise} {Focus} {StartResizing NearestCorner}
OnLeftGrip Move1 :StartResizing bottomleft
OnRightGrip Move1 :StartResizing bottomright
# alt + middle click to lower the window
OnWindow Mod1 Mouse2 :Lower
# control-click a window's titlebar and drag to attach windows
OnTitlebar Control Mouse1 :StartTabbing
# double click on the titlebar to shade
OnTitlebar Double Mouse1 :Maximize
# left click on the titlebar to move the window
OnTitlebar Mouse1 :MacroCmd {Raise} {Focus} {ActivateTab} {StartMoving}
OnTitlebar Move1 :StartMoving
# middle click on the titlebar to lower
OnTitlebar Mouse2 :Lower
# right click on the titlebar for a menu of options
OnTitlebar Mouse3 :WindowMenu
# alt-tab
Mod1 Tab :NextWindow {groups} (workspace=[current])
Mod1 Shift Tab :PrevWindow {groups} (workspace=[current])
# cycle through tabs in the current window
Mod4 Tab :NextTab
Mod4 Shift Tab :PrevTab
# go to a specific tab in the current window
Mod4 1 :Tab 1
Mod4 2 :Tab 2
Mod4 3 :Tab 3
Mod4 4 :Tab 4
Mod4 5 :Tab 5
Mod4 6 :Tab 6
Mod4 7 :Tab 7
Mod4 8 :Tab 8
Mod4 9 :Tab 9
# open a terminal
Mod1 F1 :Exec xterm
# open a dialog to run programs
Mod1 F2 :Exec fbappselect
# volume settings, using common keycodes
# if these don't work, use xev to find out your real keycodes
176 :Exec amixer sset Master,0 1+
174 :Exec amixer sset Master,0 1-
160 :Exec amixer sset Master,0 toggle
# current window commands
Mod1 F4 :Close
Mod1 F5 :Kill
Mod1 F9 :Minimize
Mod1 F10 :Maximize
Mod1 F11 :Fullscreen
# open the window menu
Mod1 space :WindowMenu
# exit fluxbox
Control Mod1 Delete :Exit
# change to previous/next workspace
Control Mod1 Left :PrevWorkspace
Control Mod1 Right :NextWorkspace
# send the current window to previous/next workspace
Mod4 Left :SendToPrevWorkspace
Mod4 Right :SendToNextWorkspace
# send the current window and follow it to previous/next workspace
Control Mod4 Left :TakeToPrevWorkspace
Control Mod4 Right :TakeToNextWorkspace
# change to a specific workspace
Control F1 :Workspace 1
Control F2 :Workspace 2
Control F3 :Workspace 3
Control F4 :Workspace 4
Control F5 :Workspace 5
Control F6 :Workspace 6
Control F7 :Workspace 7
Control F8 :Workspace 8
Control F9 :Workspace 9
Control F10 :Workspace 10
Control F11 :Workspace 11
Control F12 :Workspace 12
# send the current window to a specific workspace
Mod4 F1 :SendToWorkspace 1
Mod4 F2 :SendToWorkspace 2
Mod4 F3 :SendToWorkspace 3
Mod4 F4 :SendToWorkspace 4
Mod4 F5 :SendToWorkspace 5
Mod4 F6 :SendToWorkspace 6
Mod4 F7 :SendToWorkspace 7
Mod4 F8 :SendToWorkspace 8
Mod4 F9 :SendToWorkspace 9
Mod4 F10 :SendToWorkspace 10
Mod4 F11 :SendToWorkspace 11
Mod4 F12 :SendToWorkspace 12
# send the current window and change to a specific workspace
Control Mod4 F1 :TakeToWorkspace 1
Control Mod4 F2 :TakeToWorkspace 2
Control Mod4 F3 :TakeToWorkspace 3
Control Mod4 F4 :TakeToWorkspace 4
Control Mod4 F5 :TakeToWorkspace 5
Control Mod4 F6 :TakeToWorkspace 6
Control Mod4 F7 :TakeToWorkspace 7
Control Mod4 F8 :TakeToWorkspace 8
Control Mod4 F9 :TakeToWorkspace 9
Control Mod4 F10 :TakeToWorkspace 10
Control Mod4 F11 :TakeToWorkspace 11
Control Mod4 F12 :TakeToWorkspace 12
Print :Exec fbprintscreen
@@ -0,0 +1 @@
fbsetroot|-foreground #7790aa -solid #7790aa|style|:0.0
@@ -0,0 +1,68 @@
[begin] (Desktop menu)
[exec] (Terminal) { fbstartupnotify && xterm -ls }
[exec] (File Manager) { fbstartupnotify && pcmanfm }
[exec] (Web Browser) { fbstartupnotify && fbliveapp chromium }
[exec] (Text Editor) { fbstartupnotify && leafpad }
[exec] (Calculator) { fbstartupnotify && qalculate }
[exec] (Network Manager) { fbstartupnotify && wicd-manager }
[exec] (Run) { fbappselect }
[separator]
[workspaces] (Workspaces ...)
[submenu] (Screen resolution ...) {}
[include] (~/.fluxbox/menu_resolution)
[end]
[submenu] (Keyboard layout ...) {}
[exec] (Czech) { fbsetkb cz } </usr/share/icons/locolor/16x16/flags/flag_czech_republic.png>
[exec] (English) { fbsetkb us } </usr/share/icons/locolor/16x16/flags/flag_usa.png>
[exec] (French) { fbsetkb fr } </usr/share/icons/locolor/16x16/flags/flag_france.png>
[exec] (German) { fbsetkb de } </usr/share/icons/locolor/16x16/flags/flag_germany.png>
[exec] (Italian) { fbsetkb it } </usr/share/icons/locolor/16x16/flags/flag_italy.png>
[exec] (Polish) { fbsetkb pl } </usr/share/icons/locolor/16x16/flags/flag_poland.png>
[exec] (Portuguese) { fbsetkb pt } </usr/share/icons/locolor/16x16/flags/flag_portugal.png>
[exec] (Russian) { fbsetkb ru } </usr/share/icons/locolor/16x16/flags/flag_russia.png>
[exec] (Slovak) { fbsetkb sk } </usr/share/icons/locolor/16x16/flags/flag_slovakia.png>
[exec] (Spanish) { fbsetkb es } </usr/share/icons/locolor/16x16/flags/flag_spain.png>
[exec] (Ukrainian) { fbsetkb ua } </usr/share/icons/locolor/16x16/flags/flag_ukraine.png>
[submenu] (Other ...) {}
[exec] (Afghani) { fbsetkb af }
[exec] (Albanian) { fbsetkb al }
[exec] (Arabic [Morocco]) { fbsetkb ma }
[exec] (Arabic) { fbsetkb ara }
[exec] (Armenian) { fbsetkb am }
[exec] (Azerbaijani) { fbsetkb az }
[exec] (Belarusian) { fbsetkb by }
[exec] (Belgian) { fbsetkb be }
[exec] (Berber [Algeria]) { fbsetkb dz }
[exec] (Bosnian) { fbsetkb ba }
[exec] (Brasil) { fbsetkb br }
[exec] (Bulgarian) { fbsetkb bg }
[exec] (Croatian) { fbsetkb hr }
[exec] (Danish) { fbsetkb dk }
[exec] (Dutch) { fbsetkb nl }
[exec] (English [Australian]) { fbsetkb au }
[exec] (Estonian) { fbsetkb ee }
[exec] (Finnish) { fbsetkb fi }
[exec] (French [Canada]) { fbsetkb ca }
[exec] (German [Austria]) { fbsetkb at }
[exec] (German [Switzerland]) { fbsetkb ch }
[exec] (Greek) { fbsetkb gr }
[exec] (Hebrew) { fbsetkb il }
[exec] (Hungarian) { fbsetkb hu }
[exec] (Icelandic) { fbsetkb is }
[exec] (Indian) { fbsetkb in }
[exec] (Iraqi) { fbsetkb iq }
[exec] (Irish) { fbsetkb ie }
[exec] (Latvian) { fbsetkb lv }
[exec] (Lithuanian) { fbsetkb lt }
[exec] (Norwegian) { fbsetkb no }
[exec] (Persian) { fbsetkb ir }
[exec] (Romanian) { fbsetkb ro }
[exec] (Serbian) { fbsetkb rs }
[exec] (Slovenian) { fbsetkb si }
[exec] (Swedish) { fbsetkb se }
[exec] (Turkish) { fbsetkb tr }
[end]
[end]
[exec] (Exit / Logout) { fblogout }
[end]
@@ -0,0 +1,2 @@
! The following line will prevent styles from setting the background.
! background: none
@@ -0,0 +1,111 @@
#!/bin/sh
#
# fluxbox startup-script:
#
# Lines starting with a '#' are ignored.
# Change your keymap:
xmodmap "/root/.Xmodmap"
# merge xresource settings
xrdb -merge ~/.Xresources
# set keyboard layout
fbsetkb $(cat ~/.fluxbox/kblayout)
# setup bookmarks for file manager
gtk-bookmarks-update
# Share common directories with guest user. This is necessary
# because some apps like chromium must be running under guest
for dir in Desktop Documents Downloads Music Pictures Public Templates Videos; do
if ! mountpoint /root/$dir; then
mount --bind /home/guest/$dir /root/$dir
fi
done
# set background color and big wait mouse cursor
xsetroot -solid '#111111'
xsetroot -xcf /usr/share/icons/breeze_cursors/cursors/watch 37
# disable screen blanking
xset s off
xset -dpms
# volume icon in system tray. Can fail if no soundcard is detected
volumeicon &
# preload compton and fluxbox to cache
(compton --help; fluxbox --help) >/dev/null 2>&1
# Keep black screen for first second while the sound plays.
# This slows startup a little, but it is nicer effect.
SND=/usr/share/sounds/startup.wav
if [ -r $SND ]; then
cat $SND > /dev/null # preload
aplay $SND &
sleep 1 &
SOUNDPID=$!
fi
# Debian-local change:
# - fbautostart has been added with a quick hack to check to see if it
# exists. If it does, we'll start it up by default.
which fbautostart > /dev/null
if [ $? -eq 0 ]; then
fbautostart
fi
# We need to postpone compton after fluxbox starts, else it won't set
# the transparency of toolbar properly... So we check the fehbg file,
# which is created by fluxbox at the phase when it sets background.
# Once the file exist, fluxbox-toolbar is already started
SIGNAL1=~/.fehbg
SIGNAL2=~/.fehbg2
rm -f $SIGNAL1 2>/dev/null
rm -f $SIGNAL2 2>/dev/null
(
while [ ! -e $SIGNAL1 ]; do
sleep 0.1
done
touch $SIGNAL2
(sleep 1; (echo; sleep 10; echo :quit) | xlunch --window --xposition 20 --yposition -30 \
--width 195 --height 53 --noscroll --noprompt --backgroundcolor ffffff00 \
--multiple --desktop --button "/usr/share/fluxbox/styles/Slax/pixmaps/start-here.png;;0,0;fbappselect" & ) &
exec compton --sw-opti -e 0.9 --shadow-exclude 'class_g="xlunch-windowed"' --fade-exclude 'role*="fluxbox-toolbar"' --opacity-rule '70:role*="fluxbox-toolbar"' --no-fading-destroyed-argb -D 5 -c -f -l -2 -t -2 -r 0 -o 1 -z --shadow-exclude 'bounding_shaped'
) &
# We want to run systrayicon only after the volumeicon is started
# So we have to wait until it is visible to xwinfo
# We also wait after background is set and compton is started
(
while [ ! -e $SIGNAL2 ]; do
sleep 0.1
done
rm -f $SIGNAL2
while ! xwininfo -name volumeicon >/dev/null 2>&1 && pgrep volumeicon >/dev/null 2>&1; do
sleep 0.1
done
exec systrayicon --command fblogout --iconfile /usr/share/icons/locolor/16x16/actions/system-shutdown-symbolic.png
) &
# gen screen resolutions to fluxbox menu
xrandr 2>/dev/null | fgrep x | fgrep . | sort -n | tr -s " " | cut -d " " -f 2 \
| sed -r "s:(.*):[exec] (\\1) {fbscreensize \\1}:" > ~/.fluxbox/menu_resolution
# In all cases, wait for the sound sleeper.
# If startup took longer (sound completed already), no extra wait
wait $SOUNDPID
# And last but not least we start fluxbox.
# Because it is the last app you have to run it with ''exec'' before it.
exec fluxbox
@@ -0,0 +1,15 @@
[begin]
[shade]
[stick]
[maximize]
[iconify]
[raise]
[lower]
[settitledialog]
[sendto]
[layer]
[alpha]
[extramenus]
[separator]
[close]
[end]
@@ -0,0 +1 @@
include "/usr/share/themes/MurrinaChrome/gtk-2.0/gtkrc"
@@ -0,0 +1 @@
startfluxbox
@@ -0,0 +1,39 @@
#!/bin/bash
COMMAND=$(
xlunch_genquick 64 --desktop | \
xlunch --border 7% --sideborder 10% --borderratio 100 --sideborderratio 50 \
--background /usr/share/wallpapers/slax_wallpaper.jpg --font DejaVuSans/11 \
--voidclickterminate --iconpadding 40 --textpadding 10 \
--leastmargin 6 --hidemissing --iconsize 64 \
--highlight /usr/share/icons/hicolor/128x128/apps/xlunch_highlight.png \
--outputonly
)
if [ "$COMMAND" = "" ]; then
exit
fi
fbstartupnotify
# if command is a .desktop file, parse it
if [[ "$COMMAND" =~ \.desktop ]]; then
NoTerm="$(cat "$COMMAND" | grep Terminal\\s*= | grep -i "Terminal\\s*=\\s*false")"
COMMAND="$(cat "$COMMAND" | grep Exec\\s*= | head -n 1 | sed -r s/.*=// | sed -r "s/%[^%]+//g")"
fi
cmd="$(echo $COMMAND | sed -r "s/\\s.*//")"
whi="$(which $cmd | head -n 1)"
Xdep=$(ldd $whi | grep libX11)
Ndep=$(ldd $whi | grep libncurses)
WAIT='echo "--------------------------------------------------"; read -n 1 -s -r -p "Command finished. Press any key to close window..."'
if [ "$Ndep" != "" -o "$cmd" = "man" -o "$cmd" = "mc" ]; then
WAIT=""
fi
if [ "$Xdep" = "" -a "$cmd" != "chromium" -a "$cmd" != "wicd-manager" -a "$cmd" != "fbliveapp" -a "$NoTerm" = "" ]; then
exec xterm -ls -e bash --login -c -- "echo $USER@$HOSTNAME:$PWD# '$COMMAND'; $COMMAND; $WAIT"
else
exec $COMMAND
fi
@@ -0,0 +1,83 @@
#!/bin/bash
if [ "$1" = "votecoin" ]; then
NAME="VoteCoin Wallet"
ABOUT="VoteCoin Wallet is a crypto currency wallet,
forked from ZCash, which itslef forked from Bitcoin.
It supports fully anonymous transactions and voting.
Receive free 10 VOT coins for installing the wallet.
In the future, VoteCoin will be used for decision
funding in Slax."
TMP="/tmp/votecoin.tar.gz"
EXECUTABLE="/opt/VoteCoin Wallet-linux-x64/VoteCoin Wallet"
INSTALL="wget -O $TMP 'https://votecoin.site/download.php?os=linux' && tar -xf $TMP -C /opt && rm -f $TMP && apt install --yes libxss1 libgconf-2-4 libnss3"
POSTINSTALL=""
ONLY64=true
fi
if [ "$1" = "vlc" ]; then
NAME="VLC Video Player"
ABOUT="VLC Video Player is a free and open source multimedia player
and framework that plays most multimedia files as well as DVDs,
Audio CDs, CVDs, and various streaming protocols."
EXECUTABLE="/usr/bin/vlc"
INSTALL="apt install --yes vlc"
POSTINSTALL="rm /usr/share/applications/vlc.desktop; mkdir /home/guest/.config/vlc; echo '[qt4]
qt-privacy-ask=0' > /home/guest/.config/vlc/vlcrc;"
GUEST=true
fi
if [ "$1" = "chromium" ]; then
NAME="Chromium Web Browser"
ABOUT="Chromium is a free and open source version of
the famous Chrome browser, developed by Google."
EXECUTABLE="/usr/bin/chromium"
INSTALL="apt install --yes chromium"
POSTINSTALL="rm -f /usr/share/applications/chromium.desktop"
GUEST=true
fi
shift
# ------------------------------------------------
# do not touch anything below this line
# ------------------------------------------------
if [ "$ABOUT" != "" ]; then
ABOUT="$ABOUT
"
fi
if [ "$EXECUTABLE" = "" ]; then
exit
fi
if [ ! -f "$EXECUTABLE" ]; then
if [ $(uname -m) != 'x86_64' -a "$ONLY64" = "true" ]; then
gtkdialog -i /usr/share/icons/gnome/16x16/status/dialog-warning.png -t Error -m "$NAME only works in 64bit version of Slax" -y OK
exit 1
fi
if gtkdialog -i /usr/share/icons/gnome/16x16/status/dialog-question.png -t Question -m "$ABOUT$NAME is not yet installed.
Do you like to download and install it now?" -y Yes -n No; then
xterm -ls -e bash --login -c -- "$INSTALL; $POSTINSTALL"
fi
fi
if [ -f "$EXECUTABLE" ]; then
fbstartupnotify
if [ "$GUEST" = "true" -a "$EUID" -eq 0 ]; then
xhost + >/dev/null 2>/dev/null
exec su -c "$EXECUTABLE "$@"" guest
fi
exec "$EXECUTABLE" "$@"
fi
+31
View File
@@ -0,0 +1,31 @@
#!/bin/bash
COMMAND=$(
xlunch --input /etc/xlunch/logout.dsv --noprompt --border auto --sideborder auto --columns 3 --rows 1 \
--background /usr/share/wallpapers/slax_wallpaper.jpg --font DejaVuSans/11 \
--voidclickterminate --iconpadding 30 --textpadding 10 \
--leastmargin 10 --hidemissing --iconsize 128 \
--highlight /usr/share/icons/hicolor/128x128/apps/xlunch_highlight.png \
--outputonly
)
SND=/usr/share/sounds/shutdown.wav
if [ "$COMMAND" != "" -a -r $SND ]; then
# blank desktop with smooth effect (if compton still running)
xlunch --noprompt --input /dev/null --bc 111111ff &
# play shutdown sound
aplay $SND
fi
if [ "$COMMAND" = "logout" ]; then
killall Xorg
fi
if [ "$COMMAND" = "restart" ]; then
reboot
fi
if [ "$COMMAND" = "shutdown" ]; then
poweroff
fi
@@ -0,0 +1,18 @@
#!/bin/bash
PICTURES=~/Pictures
mkdir -p $PICTURES
cd $PICTURES
# make screenshot
SCREENSHOT=$(scrot -e 'echo $f')
if [ "$SCREENSHOT" = "" ]; then
exit 1
fi
# open screenshot in 2/3 window
read W H X <<< $(xrandr 2>/dev/null | fgrep '*' | tr -s " " | tr "x" " ")
W=$(($W*2/3))
H=$(($H*2/3))
exec feh --geometry $W"x"$H $SCREENSHOT
@@ -0,0 +1,17 @@
#!/bin/bash
SIGNAL=~/.fehbg
rm -f $SIGNAL
OUTPUT=$(xrandr 2>/dev/null | grep -iv disconnected | grep -i 'connected' | head -n 1 | cut -d " " -f 1)
MODE=$1
xrandr --output $OUTPUT --mode $MODE -s $MODE
while [ -e $SIGNAL ]; do
sleep 0.1
done
sleep 1
killall -SIGUSR1 compton
@@ -0,0 +1,4 @@
#!/bin/bash
setxkbmap $1
echo $1 > ~/.fluxbox/kblayout
@@ -0,0 +1,18 @@
#!/bin/bash
CURSORSDIR=/usr/share/icons/breeze_cursors/cursors/
SIZE=16
# Set cursor to wait. As soon as new window is detected, change cursor back
xsetroot -xcf $CURSORSDIR/left_ptr_watch $SIZE
export WINDOWS="$(wmctrl -l)"
(
sleep 0.2
until diff <(echo "$WINDOWS") <(wmctrl -l) | egrep -q "^[>]"; do
sleep 0.5
done
xsetroot -xcf $CURSORSDIR/left_ptr $SIZE
) &
exit 0
@@ -0,0 +1,5 @@
[Desktop Entry]
Icon=terminal
Name=Terminal
Exec=xterm -ls
Terminal=false
@@ -0,0 +1,13 @@
[Desktop Entry]
Version=1.0
Name=Web Browser
GenericName=Web Browser
Exec=fbliveapp chromium %U
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=chromium.png
Categories=Network;WebBrowser;
MimeType=audio/*;image/*;video/*;application/pdf;application/x-pdf;text/html;text/xml;application/xhtml_xml;application/x-mimearchive;x-scheme-handler/http;x-scheme-handler/https;
StartupWMClass=chromium
StartupNotify=true
@@ -0,0 +1,14 @@
[Desktop Entry]
Version=1.0
Name=Image viewer
GenericName=Image viewer
Exec=feh %U
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=none.png
Categories=ImageViewer;
MimeType=image/*;
StartupWMClass=feh
StartupNotify=true
Hidden=true
@@ -0,0 +1,132 @@
[Default Applications]
application/pdf=chromium.desktop;
application/x-pdf=chromium.desktop;
audio/3gpp=chromium.desktop;
audio/ac3=chromium.desktop;
audio/flac=chromium.desktop;
audio/mp4=chromium.desktop;
audio/mpeg=chromium.desktop;
audio/mpegurl=chromium.desktop;
audio/ogg=chromium.desktop;
audio/x-flac=chromium.desktop;
audio/x-gsm=chromium.desktop;
audio/x-it=chromium.desktop;
audio/x-m4a=chromium.desktop;
audio/x-matroska=chromium.desktop;
audio/x-mod=chromium.desktop;
audio/x-mp3=chromium.desktop;
audio/x-mpeg=chromium.desktop;
audio/x-mpegurl=chromium.desktop;
audio/x-pn-wav=chromium.desktop;;
audio/x-tta=chromium.desktop;
audio/x-vorbis=chromium.desktop;
audio/x-vorbis+ogg=chromium.desktop;
audio/x-wav=chromium.desktop;
audio/x-wavpack=chromium.desktop;
audio/x-xm=chromium.desktop;
application/ogg=chromium.desktop;
application/x-extension-m4a=chromium.desktop;
application/x-extension-mp4=chromium.desktop;
application/x-flac=chromium.desktop;
application/x-flash-video=chromium.desktop;
application/x-ogg=chromium.desktop;
image/bmp=feh.desktop;
image/gif=feh.desktop;
image/jpeg=feh.desktop;
image/jpg=feh.desktop;
image/pjpeg=feh.desktop;
image/png=feh.desktop;
image/svg+xml=chromium.desktop;
image/svg+xml-compressed=chromium.desktop;
image/x-bmp=feh.desktop;
image/x-gray=chromium.desktop;
image/x-icb=chromium.desktop;
image/x-ico=chromium.desktop;
image/x-pcx=chromium.desktop;
image/x-png=feh.desktop;
image/x-portable-anymap=chromium.desktop;
image/x-portable-bitmap=chromium.desktop;
image/x-portable-graymap=chromium.desktop;
image/x-portable-pixmap=chromium.desktop;
image/x-xbitmap=chromium.desktop;
image/x-xpixmap=chromium.desktop;
image/vnd.wap.wbmp=chromium.desktop;
image/x-fits=gimp.desktop
image/x-icon=gimp.desktop
image/x-sun-raster=gimp.desktop
image/x-tga=gimp.desktop
image/x-xcf=gimp.desktop
image/x-xwindowdump=gimp.desktop
video/3gpp=chromium.desktop;
video/dv=chromium.desktop;
video/fli=chromium.desktop;
video/flv=chromium.desktop;
video/mp2t=chromium.desktop;
video/mp4=chromium.desktop;
video/mp4v-es=chromium.desktop;
video/mpeg=chromium.desktop;
video/msvideo=chromium.desktop;
video/ogg=chromium.desktop;
video/quicktime=chromium.desktop;
video/vivo=chromium.desktop;
video/vnd.divx=chromium.desktop;
video/vnd.rn-realvideo=chromium.desktop;
video/vnd.vivo=chromium.desktop;
video/webm=chromium.desktop;
video/x-anim=chromium.desktop;
video/x-avi=chromium.desktop;
video/x-flc=chromium.desktop;
video/x-fli=chromium.desktop;
video/x-flic=chromium.desktop;
video/x-flv=chromium.desktop;
video/x-m4v=chromium.desktop;
video/x-matroska=chromium.desktop;
video/x-mpeg=chromium.desktop;
video/x-ogm+ogg=chromium.desktop;
video/x-theora+ogg=chromium.desktop;
application/x-flash-video=chromium.desktop;
text/plain=leafpad.desktop;
text/css=leafpad.desktop;
text/javascript=leafpad.desktop;
text/mathml=leafpad.desktop;
text/x-c++hdr=leafpad.desktop;
text/x-c++src=leafpad.desktop;
text/x-csrc=leafpad.desktop;
text/x-chdr=leafpad.desktop;
text/x-dtd=leafpad.desktop;
text/x-java=leafpad.desktop;
text/x-javascript=leafpad.desktop;
text/x-makefile=leafpad.desktop;
text/x-moc=leafpad.desktop;
text/x-pascal=leafpad.desktop;
text/x-patch=leafpad.desktop;
text/x-perl=leafpad.desktop;
text/x-php=leafpad.desktop;
text/x-python=leafpad.desktop;
text/x-sql=leafpad.desktop;
text/x-tcl=leafpad.desktop;
text/x-tex=leafpad.desktop;
text/xml=leafpad.desktop;
application/javascript=leafpad.desktop;
application/x-cgi=leafpad.desktop;
application/x-javascript=leafpad.desktop;
application/x-perl=leafpad.desktop;
application/x-php=leafpad.desktop;
application/x-python=leafpad.desktop;
application/x-shellscript=leafpad.desktop;
application/xml=leafpad.desktop;
application/xml-dtd=leafpad.desktop;
application/x-bzip=xarchiver.desktop;
application/x-bzip-compressed-tar=xarchiver.desktop;
application/x-gzip=xarchiver.desktop;
application/x-tar=xarchiver.desktop;
application/x-zip=xarchiver.desktop;
application/x-zip-compressed=xarchiver.desktop;
application/zip=xarchiver.desktop;
application/x-compressed-tar=xarchiver.desktop;
application/x-bzip2=xarchiver.desktop;
application/x-bzip2-compressed-tar=xarchiver.desktop;
application/x-lzma-compressed-tar=xarchiver.desktop;
application/x-lzma=xarchiver.desktop;
application/x-xz=xarchiver.desktop;
application/x-xz-compressed-tar=xarchiver.desktop;
@@ -0,0 +1,5 @@
[Desktop Entry]
Icon=videoplayer
Name=Video Player
Exec=fbliveapp vlc
Terminal=false
@@ -0,0 +1,6 @@
[Desktop Entry]
Icon=votecoin
Name=VoteCoin Wallet
Exec=fbliveapp votecoin
Terminal=false
Hidden=true
Binary file not shown.

After

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

@@ -0,0 +1,114 @@
! Slax fluxbox theme
! (c) Tomas Matejicek <www.slax.org>
! common settings
*font: Bitstream Vera Sans-9
background: fullscreen
background.pixmap: /usr/share/wallpapers/slax_wallpaper.jpg
toolbar.justify: left
toolbar.clock.justify: right
window.justify: center
menu.title.justify: center
menu.frame.justify: left
! window
window.focus.backgroundColor: #63b4fb
window.unfocus.backgroundColor: #ebebeb
window.focus.borderColor: #63b4fb
window.unfocus.borderColor: #ebebeb
window.borderWidth: 6
window.handleWidth: 0
! title
window.title.height: 18
window.title.focus: flat solid
window.title.focus.color: #63b4fb
window.label.focus: parentrelative
window.label.focus.textColor: #282828
window.title.unfocus: flat solid
window.title.unfocus.color: #ebebeb
window.label.unfocus: parentrelative
window.label.unfocus.textColor: #282828
! buttons
window.button.focus: flat solid
window.button.focus.color: #63b4fb
window.button.focus.picColor: #282828
window.button.pressed: sunken solid
window.button.pressed.color: #63b4fb
window.button.pressed.picColor: #000000
window.button.unfocus: flat solid
window.button.unfocus.color: #ebebeb
window.button.unfocus.picColor: #282828
window.close.pixmap: closefcs.png
window.close.unfocus.pixmap: closeunfcs.png
window.close.pressed.pixmap: closepr.png
window.iconify.pixmap: minfcs.png
window.iconify.unfocus.pixmap: minunfcs.png
window.iconify.pressed.pixmap: minpr.png
window.maximize.pixmap: maxfcs.png
window.maximize.unfocus.pixmap: maxunfcs.png
window.maximize.pressed.pixmap: maxpr.png
! taskbar
toolbar.height: 18
toolbar.bevelWidth: 0
toolbar.borderWidth: 3
toolbar.borderColor: #222222
toolbar: flat solid
toolbar.color: #222222
toolbar.clock: flat solid
toolbar.clock.color: #222222
toolbar.clock.textColor: white
toolbar.iconbar.empty: flat
toolbar.iconbar.empty.color: #222222
toolbar.iconbar.focused.borderWidth: 15
toolbar.iconbar.focused.borderColor: #222222
toolbar.iconbar.focused: flat
toolbar.iconbar.focused.color: #dddddd
toolbar.iconbar.focused.textColor: #282828
toolbar.iconbar.focused.justify: left
toolbar.iconbar.unfocused.borderWidth: 15
toolbar.iconbar.unfocused.borderColor: #222222
toolbar.iconbar.unfocused: flat
toolbar.iconbar.unfocused.color: #444444
toolbar.iconbar.unfocused.textColor: white
toolbar.iconbar.unfocused.justify: left
toolbar.button: flat solid
toolbar.button.borderWidth: 13
toolbar.button.borderColor: #222222
toolbar.button.color: #222222
toolbar.button.picColor: #61CA00
toolbar.button.pressed: flat solid
! menu
menu.title: flat solid
menu.title.color: #63b4fb
menu.title.textColor: #282828
menu.title.justify: center
menu.bevelWidth: 4
menu.borderWidth: 6
menu.borderColor: #63b4fb
menu.frame: flat solid
menu.frame.disableColor: #999999
menu.frame.color: #ebebeb
menu.frame.textColor: #282828
menu.frame.justify: left
menu.hilite: flat solid
menu.hilite.textColor: #ffffff
menu.hilite.color: #63b4fb
menu.bullet: empty
menu.bullet.position: right
menu.itemHeight: 24
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 543 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 B

@@ -0,0 +1,6 @@
#define command2_width 16
#define command2_height 16
static unsigned char command2_bits[] = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xe7, 0xff, 0xcf, 0xff,
0x9f, 0xff, 0x3f, 0xff, 0x3f, 0xff, 0x9f, 0xff, 0xcf, 0xff, 0xe7, 0xc1,
0xf7, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
Binary file not shown.

After

Width:  |  Height:  |  Size: 536 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 546 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 410 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 547 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 334 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 592 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 394 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 645 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 511 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 536 B

@@ -0,0 +1,438 @@
gtk_color_scheme = "fg_color:#000000\nbg_color:#eeeeee\nbase_color:#FFFFFF\ntext_color:#000000\nselected_bg_color:#63b4fb\nselected_fg_color:#FFFFFF\ntooltip_bg_color:#F5F5C9\ntooltip_fg_color:#000000"
# menu delay
#gtk-menu-popup-delay = 0
# icon sizes
#gtk-icon-sizes = "gtk-menu=16,16:\ngtk-button=16,16:\ngtk-dnd=16,16:\npanel-menu=16,16:\npanel=16,16:\ngtk-dialog=16,16:"
# icon sizes (small toolbar)
# gtk-icon-sizes = "gtk-menu=16,16:\ngtk-button=16,16:\ngtk-dnd=16,16:\npanel-menu=16,16:\npanel=16,16:\ngtk-dialog=16,16:\ngtk-small-toolbar=16,16:\ngtk-large-toolbar=16,16:"
style "murrine-default"
{
########
# Style Properties
########
GtkButton ::child-displacement-x = 1
GtkButton ::child-displacement-y = 1
GtkButton ::default-border = { 0, 0, 0, 0 }
GtkButton ::inner-border = { 5, 5, 5, 5 }
GtkCheckButton ::indicator-size = 14
GtkPaned ::handle-size = 6
GtkRange ::trough-border = 0
GtkRange ::slider-width = 15
GtkRange ::stepper-size = 15
GtkScale ::slider-length = 15
GtkScale ::trough-side-details = 0
GtkScrollbar ::min-slider-length = 30
GtkMenuBar ::internal-padding = 1
GtkExpander ::expander-size = 16
GtkToolbar ::internal-padding = 0
GtkTreeView ::expander-size = 14
GtkTreeView ::vertical-separator = 0
GtkMenu ::horizontal-padding = 1
GtkMenu ::vertical-padding = 1
GtkMenuBar ::shadow_type = GTK_SHADOW_NONE
GtkToolbar ::shadow_type = GTK_SHADOW_NONE
# Glow the tasklist by changing the color, instead of overlaying it with a rectangle
#WnckTasklist ::fade-overlay-rect = 0
xthickness = 1
ythickness = 1
fg[NORMAL] = @fg_color
fg[PRELIGHT] = @fg_color
fg[SELECTED] = @selected_fg_color
fg[ACTIVE] = @fg_color
fg[INSENSITIVE] = darker (@bg_color)
bg[NORMAL] = @bg_color
bg[PRELIGHT] = shade (1.02, @bg_color)
bg[SELECTED] = @selected_bg_color
bg[INSENSITIVE] = @bg_color
bg[ACTIVE] = shade (0.9, @bg_color)
base[NORMAL] = @base_color
base[PRELIGHT] = shade (0.95, @bg_color)
base[ACTIVE] = shade (0.88, @selected_bg_color)
base[SELECTED] = shade (0.89, @selected_bg_color)
base[INSENSITIVE] = @bg_color
text[NORMAL] = @text_color
text[PRELIGHT] = @text_color
text[ACTIVE] = @selected_fg_color
text[SELECTED] = @selected_fg_color
text[INSENSITIVE] = darker (@bg_color)
engine "murrine"
{
animation = TRUE
colorize_scrollbar = FALSE
contrast = 0.65 # 0.8 for less contrast, more than 1.0 for more contrast on borders
glazestyle = 0 # 0 = flat highlight, 1 = curved highlight, 2 = concave style, 3 = top curved highlight, 4 = beryl highlight
gradient_shades = {1.03,1.0,1.0,0.985}
#gradient_shades = {1.09,1.06,1.04,1.01} # default: {1.1,1.0,1.0,1.1}
highlight_shade = 1.0 # set highlight amount for buttons or widgets
lightborder_shade = 1.06 # sets lightborder amount for buttons or widgets
#lightborderstyle = 0 # 0 = lightborder on top side, 1 = lightborder on all sides
listviewheaderstyle = 1 # 0 = flat, 1 = glassy, 2 = raised
listviewstyle = 1 # 0 = nothing, 1 = dotted
menubaritemstyle = 0 # 0 = menuitem look, 1 = button look
menubarstyle = 0 # 0 = flat, 1 = glassy, 2 = gradient, 3 = striped
menuitemstyle = 1 # 0 = flat, 1 = glassy, 2 = striped
menustyle = 0 # 0 = no vertical menu stripe, 1 = display vertical menu stripe
reliefstyle = 0 # 0 = flat, 1 = inset, 2 = shadow
rgba = TRUE # FALSE = disabled, TRUE = enabled
roundness = 0 # 0 = squared, 1 = old default, more will increase roundness
scrollbarstyle = 0 # 0 = nothing, 1 = circles, 2 = handles, 3 = diagonal stripes, 4 = diagonal stripes and handles, 5 = horizontal stripes, 6 = horizontal stripes and handles
sliderstyle = 0 # 0 = nothing added, 1 = handles
stepperstyle = 0 # 0 = standard, 1 = integrated stepper handles, 2 = unknown
toolbarstyle = 0 # 0 = flat, 1 = glassy, 2 = gradient
}
}
style "murrine-wide"
{
xthickness = 2
ythickness = 2
bg[SELECTED] = @selected_bg_color
}
style "murrine-wider"
{
xthickness = 3
ythickness = 3
bg[SELECTED] = @selected_bg_color
}
style "murrine-button" = "murrine-wider"
{
bg[NORMAL] = shade (1.04, @bg_color)
bg[PRELIGHT] = shade (1.06, @bg_color)
bg[ACTIVE] = shade (1.02, @bg_color)
bg[INSENSITIVE] = shade (1.0, @bg_color)
engine "murrine" {
contrast = 0.45
}
}
style "murrine-entry" = "murrine-wider"
{
engine "murrine" {
contrast = 0.35
}
}
style "murrine-notebook"
{
xthickness = 2
ythickness = 2
bg[ACTIVE] = shade (0.99, @bg_color)
bg[NORMAL] = shade (1.03, @bg_color)
bg[SELECTED] = @selected_bg_color
fg[ACTIVE] = shade (0.34, @bg_color)
}
style "murrine-tasklist" = "murrine-wide"
{
}
style "murrine-menu" = "murrine-wider"
{
xthickness = 3
ythickness = 3
bg[NORMAL] = shade (1.18, @bg_color)
}
style "murrine-menu-item" = "murrine-wider"
{
xthickness = 2
ythickness = 3
fg[PRELIGHT] = @selected_fg_color
bg[SELECTED] = shade (0.95, @selected_bg_color)
bg[SELECTED] = shade (0.95, @selected_bg_color)
engine "murrine"
{
roundness = 0
}
}
style "murrine-separator-menu-item"
{
}
style "murrine-treeview"
{
bg[SELECTED] = @selected_bg_color
}
style "murrine-treeview-header" = "murrine-default"
{
bg[NORMAL] = shade (1.06,@bg_color)
bg[PRELIGHT] = shade (1.06,@bg_color)
}
style "murrine-frame-title"
{
fg[NORMAL] = lighter (@fg_color)
}
style "murrine-tooltips" = "murrine-wider"
{
bg[NORMAL] = @tooltip_bg_color
fg[NORMAL] = @tooltip_fg_color
}
style "murrine-progressbar"
{
xthickness = 0
ythickness = 0
fg[PRELIGHT] = @selected_fg_color
bg[NORMAL] = shade (0.98, @bg_color)
bg[SELECTED] = @selected_bg_color
}
style "murrine-statusbar"
{
}
style "murrine-comboboxentry"
{
}
style "murrine-spinbutton"
{
}
style "murrine-scale" = "murrine-button"
{
GtkRange ::slider-width = 15
engine "murrine"
{
roundness = 6
}
}
style "murrine-hscale"
{
}
style "murrine-vscale"
{
}
style "murrine-scrollbar"
{
bg[NORMAL] = shade (1.04, @bg_color)
bg[PRELIGHT] = shade (1.06, @bg_color)
bg[ACTIVE] = shade (1.02, @bg_color)
bg[INSENSITIVE] = shade (1.0, @bg_color)
}
style "murrine-hscrollbar"
{
}
style "murrine-vscrollbar"
{
}
style "murrine-menubar"
{
}
style "murrine-nautilus-location"
{
# bg[NORMAL] = shade (1.0,@selected_bg_color)
# bg[SELECTED] = shade (1.0,@selected_bg_color)
# bg[ACTIVE] = shade (1.0,@selected_bg_color)
}
style "murrine-radiocheck" = "murrine-default"
{
text[NORMAL] = "#FFFFFF"
text[PRELIGHT] = "#FFFFFF"
}
style "panel"
{
fg[NORMAL] = "#FFFFFF"
fg[PRELIGHT] = "#FFFFFF"
fg[ACTIVE] = "#FFFFFF"
bg[NORMAL] = shade (0.4, @bg_color)
bg[ACTIVE] = shade (0.5, @bg_color)
bg[PRELIGHT] = shade (0.56, @bg_color)
engine "murrine" {
contrast = 0.8
}
}
style "smaller-text"
{
font_name = "7"
}
style "handle"
{
bg[NORMAL] = "#232323"
}
#########################################
# Matches
#########################################
# theme radio buttons and checkmarks
class "GtkRadio*" style "murrine-radiocheck"
class "GtkCheck*" style "murrine-radiocheck"
# theme default style is applied to every widget
class "GtkWidget" style "murrine-default"
# Increase the x/ythickness in some widgets
class "GtkToolbar" style "murrine-default"
class "GtkRange" style "murrine-wide"
class "GtkFrame" style "murrine-wide"
class "GtkSeparator" style "murrine-wide"
class "GtkEntry" style "murrine-entry"
class "GtkSpinButton" style "murrine-spinbutton"
class "GtkScale" style "murrine-scale"
class "GtkVScale" style "murrine-vscale"
class "GtkHScale" style "murrine-hscale"
class "GtkScrollbar" style "murrine-scrollbar"
class "GtkVScrollbar" style "murrine-vscrollbar"
class "GtkHScrollbar" style "murrine-hscrollbar"
# General matching following, the order is choosen so that the right styles override each other
# eg. progressbar needs to be more important then the menu match.
# This is not perfect, it could be done better
# (That is modify *every* widget in the notebook, and change those back that
# we really don't want changed)
widget_class "*<GtkNotebook>*<GtkEventBox>" style "murrine-notebook"
widget_class "*<GtkNotebook>*<GtkDrawingArea>" style "murrine-notebook"
widget_class "*<GtkNotebook>*<GtkLayout>" style "murrine-notebook"
widget_class "*<GtkNotebook>*<GtkLabel>" style "murrine-notebook"
widget_class "*<GtkButton>" style "murrine-button"
widget_class "*<GtkNotebook>" style "murrine-notebook"
widget_class "*<GtkStatusbar>*" style "murrine-statusbar"
widget_class "*<GtkComboBoxEntry>*" style "murrine-comboboxentry"
widget_class "*<GtkCombo>*" style "murrine-comboboxentry"
widget_class "*<GtkMenuBar>*" style "murrine-menubar"
widget_class "*<GtkMenu>*" style "murrine-menu"
widget_class "*<GtkMenuItem>*" style "murrine-menu-item"
widget_class "*<GtkSeparatorMenuItem>*" style "murrine-separator-menu-item"
widget_class "*.<GtkFrame>.<GtkLabel>" style "murrine-frame-title"
widget_class "*.<GtkTreeView>*" style "murrine-treeview"
widget_class "*<GtkProgressBar>" style "murrine-progressbar"
# Treeview header
widget_class "*.<GtkTreeView>.<GtkButton>" style "murrine-treeview-header"
widget_class "*.<GtkCTree>.<GtkButton>" style "murrine-treeview-header"
widget_class "*.<GtkList>.<GtkButton>" style "murrine-treeview-header"
widget_class "*.<GtkCList>.<GtkButton>" style "murrine-treeview-header"
# Workarounds for Evolution
widget_class "*.ETable.ECanvas" style "murrine-treeview-header"
widget_class "*.ETree.ECanvas" style "murrine-treeview-header"
# Panel style
class "*Panel*" style "panel"
class "*notif*" style "panel"
class "*Notif*" style "panel"
class "*Tray*" style "panel"
class "*tray*" style "panel"
widget_class "*ToolButton*" style "smaller-text"
widget_class "*Statusbar*" style "smaller-text"
widget_class "*Mail*" style "panel"
widget "*PanelWidget*" style "panel"
widget "*PanelApplet*" style "panel"
class "PanelAppletFrame" style "handle"
# The window of the tooltip is called "gtk-tooltip"
################################
# FIXME:
# This will not work if one embeds eg. a button into the tooltip.
# As far as I can tell right now we will need to rework the theme
# quite a bit to get this working correctly.
# (It will involve setting different priorities, etc.)
################################
widget "gtk-tooltip*" style "murrine-tooltips"
###################################################
# Special cases and work arounds
###################################################
# Special case the nautilus-extra-view-widget
# ToDo: A more generic approach for all applications that have a widget like this.
widget "*.nautilus-extra-view-widget" style : highest "murrine-nautilus-location"
# Work around for http://bugzilla.gnome.org/show_bug.cgi?id=382646
# Note that the work around assumes that the combobox is _not_ in
# appears-as-list mode.
# Similar hack also in the menuitem style.
# This style does not affect GtkComboBoxEntry, it does have an effect
# on comboboxes in appears-as-list mode though.
style "murrine-combobox-text-color-workaround"
{
text[NORMAL] = @fg_color
text[PRELIGHT] = @fg_color
text[SELECTED] = @selected_fg_color
text[ACTIVE] = @fg_color
text[INSENSITIVE] = darker (@bg_color)
}
widget_class "*.<GtkComboBox>.<GtkCellView>" style "murrine-combobox-text-color-workaround"
style "murrine-menuitem-text-is-fg-color-workaround"
{
text[NORMAL] = @fg_color
text[PRELIGHT] = @selected_fg_color
text[SELECTED] = @selected_fg_color
text[ACTIVE] = @fg_color
text[INSENSITIVE] = darker (@bg_color)
}
widget "*.gtk-combobox-popup-menu.*" style "murrine-menuitem-text-is-fg-color-workaround"
# Work around the usage of GtkLabel inside GtkListItems to display text.
# This breaks because the label is shown on a background that is based on the
# base color set.
style "murrine-fg-is-text-color-workaround"
{
fg[NORMAL] = @text_color
fg[PRELIGHT] = @text_color
fg[ACTIVE] = @selected_fg_color
fg[SELECTED] = @selected_fg_color
fg[INSENSITIVE] = darker (@bg_color)
}
widget_class "*<GtkListItem>*" style "murrine-fg-is-text-color-workaround"
# The same problem also exists for GtkCList and GtkCTree
# Only match GtkCList and not the parent widgets, because that would also change the headers.
widget_class "*<GtkCList>" style "murrine-fg-is-text-color-workaround"
Binary file not shown.

After

Width:  |  Height:  |  Size: 369 KiB