]> gitweb.morketsmerke.org Git - immudex-sdk.git/commitdiff
Przesłanie plików do repozytorium. Test budowania SDK
authorxf0r3m <jakubstasinski@protonmail.com>
Wed, 13 Sep 2023 10:55:34 +0000 (12:55 +0200)
committerxf0r3m <jakubstasinski@protonmail.com>
Wed, 13 Sep 2023 10:55:34 +0000 (12:55 +0200)
28 files changed:
README.md [new file with mode: 0644]
files/XTerm [new file with mode: 0644]
files/conkyrc [new file with mode: 0644]
files/hostname [new file with mode: 0644]
files/hosts [new file with mode: 0644]
files/icewm/menu [new file with mode: 0644]
files/icewm/preferences [new file with mode: 0644]
files/icewm/theme [new file with mode: 0644]
files/icewm/toolbar [new file with mode: 0644]
files/lightdm-gtk-greeter.conf [new file with mode: 0644]
files/vimrc [new file with mode: 0644]
files/xinitrc [new file with mode: 0644]
grub/amd64/font.pf2 [new file with mode: 0644]
grub/amd64/grub.cfg [new file with mode: 0644]
grub/i386/font.pf2 [new file with mode: 0644]
grub/i386/grub.cfg [new file with mode: 0644]
images/d13_wallpaper.png [new file with mode: 0644]
images/immudex-sdk.xpm [new file with mode: 0644]
images/immudex_xfce_greeter_logo.png [new file with mode: 0644]
images/lightdm_wallpaper.jpg [new file with mode: 0755]
immudex-build [new file with mode: 0755]
isolinux/amd64/black_screen.png [new file with mode: 0644]
isolinux/amd64/isolinux.cfg [new file with mode: 0644]
isolinux/i386/black_screen.png [new file with mode: 0644]
isolinux/i386/isolinux.cfg [new file with mode: 0644]
tools/immudex-motd2 [new file with mode: 0755]
versions/base.sh [new file with mode: 0644]
versions/template.sh [new file with mode: 0644]

diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..fd943cf
--- /dev/null
+++ b/README.md
@@ -0,0 +1,31 @@
+![Image](https://i.ibb.co/NxtyJ3T/immudex2.png)
+
+# IMMutable DEbian with Xfce - SDK LiveCD
+
+## GNU/LINUX Debian stable (bookworm)
+
+To repozytorium zawiera pliki służące do tworzenia specjalnego obrazu płyty
+dostarczającego SDK do budowania dystrybucji immudex.
+Zawiera ono wiele ciekawych informacji, jednak podstawowe infomacje na temat 
+tej dystrybucji znajdują się pod adresem:
+
+[https://morketsmerke.github.io/articles/immudex/immudex.html](https://morketsmerke.github.io/articles/immudex/immudex.html)
+
+### Tworzenie obrazu płyty SDK:
+  
+  ```
+  $ git clone https://github.com/xf0r3m/immudex-sdk
+  $ cd immudex-sdk
+  $ ./immudex-build --<amd64/i386>
+  ```
+
+### Dodawanie zmian do obrazu płyty:
+
+Aby dołączyć jakiekolwiek zmiany do obrazu płyty należy przed rozpoczęciem
+procesu tworzenia obrazu płyty umieścić modyfikacje, przed poleceniem `tidy` w
+pliku *versions/base.sh*.
+
+### Zastrzeżenia i uznanie autorstwa:
+
+immudex is not affiliated with Debian. Debian is a registered trademark owned 
+by Software in the Public Interest, Inc.
diff --git a/files/XTerm b/files/XTerm
new file mode 100644 (file)
index 0000000..9cccd4b
--- /dev/null
@@ -0,0 +1,2 @@
+xterm*faceName: Monospace
+xterm*faceSize: 10
diff --git a/files/conkyrc b/files/conkyrc
new file mode 100644 (file)
index 0000000..be783cf
--- /dev/null
@@ -0,0 +1,75 @@
+-- Conky, a system monitor https://github.com/brndnmtthws/conky
+--
+-- This configuration file is Lua code. You can write code in here, and it will
+-- execute when Conky loads. You can use it to generate your own advanced
+-- configurations.
+--
+-- Try this (remove the `--`):
+--
+--   print("Loading Conky config")
+--
+-- For more on Lua, see:
+-- https://www.lua.org/pil/contents.html
+
+conky.config = {
+    alignment = 'top_right',
+    background = true,
+    border_width = 1,
+    cpu_avg_samples = 2,
+    default_color = 'red',
+    default_outline_color = 'brown',
+    default_shade_color = 'brown',
+    double_buffer = true,
+    draw_borders = false,
+    draw_graph_borders = true,
+    draw_outline = false,
+    draw_shades = false,
+    extra_newline = false,
+    font = 'DejaVu Sans Mono:size=12',
+    gap_x = 5,
+    gap_y = 0,
+    minimum_height = 5,
+    minimum_width = 5,
+    net_avg_samples = 2,
+    no_buffers = true,
+    out_to_console = false,
+    out_to_ncurses = false,
+    out_to_stderr = false,
+    out_to_x = true,
+    own_window = true,
+       own_window_transparent = true,
+       own_window_argb_visual = true,
+    own_window_class = 'Conky',
+        own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
+    show_graph_range = false,
+    show_graph_scale = false,
+    stippled_borders = 0,
+    update_interval = 1.0,
+    uppercase = false,
+    use_spacer = 'none',
+    use_xft = true,
+}
+
+conky.text = [[
+${color green}Info:$color ${scroll 32 immudex${exec immudex-branch} ${exec immudex-version} - $sysname $nodename $kernel $machine}
+$hr
+${color green}Uptime:$color $uptime
+${color green}Frequency (in MHz):$color $freq
+${color green}Frequency (in GHz):$color $freq_g
+${color green}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
+${color green}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}
+${color green}CPU Usage:$color $cpu% ${cpubar 4}
+${color green}Processes:$color $processes  ${color green}Running:$color $running_processes
+${color green}Battery:$color ${battery}
+$hr
+${color green}File systems:
+ / $color${fs_used /}/${fs_size /} ${fs_bar 6 /}
+${color green}Networking:
+Up:$color ${upspeed} ${color green} - Down:$color ${downspeed}
+$hr
+${color green}Name              PID     CPU%   MEM%
+${color red} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
+${color red} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
+${color red} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
+${color red} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
+]]
diff --git a/files/hostname b/files/hostname
new file mode 100644 (file)
index 0000000..2f1c32b
--- /dev/null
@@ -0,0 +1 @@
+immudex-sdk
diff --git a/files/hosts b/files/hosts
new file mode 100644 (file)
index 0000000..68758ea
--- /dev/null
@@ -0,0 +1,5 @@
+127.0.0.1      localhost
+127.0.1.1      immudex-sdk
+::1            localhost ip6-localhost ip6-loopback
+ff02::1                ip6-allnodes
+ff02::2                ip6-allrouters
diff --git a/files/icewm/menu b/files/icewm/menu
new file mode 100644 (file)
index 0000000..190ca1a
--- /dev/null
@@ -0,0 +1,4 @@
+prog "XTerm" xterm xterm -geometry 80x24
+prog "X File Editor" xfe xfe
+prog "Geany" geany geany
+prog "Mozilla Firefox" ! x-www-browser
diff --git a/files/icewm/preferences b/files/icewm/preferences
new file mode 100644 (file)
index 0000000..a53d840
--- /dev/null
@@ -0,0 +1,1477 @@
+# icewm preferences(2.4.0) - generated by genpref
+
+# This file should be copied to /etc/icewm or $HOME/.icewm/
+# NOTE: All settings are commented out by default.
+# Be sure to uncomment them if you change them!
+
+#  Use a 32-bit visual for alpha blending.
+# Alpha=0 # 0/1
+
+#  Enable event logging for debugging.
+# LogEvents=0 # 0/1
+
+#  Splash image on startup (IceWM.jpg)
+# Splash=""
+
+#  Synchronize X11 for debugging (slow)
+# Synchronize=0 # 0/1
+
+#  Enable tracing for the given modules.
+# Trace=""
+
+#  List of battery names (directories) in /proc/acpi/battery to ignore. Useful when more slots are built-in, but only one battery is used.
+# AcpiIgnoreBatteries=""
+
+#  Command to run for address bar entries.
+# AddressBarCommand=""
+
+#  Allow to switch a window to fullscreen.
+# AllowFullscreen=1 # 0/1
+
+#  Automatically arrange windows when screen size changes.
+# ArrangeWindowsOnScreenSizeChange=1 # 0/1
+
+#  Delay in ms before task bar is hidden.
+# AutoHideDelay=300 # [0-5000]
+
+#  Auto raise windows after delay.
+# AutoRaise=0 # 0/1
+
+#  Delay in ms before windows are auto raised.
+# AutoRaiseDelay=400 # [0-5000]
+
+#  Reload menu files automatically.
+# AutoReloadMenus=1 # 0/1
+
+#  Auto scroll delay in ms.
+# AutoScrollDelay=60 # [0-5000]
+
+#  Auto scroll start delay in ms.
+# AutoScrollStartDelay=500 # [0-5000]
+
+#  Delay in ms before task bar is shown.
+# AutoShowDelay=500 # [0-5000]
+
+#  Delay between power status updates in seconds.
+# BatteryPollingPeriod=10 # [2-3600]
+
+#  Bitmask of buttons that raise the window when pressed.
+# ButtonRaiseMask=1 # [0-255]
+
+#  WM_CLASS to allow runonce for CPUStatusCommand.
+# CPUStatusClassHint="top.XTerm"
+
+#  Combine all CPUs to one.
+# CPUStatusCombine=1 # 0/1
+
+#  Command to run on CPU status.
+# CPUStatusCommand="xterm -name top -title Process\ Status -e top"
+
+#  Show ACPI temperature in CPU status tool tip.
+# CPUStatusShowAcpiTemp=1 # 0/1
+
+#  Show ACPI temperature in CPU status bar.
+# CPUStatusShowAcpiTempInGraph=0 # 0/1
+
+#  Show CPU frequency in CPU status tool tip.
+# CPUStatusShowCpuFreq=1 # 0/1
+
+#  Show RAM usage in CPU status tool tip.
+# CPUStatusShowRamUsage=1 # 0/1
+
+#  Show swap usage in CPU status tool tip.
+# CPUStatusShowSwapUsage=1 # 0/1
+
+#  Center large windows.
+# CenterLarge=0 # 0/1
+
+#  Center maximized windows which can't fit the screen (like terminals)
+# CenterMaximizedWindows=0 # 0/1
+
+#  Center dialogs on owner window.
+# CenterTransientsOnOwner=1 # 0/1
+
+#  Delay in ms before click gets interpreted as drag.
+# ClickMotionDelay=200 # [0-2000]
+
+#  Pointer motion distance before click gets interpreted as drag.
+# ClickMotionDistance=4 # [0-32]
+
+#  Focus windows by clicking.
+# ClickToFocus=1 # 0/1
+
+#  Allow mouse actions on client windows (buggy with some programs)
+# ClientWindowMouseActions=1 # 0/1
+
+#  WM_CLASS to allow runonce for ClockCommand.
+# ClockClassHint="icewm.XClock"
+
+#  Command to run on clock.
+# ClockCommand="xclock -name icewm -title Clock"
+
+#  Confirm logout.
+# ConfirmLogout=1 # 0/1
+
+#  Consider border frames when maximizing horizontally.
+# ConsiderHBorder=0 # 0/1
+
+#  Consider XSizeHints if frame is maximized.
+# ConsiderSizeHintsMaximized=1 # 0/1
+
+#  Consider border frames when maximizing vertically.
+# ConsiderVBorder=0 # 0/1
+
+#  Workspace switches continuously when moving mouse to screen edge.
+# ContinuousEdgeSwitch=1 # 0/1
+
+#  Clock Date format for tooltip (strftime format string)
+# DateFormat="%c"
+
+#  Delay fuzziness in ms, to allow merging of multiple timer timeouts into one for notebook power saving.
+# DelayFuzziness=10 # [0-100]
+
+#  Delay pointer focusing when mouse moves.
+# DelayPointerFocus=1 # 0/1
+
+#  Desktop mouse-button click to show the root menu.
+# DesktopMenuButton=3 # [0-20]
+
+#  Desktop mouse-button click to show the window list.
+# DesktopWinListButton=2 # [0-20]
+
+#  Desktop mouse-button click to show the window list menu.
+# DesktopWinMenuButton=0 # [0-20]
+
+#  Support DockApps (right, left, center, down, high, above, below, desktop, or empty to disable). Control with Ctrl+Mouse.
+# DockApps="right high desktop"
+
+#  Don't rotate the cursor for popup menus.
+# DontRotateMenuPointer=1 # 0/1
+
+#  Use double buffering when redrawing the display.
+# DoubleBuffer=1 # 0/1
+
+#  Resistance in pixels when trying to move windows off the screen (10000 = infinite)
+# EdgeResistance=32 # [0-10000]
+
+#  Workspace switches by moving mouse to left/right screen edge.
+# EdgeSwitch=0 # 0/1
+
+#  Screen edge workspace switching delay in ms.
+# EdgeSwitchDelay=600 # [0-5000]
+
+#  Enable address bar functionality in taskbar.
+# EnableAddressBar=1 # 0/1
+
+#  Change to the workspace of newly focused windows.
+# FocusChangesWorkspace=0 # 0/1
+
+#  Move newly focused windows to current workspace.
+# FocusCurrentWorkspace=0 # 0/1
+
+#  Focus windows when application requests to raise.
+# FocusOnAppRaise=0 # 0/1
+
+#  Focus window when client area clicked.
+# FocusOnClickClient=1 # 0/1
+
+#  Focus normal window when initially mapped.
+# FocusOnMap=1 # 0/1
+
+#  Focus dialog window when initially mapped.
+# FocusOnMapTransient=0 # 0/1
+
+#  Focus dialog window when initially mapped only if parent frame focused.
+# FocusOnMapTransientActive=1 # 0/1
+
+#  Taskbar blink interval (ms) when requesting focus (0 = blinking disabled)
+# FocusRequestFlashInterval=250 # [0-30000]
+
+#  Number of seconds the taskbar app will blink when requesting focus (0 = forever)
+# FocusRequestFlashTime=0 # [0-86400]
+
+#  Span over all available screens if window goes into fullscreen.
+# FullscreenUseAllMonitors=0 # 0/1
+
+#  Manage root window (EXPERIMENTAL - normally enabled!)
+# GrabRootWindow=1 # 0/1
+
+#  Hide window borders if window is maximized.
+# HideBordersMaximized=0 # 0/1
+
+#  Hide title bar when maximized.
+# HideTitleBarWhenMaximized=0 # 0/1
+
+#  Workspace switches by moving mouse to left/right screen edge.
+# HorizontalEdgeSwitch=0 # 0/1
+
+#  Icon search path (colon separated)
+# IconPath="/usr/local/share/icons:/usr/local/share/pixmaps:/usr/share/icons:/usr/share/pixmaps:"
+
+#  Colon separated icon theme list with wildcard support. Minus prefix - can be used to exclude themes.
+# IconThemes="*:-HighContrast"
+
+#  Opens the address bar in the task bar where a command can be typed.
+# KeySysAddressBar="Alt+Ctrl+Space"
+
+#  Rearranges the windows.
+# KeySysArrange="Alt+Shift+F5"
+
+#  Rearranges icons.
+# KeySysArrangeIcons="Alt+Shift+F8"
+
+#  Makes a horizontal cascade of all windows which are maximized vertically.
+# KeySysCascade="Alt+Shift+F4"
+
+#  Hides the task bar.
+# KeySysCollapseTaskBar="Alt+Ctrl+h"
+
+#  Opens the IceWM system dialog in the center of the screen.
+# KeySysDialog="Alt+Ctrl+Del"
+
+#  Hides all windows.
+# KeySysHideAll="Alt+Shift+F11"
+
+#  Activates the IceWM root menu in the lower left corner.
+# KeySysMenu="Ctrl+Esc"
+
+#  Minimizes all windows.
+# KeySysMinimizeAll="Alt+Shift+F9"
+
+#  Unmaps all windows to show the desktop.
+# KeySysShowDesktop="Alt+Ctrl+d"
+
+#  Is like KeySysSwitchNext but only for windows with the same WM_CLASS property as the currently focused window.
+# KeySysSwitchClass="Alt+grave"
+
+#  Works like KeySysSwitchNext but moving in the opposite direction.
+# KeySysSwitchLast="Alt+Shift+Tab"
+
+#  Opens the QuickSwitch popup and/or moves the selector in the QuickSwitch popup.
+# KeySysSwitchNext="Alt+Tab"
+
+#  Tiles all windows from top to bottom maximized horizontally.
+# KeySysTileHorizontal="Alt+Shift+F3"
+
+#  Tiles all windows from left to right maximized vertically.
+# KeySysTileVertical="Alt+Shift+F2"
+
+#  Undoes arrangement.
+# KeySysUndoArrange="Alt+Shift+F7"
+
+#  Shows the window list menu.
+# KeySysWinListMenu=""
+
+#  Posts the system window menu.
+# KeySysWinMenu="Shift+Esc"
+
+#  Give focus to the next window and raise it.
+# KeySysWinNext="Alt+Esc"
+
+#  Give focus to the previous window and raise it.
+# KeySysWinPrev="Alt+Shift+Esc"
+
+#  Opens the IceWM system window list in the center of the screen.
+# KeySysWindowList="Alt+Ctrl+Esc"
+
+#  Goes to workspace 1.
+# KeySysWorkspace1="Alt+Ctrl+1"
+
+#  Goes to workspace 10.
+# KeySysWorkspace10="Alt+Ctrl+0"
+
+#  Takes the active window to workspace 10.
+# KeySysWorkspace10TakeWin="Alt+Ctrl+Shift+0"
+
+#  Goes to workspace 11.
+# KeySysWorkspace11="Alt+Ctrl+bracketleft"
+
+#  Takes the active window to workspace 11.
+# KeySysWorkspace11TakeWin="Alt+Ctrl+Shift+bracketleft"
+
+#  Goes to workspace 12.
+# KeySysWorkspace12="Alt+Ctrl+bracketright"
+
+#  Takes the active window to workspace 12.
+# KeySysWorkspace12TakeWin="Alt+Ctrl+Shift+bracketright"
+
+#  Takes the active window to workspace 1.
+# KeySysWorkspace1TakeWin="Alt+Ctrl+Shift+1"
+
+#  Goes to workspace 2.
+# KeySysWorkspace2="Alt+Ctrl+2"
+
+#  Takes the active window to workspace 2.
+# KeySysWorkspace2TakeWin="Alt+Ctrl+Shift+2"
+
+#  Goes to workspace 3.
+# KeySysWorkspace3="Alt+Ctrl+3"
+
+#  Takes the active window to workspace 3.
+# KeySysWorkspace3TakeWin="Alt+Ctrl+Shift+3"
+
+#  Goes to workspace 4.
+# KeySysWorkspace4="Alt+Ctrl+4"
+
+#  Takes the active window to workspace 4.
+# KeySysWorkspace4TakeWin="Alt+Ctrl+Shift+4"
+
+#  Goes to workspace 5.
+# KeySysWorkspace5="Alt+Ctrl+5"
+
+#  Takes the active window to workspace 5.
+# KeySysWorkspace5TakeWin="Alt+Ctrl+Shift+5"
+
+#  Goes to workspace 6.
+# KeySysWorkspace6="Alt+Ctrl+6"
+
+#  Takes the active window to workspace 6.
+# KeySysWorkspace6TakeWin="Alt+Ctrl+Shift+6"
+
+#  Goes to workspace 7.
+# KeySysWorkspace7="Alt+Ctrl+7"
+
+#  Takes the active window to workspace 7.
+# KeySysWorkspace7TakeWin="Alt+Ctrl+Shift+7"
+
+#  Goes to workspace 8.
+# KeySysWorkspace8="Alt+Ctrl+8"
+
+#  Takes the active window to workspace 8.
+# KeySysWorkspace8TakeWin="Alt+Ctrl+Shift+8"
+
+#  Goes to workspace 9.
+# KeySysWorkspace9="Alt+Ctrl+9"
+
+#  Takes the active window to workspace 9.
+# KeySysWorkspace9TakeWin="Alt+Ctrl+Shift+9"
+
+#  Goes to the previous workspace.
+# KeySysWorkspaceLast="Alt+Ctrl+Down"
+
+#  Takes the active window to the previous workspace.
+# KeySysWorkspaceLastTakeWin="Alt+Ctrl+Shift+Down"
+
+#  Goes one workspace to the right.
+# KeySysWorkspaceNext="Alt+Ctrl+Right"
+
+#  Takes the active window one workspace to the right.
+# KeySysWorkspaceNextTakeWin="Alt+Ctrl+Shift+Right"
+
+#  Goes one workspace to the left.
+# KeySysWorkspacePrev="Alt+Ctrl+Left"
+
+#  Takes the active window one workspace to the left.
+# KeySysWorkspacePrevTakeWin="Alt+Ctrl+Shift+Left"
+
+#  Move the Task Bar button of the current window right.
+# KeyTaskBarMoveNext=""
+
+#  Move the Task Bar button of the current window left.
+# KeyTaskBarMovePrev=""
+
+#  Switch to the next window in the Task Bar.
+# KeyTaskBarSwitchNext=""
+
+#  Switch to the previous window in the Task Bar.
+# KeyTaskBarSwitchPrev=""
+
+#  Moves the active window to the top middle of the screen.
+# KeyWinArrangeC="Ctrl+Alt+KP_5"
+
+#  Moves the active window to the middle right of the screen.
+# KeyWinArrangeE="Ctrl+Alt+KP_6"
+
+#  Moves the active window to the top middle of the screen.
+# KeyWinArrangeN="Ctrl+Alt+KP_8"
+
+#  Moves the active window to the top right of the screen.
+# KeyWinArrangeNE="Ctrl+Alt+KP_9"
+
+#  Moves the active window to the top left corner of the screen.
+# KeyWinArrangeNW="Ctrl+Alt+KP_7"
+
+#  Moves the active window to the bottom middle of the screen.
+# KeyWinArrangeS="Ctrl+Alt+KP_2"
+
+#  Moves the active window to the bottom right of the screen.
+# KeyWinArrangeSE="Ctrl+Alt+KP_3"
+
+#  Moves the active window to the bottom left of the screen.
+# KeyWinArrangeSW="Ctrl+Alt+KP_1"
+
+#  Moves the active window to the middle left of the screen.
+# KeyWinArrangeW="Ctrl+Alt+KP_4"
+
+#  Closes the active window.
+# KeyWinClose="Alt+F4"
+
+#  Maximizes the active window without borders.
+# KeyWinFullscreen="Alt+F11"
+
+#  Hides the active window.
+# KeyWinHide="Alt+Shift+F12"
+
+#  Lowers the window which currently has input focus.
+# KeyWinLower="Alt+F3"
+
+#  Maximizes the active window with borders.
+# KeyWinMaximize="Alt+F10"
+
+#  Maximizes the active window horizontally.
+# KeyWinMaximizeHoriz=""
+
+#  Maximizes the active window vertically.
+# KeyWinMaximizeVert="Alt+Shift+F10"
+
+#  Posts the window menu.
+# KeyWinMenu="Alt+Space"
+
+#  Iconifies the active window.
+# KeyWinMinimize="Alt+F9"
+
+#  Starts movement of the active window.
+# KeyWinMove="Alt+F7"
+
+#  Switches focus to the next window.
+# KeyWinNext="Alt+F6"
+
+#  Makes the active window occupy all work spaces.
+# KeyWinOccupyAll="Alt+F2"
+
+#  Switches focus to the previous window.
+# KeyWinPrev="Alt+Shift+F6"
+
+#  Raises the window which currently has input focus.
+# KeyWinRaise="Alt+F1"
+
+#  Restores the active window to its visible state.
+# KeyWinRestore="Alt+F5"
+
+#  Rolls up the active window.
+# KeyWinRollup="Alt+F12"
+
+#  Starts resizing of the active window.
+# KeyWinSize="Alt+F8"
+
+#  Smart place the active window.
+# KeyWinSmartPlace="Ctrl+Alt+Shift+KP_5"
+
+#  Add a keyboard layout.
+# KeyboardLayouts=""
+
+#  Let the Dock layer limit the workspace (incompatible with GNOME Panel)
+# LimitByDockLayer=0 # 0/1
+
+#  Limit position of windows to screen.
+# LimitPosition=1 # 0/1
+
+#  Limit size of windows to screen.
+# LimitSize=1 # 0/1
+
+#  Command to lock display/screensaver.
+LockCommand="xscreensaver-command -lock"
+
+#  Command to cancel logout.
+# LogoutCancelCommand=""
+
+#  Command to start logout.
+# LogoutCommand=""
+
+#  Lower the active window when clicked again.
+# LowerOnClickWhenRaised=0 # 0/1
+
+#  Colon separated paths of your mailboxes, otherwise $MAILPATH or $MAIL is used.
+# MailBoxPath=""
+
+#  Delay between new-mail checks in seconds.
+# MailCheckDelay=30 # [0-86400]
+
+#  WM_CLASS to allow runonce for MailCommand.
+# MailClassHint="mutt.XTerm"
+
+#  Command to run on mailbox.
+# MailCommand="xterm -name mutt -e mutt"
+
+#  Windows initially placed manually by user.
+# ManualPlacement=0 # 0/1
+
+#  Put new windows on top even if not focusing them.
+# MapInactiveOnTop=1 # 0/1
+
+#  Delay in ms before activating menu items.
+# MenuActivateDelay=40 # [0-5000]
+
+#  Maximal width of popup menus,  2/3 of the screen's width if set to zero.
+# MenuMaximalWidth=0 # [0-16384]
+
+#  Menus track mouse even with no mouse buttons held.
+# MenuMouseTracking=0 # 0/1
+
+#  Place new mini-icons from bottom to top.
+# MiniIconsBottomToTop=0 # 0/1
+
+#  Place the mini-icons horizontal instead of vertical.
+# MiniIconsPlaceHorizontal=0 # 0/1
+
+#  Place new mini-icons from right to left.
+# MiniIconsRightToLeft=0 # 0/1
+
+#  Display mini-icons on desktop for minimized windows.
+# MinimizeToDesktop=0 # 0/1
+
+#  Treat the Super/Win key modifier as a synonym for the Ctrl+Alt modifier combination. The default key bindings have many occurrences of Ctrl+Alt.  If you enable this, then the Super modifier is an alternative way to activate them.
+# ModSuperIsCtrlAlt=0 # 0/1
+
+#  Mouse binding to lower window.
+# MouseWinLower="Ctrl+Alt+Pointer_Button1"
+
+#  Mouse binding for window move.
+# MouseWinMove="Alt+Pointer_Button1"
+
+#  Mouse binding to raise window.
+# MouseWinRaise="Ctrl+Alt+Pointer_Button1"
+
+#  Mouse binding for window resize.
+# MouseWinSize="Alt+Pointer_Button3"
+
+#  Preselect to Cancel (0) or the OK (1) button in message boxes.
+# MsgBoxDefaultAction=0 # [0-1]
+
+#  Overrides automatic multiple byte detection.
+# MultiByte=1 # 0/1
+
+#  Multiple click time in ms.
+# MultiClickTime=400 # [0-5000]
+
+#  Minimal number of themes after which the Themes menu becomes nested (0=disabled)
+# NestedThemeMenuMinNumber=21 # [0-1234]
+
+#  WM_CLASS to allow runonce for NetStatusCommand.
+# NetStatusClassHint="ss.XTerm"
+
+#  Command to run on Net status.
+# NetStatusCommand="xterm -name 'ss' -title 'Socket Statistics' -hold -e sh -c 'which ss > /dev/null && watch -t ss -putswl || netstat -c'"
+
+#  Show network status only for connected devices.
+# NetStatusShowOnlyRunning=0 # 0/1
+
+#  NET_WORKAREA behaviour: 0 (single/multimonitor with STRUT information, like metacity), 1 (always full desktop), 2 (singlemonitor with STRUT, multimonitor without STRUT)
+# NetWorkAreaBehaviour=0 # [0-2]
+
+#  Network device to show status for.
+# NetworkStatusDevice="[ew]*"
+
+#  Command to run when new mail arrives.
+# NewMailCommand=""
+
+#  Opaque window move.
+# OpaqueMove=1 # 0/1
+
+#  Opaque window resize.
+# OpaqueResize=1 # 0/1
+
+#  Command to select and run a program.
+# OpenCommand=""
+
+#  Draw border around workspace buttons (if PagerShowPreview=1)
+# PagerShowBorders=1 # 0/1
+
+#  Show workspace name label on workspace button (if PagerShowPreview=1)
+# PagerShowLabels=1 # 0/1
+
+#  Draw even minimized windows as unfilled rectangles (if PagerShowPreview=1)
+# PagerShowMinimized=1 # 0/1
+
+#  Show number of workspace on workspace button (if PagerShowPreview=1)
+# PagerShowNumbers=0 # 0/1
+
+#  Show a mini desktop preview on each workspace button.
+# PagerShowPreview=1 # 0/1
+
+#  Draw window icons inside large enough preview windows on pager (if PagerShowPreview=1)
+# PagerShowWindowIcons=1 # 0/1
+
+#  Pass focusing click on client area to client.
+# PassFirstClickToClient=1 # 0/1
+
+#  Timeout in seconds for applications to respond to _NET_WM_PING protocol.
+# PingTimeout=3 # [0-86400]
+
+#  Colormap focus follows pointer.
+# PointerColormap=1 # 0/1
+
+#  Delay in ms for pointer focus switching.
+# PointerFocusDelay=200 # [0-1000]
+
+#  Favour Xft fonts over core X11 fonts where possible.
+# PreferFreetypeFonts=1 # 0/1
+
+#  Enable Alt+Tab window switching.
+QuickSwitch=1
+
+#  Show all reachable icons when quick switching.
+QuickSwitchAllIcons=1 
+
+#  Fill the rectangle highlighting the current icon.
+# QuickSwitchFillSelection=0 # 0/1
+
+#  Group windows by workspace together in Alt+Tab.
+# QuickSwitchGroupWorkspaces=1 # 0/1
+
+#  Show the huge (48x48) of the window icon for the active window.
+# QuickSwitchHugeIcon=0 # 0/1
+
+#  Go trough all window titles and choose width of the longest one.
+# QuickSwitchMaxWidth=0 # 0/1
+
+#  Raise a selected window while Alt+Tabbing in the QuickSwitch.
+# QuickSwitchRaiseCandidate=0 # 0/1
+
+#  Create a smaller QuickSwitch window of 1/3 screen width.
+# QuickSwitchSmallWindow=0 # 0/1
+
+#  Show the window title above (all reachable) icons.
+# QuickSwitchTextFirst=0 # 0/1
+
+#  Include windows from all workspaces in Alt+Tab.
+# QuickSwitchToAllWorkspaces=0 # 0/1
+
+#  Enable Alt+Tab to hidden windows.
+# QuickSwitchToHidden=1 # 0/1
+
+#  Enable Alt+Tab to minimized windows.
+# QuickSwitchToMinimized=1 # 0/1
+
+#  Prioritize Alt+Tab to urgent windows.
+# QuickSwitchToUrgent=1 # 0/1
+
+#  Place the icons and titles vertical instead of horizontal.
+# QuickSwitchVertical=1 # 0/1
+
+#  Raise window when frame button is clicked.
+# RaiseOnClickButton=1 # 0/1
+
+#  Raise window when client area clicked.
+# RaiseOnClickClient=1 # 0/1
+
+#  Raise window when frame border is clicked.
+# RaiseOnClickFrame=1 # 0/1
+
+#  Raise window when title bar is clicked.
+# RaiseOnClickTitleBar=1 # 0/1
+
+#  Raise windows when focused.
+# RaiseOnFocus=1 # 0/1
+
+#  Command to reboot the system.
+# RebootCommand="test -e /run/systemd/system && systemctl reboot"
+
+#  Send the clicks outside menus to target window.
+# ReplayMenuCancelClick=0 # 0/1
+
+#  Request focus (flashing in taskbar) when application requests raise.
+# RequestFocusOnAppRaise=1 # 0/1
+
+#  Command to select and run a program.
+# RunCommand=""
+
+#  Scroll bar autoscroll delay in ms.
+# ScrollBarDelay=30 # [0-5000]
+
+#  Inital scroll bar autoscroll delay in ms.
+# ScrollBarStartDelay=500 # [0-5000]
+
+#  Don't cut client windows by shapes set trough frame corner pixmap.
+# ShapesProtectClientWindow=1 # 0/1
+
+#  Show the about menu item in the program menu.
+ShowAbout=0 # 0/1
+
+#  Show address bar in task bar.
+# ShowAddressBar=1 # 0/1
+
+#  Show Ellipsis in taskbar items as indicator of further collapsed content.
+# ShowEllipsis=1 # 0/1
+
+#  Show focus mode submenu in the program menu.
+ShowFocusModeMenu=0 # 0/1
+
+#  Show the help menu item in the program menu.
+ShowHelp=0 # 0/1
+
+#  Show logout menu in the program menu.
+# ShowLogoutMenu=1 # 0/1
+
+#  Show logout submenu in the program menu.
+# ShowLogoutSubMenu=1 # 0/1
+
+#  Show position status window during move/resize.
+# ShowMoveSizeStatus=1 # 0/1
+
+#  Show popup menus above mouse pointer.
+# ShowPopupsAbovePointer=0 # 0/1
+
+#  Show programs submenu in the program menu.
+ShowProgramsMenu=0
+
+#  Show the run menu item in the program menu.
+# ShowRun=1 # 0/1
+
+#  Show settings submenu in the program menu.
+ShowSettingsMenu=0 # 0/1
+
+#  Show task bar.
+# ShowTaskBar=1 # 0/1
+
+#  Show themes submenu in the program menu.
+ShowThemesMenu=0
+
+#  Show the window menu item in the program menu.
+ShowWindowList=0
+
+#  Show name of current workspace while switching.
+# ShowWorkspaceStatus=1 # 0/1
+
+#  Command to shutdown the system.
+# ShutdownCommand="test -e /run/systemd/system && systemctl poweroff"
+
+#  Maximized windows can be resized.
+# SizeMaximized=0 # 0/1
+
+#  Smart window placement with minimal overlap.
+# SmartPlacement=1 # 0/1
+
+#  Distance in pixels before windows snap together.
+# SnapDistance=8 # [0-64]
+
+#  Snap to nearest screen edge/window when moving windows.
+# SnapMove=1 # 0/1
+
+#  Always maintain focus under mouse window (makes some keyboard support non-functional or unreliable)
+# StrongPointerFocus=0 # 0/1
+
+#  Delay in ms before activating menu submenus.
+# SubmenuMenuActivateDelay=300 # [0-5000]
+
+#  Command to send the system to standby mode.
+# SuspendCommand="test -e /run/systemd/system && systemctl suspend"
+
+#  Width of battery Monitor.
+# TaskBarApmGraphWidth=10 # [1-1000]
+
+#  Task bar at top of the screen.
+# TaskBarAtTop=0 # 0/1
+
+#  Auto hide task bar after delay.
+# TaskBarAutoHide=0 # 0/1
+
+#  Delay between CPU Monitor samples in ms.
+# TaskBarCPUDelay=500 # [10-3600000]
+
+#  The width of the CPU Monitor applet in pixels.
+# TaskBarCPUSamples=20 # [2-1000]
+
+#  Use double-height task bar.
+# TaskBarDoubleHeight=0 # 0/1
+
+#  Enable the system tray in the taskbar.
+# TaskBarEnableSystemTray=1 # 0/1
+
+#  Auto show task bar when fullscreen window active.
+# TaskBarFullscreenAutoShow=1 # 0/1
+
+#  Height of taskbar monitoring applets.
+# TaskBarGraphHeight=20 # [16-1000]
+
+#  Taskbar justify left, right or center.
+# TaskBarJustify="left"
+
+#  Keep the task bar below regular windows.
+# TaskBarKeepBelow=0 # 0/1
+
+#  Execute taskbar applet commands (like MailCommand, ClockCommand, ...) on single click.
+# TaskBarLaunchOnSingleClick=1 # 0/1
+
+#  Delay between Memory Monitor samples in ms.
+# TaskBarMEMDelay=500 # [10-3600000]
+
+#  The width of the Memory Monitor applet in pixels.
+# TaskBarMEMSamples=20 # [2-1000]
+
+#  Beep when new mail arrives.
+# TaskBarMailboxStatusBeepOnNewMail=0 # 0/1
+
+#  Count messages in mailbox.
+# TaskBarMailboxStatusCountMessages=0 # 0/1
+
+#  Delay between Net Monitor samples in ms.
+# TaskBarNetDelay=500 # [10-3600000]
+
+#  The width of the Net Monitor applet in pixels.
+# TaskBarNetSamples=20 # [2-1000]
+
+#  Enable TaskBarShowAPMStatus if a battery is present.
+# TaskBarShowAPMAuto=1 # 0/1
+
+#  Show battery status in graph mode.
+# TaskBarShowAPMGraph=1 # 0/1
+
+#  Show battery status monitor on task bar.
+# TaskBarShowAPMStatus=0 # 0/1
+
+#  Show battery status on task bar in time-format.
+# TaskBarShowAPMTime=1 # 0/1
+
+#  Show windows from all workspaces on task bar.
+# TaskBarShowAllWindows=0 # 0/1
+
+#  Show CPU status on task bar.
+TaskBarShowCPUStatus=0 # 0/1
+
+#  Show clock on task bar.
+# TaskBarShowClock=1 # 0/1
+
+#  Show a button to collapse the taskbar.
+# TaskBarShowCollapseButton=0 # 0/1
+
+#  Show memory usage status on task bar (Linux only)
+TaskBarShowMEMStatus=0 # 0/1
+
+#  Show mailbox status on task bar.
+# TaskBarShowMailboxStatus=1 # 0/1
+
+#  Show network status on task bar.
+TaskBarShowNetStatus=0 # 0/1
+
+#  Show 'show desktop' button on taskbar (value of 2 to put after the clock)
+# TaskBarShowShowDesktopButton=1 # [0-2]
+
+#  Show 'Start' menu on task bar.
+# TaskBarShowStartMenu=1 # 0/1
+
+#  Show transient (dialogs, ...) windows on task bar.
+# TaskBarShowTransientWindows=1 # 0/1
+
+#  Show application icons in the tray panel.
+TaskBarShowTray=1
+
+#  Show icons of windows on the task bar.
+# TaskBarShowWindowIcons=1 # 0/1
+
+#  Show 'window list' menu on task bar.
+# TaskBarShowWindowListMenu=1 # 0/1
+
+#  Show windows on the taskbar.
+# TaskBarShowWindows=1 # 0/1
+
+#  Show workspace switching buttons on task bar.
+TaskBarShowWorkspaces=0
+
+#  Group applications with the same class name under a single task button: 0=off, 1=digits, 2=dots, 3=both.
+# TaskBarTaskGrouping=0 # [0-3]
+
+#  Enable mouse wheel cycling over workspaces and task buttons in taskbar.
+TaskBarUseMouseWheel=0
+
+#  Task bar width as percentage of the screen width.
+# TaskBarWidthPercentage=100 # [0-100]
+
+#  Place workspace pager on left, not right.
+# TaskBarWorkspacesLeft=1 # 0/1
+
+#  Limit number of taskbar workspaces.
+TaskBarWorkspacesLimit="1"
+
+#  Place workspace pager on top row when using dual-height taskbar.
+# TaskBarWorkspacesTop=0 # 0/1
+
+#  default number of tasks in taskbar.
+# TaskbarButtonWidthDivisor=3 # [1-25]
+
+#  Terminal emulator must accept -e option.
+# TerminalCommand="xterm -hold"
+
+#  Clock Time format (strftime format string)
+# TimeFormat="%X"
+
+#  Alternate Clock Time format for blinking effects.
+# TimeFormatAlt=""
+
+#  TitleBar mouse-button double click to maximize the window.
+# TitleBarMaximizeButton=1 # [0-5]
+
+#  TitleBar mouse-button double click to rollup the window.
+# TitleBarRollupButton=2 # [0-5]
+
+#  Delay in ms before tooltip window is displayed.
+# ToolTipDelay=500 # [0-5000]
+
+#  Time in ms before tooltip window is hidden (0 means never)
+# ToolTipTime=0 # [0-60000]
+
+#  Show windows from all workspaces on tray.
+# TrayShowAllWindows=1 # 0/1
+
+#  Support mouse wheel. When pressing Ctrl+Alt rotating the mouse wheel on the root window will cycle the focus over the windows.
+# UseMouseWheel=0 # 0/1
+
+#  Bitmask of root window button click to use in window manager.
+# UseRootButtons=255 # [0-255]
+
+#  Workspace switches by moving mouse to top/bottom screen edge.
+# VerticalEdgeSwitch=0 # 0/1
+
+#  Support the Windows/Super key modifier to activate special functions.  The left Super key toggles the Start menu, while the right Super key toggles the Window list window.
+# Win95Keys=1 # 0/1
+
+#  Items supported in menu window (rmsnxfhualytickw)
+# WinMenuItems="rmsnxfhualyticw"
+
+#  Add a workspace.
+# WorkspaceNames=" 1 ", " 2 ", " 3 ", " 4 "
+
+#  Time before workspace status window is hidden in ms.
+WorkspaceStatusTime=0 # [0-2500]
+
+#  Disable use of new XRANDR API for dual head (nvidia workaround)
+# XRRDisable=0 # 0/1
+
+#  screen/output name of the primary screen.
+# XRRPrimaryScreenName=""
+
+#  Primary screen for xinerama where taskbar is shown.
+# XineramaPrimaryScreen=0 # [0-63]
+
+# -----------------------------------------------------------
+# Themable preferences. Themes will override these.
+# To override the themes, place them in ~/.icewm/prefoverride
+# -----------------------------------------------------------
+
+#  Name of the active button font.
+# ActiveButtonFontName="-*-sans-bold-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the active button font.
+# ActiveButtonFontNameXft="sans-serif:size=12:bold"
+
+#  Name of the active task bar item font.
+# ActiveTaskBarFontName="-*-sans-bold-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the active task bar item font.
+# ActiveTaskBarFontNameXft="sans-serif:size=12:bold"
+
+#  Name of the active workspace button font (fallback: ActiveButtonFontName).
+# ActiveWorkspaceFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the active workspace button font (fallback: ActiveButtonFontName).
+# ActiveWorkspaceFontNameXft="sans-serif:size=12"
+
+#  Name of the task bar battery font.
+# ApmFontName="-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
+
+#  Name of the task bar battery font.
+# ApmFontNameXft="monospace:size=12"
+
+#  Horizontal window border.
+# BorderSizeX=6 # [0-128]
+
+#  Vertical window border.
+# BorderSizeY=6 # [0-128]
+
+#  Name of the task bar clock font.
+# ClockFontName="-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
+
+#  Name of the task bar clock font.
+# ClockFontNameXft="monospace:size=12"
+
+#  Border of active windows.
+# ColorActiveBorder="rgb:C0/C0/C0"
+
+#  Background of pressed buttons.
+# ColorActiveButton="rgb:E0/E0/E0"
+
+#  Text color of pressed buttons.
+# ColorActiveButtonText="rgb:00/00/00"
+
+#  Background of selected menu item, leave empty to force transparency.
+# ColorActiveMenuItem="rgb:A0/A0/A0"
+
+#  Text color of selected menu items.
+# ColorActiveMenuItemText="rgb:00/00/00"
+
+#  Background for mini icons of active windows.
+# ColorActiveMinimizedWindow="rgb:E0/E0/E0"
+
+#  Text color for mini icons of active windows.
+# ColorActiveMinimizedWindowText="rgb:00/00/00"
+
+#  Background for task buttons of the active window.
+# ColorActiveTaskBarApp="rgb:E0/E0/E0"
+
+#  Text color for task buttons of the active window.
+# ColorActiveTaskBarAppText="rgb:00/00/00"
+
+#  Background of the titlebar of active windows.
+# ColorActiveTitleBar="rgb:00/00/A0"
+
+#  Text shadow of the titlebar of active windows.
+# ColorActiveTitleBarShadow=""
+
+#  Text color of the titlebar of active windows.
+# ColorActiveTitleBarText="rgb:FF/FF/FF"
+
+#  Background of the active workspace button, ColorActiveButton is used if empty.
+# ColorActiveWorkspaceButton=""
+
+#  Text color of the active workspace button, ColorActiveButtonText is used if empty.
+# ColorActiveWorkspaceButtonText=""
+
+#  Background of battery monitor, leave empty to force transparency.
+# ColorApm="rgb:00/00/00"
+
+#  Legacy option; don't use, see ColorApmBattery.
+# ColorApmBattary="rgb:FF/FF/00"
+
+#  Color of battery monitor when discharging.
+# ColorApmBattery="rgb:FF/FF/00"
+
+#  Background color for graph mode.
+# ColorApmGraphBg="rgb:00/00/00"
+
+#  Color of battery monitor when charging.
+# ColorApmLine="rgb:00/FF/00"
+
+#  Text color of battery monitor.
+# ColorApmText="rgb:00/FF/00"
+
+#  Idle (non) load on the CPU monitor, leave empty to force transparency.
+# ColorCPUStatusIdle="rgb:00/00/00"
+
+#  Interrupts on the CPU monitor.
+# ColorCPUStatusInterrupts="rgb:FF/FF/00"
+
+#  IO Wait on the CPU monitor.
+# ColorCPUStatusIoWait="rgb:60/00/60"
+
+#  Nice load on the CPU monitor.
+# ColorCPUStatusNice="rgb:00/00/FF"
+
+#  Soft Interrupts on the CPU monitor.
+# ColorCPUStatusSoftIrq="rgb:00/FF/FF"
+
+#  Involuntary Wait on the CPU monitor.
+# ColorCPUStatusSteal="rgb:FF/8A/91"
+
+#  System load on the CPU monitor.
+# ColorCPUStatusSystem="rgb:FF/00/00"
+
+#  Temperature of the CPU.
+# ColorCPUStatusTemp="rgb:60/60/C0"
+
+#  User load on the CPU monitor.
+# ColorCPUStatusUser="rgb:00/FF/00"
+
+#  Background of non-LCD clock, leave empty to force transparency.
+# ColorClock="rgb:00/00/00"
+
+#  Background of non-LCD monitor.
+# ColorClockText="rgb:00/FF/00"
+
+#  Background of the taskbar.
+# ColorDefaultTaskBar="rgb:C0/C0/C0"
+
+#  Background of dialog windows.
+# ColorDialog="rgb:C0/C0/C0"
+
+#  Shadow of regular menu items.
+# ColorDisabledMenuItemShadow=""
+
+#  Text color of disabled menu items.
+# ColorDisabledMenuItemText="rgb:80/80/80"
+
+#  Background of text entry fields (e.g., the addressbar)
+# ColorInput="rgb:FF/FF/FF"
+
+#  Background of selected text in an entry field.
+# ColorInputSelection="rgb:80/80/80"
+
+#  Selected text in an entry field.
+# ColorInputSelectionText="rgb:00/00/00"
+
+#  Text color of text entry fields (e.g., the addressbar)
+# ColorInputText="rgb:00/00/00"
+
+#  Background for task buttons of windows on other workspaces.
+# ColorInvisibleTaskBarApp="rgb:80/80/80"
+
+#  Text color for task buttons of windows on other workspaces.
+# ColorInvisibleTaskBarAppText="rgb:00/00/00"
+
+#  Background of labels, leave empty to force transparency.
+# ColorLabel="rgb:C0/C0/C0"
+
+#  Text color of labels.
+# ColorLabelText="rgb:00/00/00"
+
+#  Background of listboxes.
+# ColorListBox="rgb:C0/C0/C0"
+
+#  Background of selected listbox items.
+# ColorListBoxSelection="rgb:80/80/80"
+
+#  Text color of selected listbox items.
+# ColorListBoxSelectionText="rgb:00/00/00"
+
+#  Text color in listboxes.
+# ColorListBoxText="rgb:00/00/00"
+
+#  OS buffers usage in the memory monitor.
+# ColorMEMStatusBuffers="rgb:60/60/C0"
+
+#  OS cached usage in the memory monitor.
+# ColorMEMStatusCached="rgb:80/80/FF"
+
+#  Free memory in the memory monitor.
+# ColorMEMStatusFree="rgb:00/00/00"
+
+#  User program usage in the memory monitor.
+# ColorMEMStatusUser="rgb:40/40/80"
+
+#  Background for task buttons of minimized windows.
+# ColorMinimizedTaskBarApp="rgb:A0/A0/A0"
+
+#  Text color for task buttons of minimized windows.
+# ColorMinimizedTaskBarAppText="rgb:00/00/00"
+
+#  Background of move/resize status window.
+# ColorMoveSizeStatus="rgb:C0/C0/C0"
+
+#  Text color of move/resize status window.
+# ColorMoveSizeStatusText="rgb:00/00/00"
+
+#  Idle (non) load on the network monitor, leave empty to force transparency.
+# ColorNetIdle="rgb:00/00/00"
+
+#  Incoming load on the network monitor.
+# ColorNetReceive="rgb:FF/00/FF"
+
+#  Outgoing load on the network monitor.
+# ColorNetSend="rgb:FF/FF/00"
+
+#  Border of inactive windows.
+# ColorNormalBorder="rgb:C0/C0/C0"
+
+#  Background of regular buttons.
+# ColorNormalButton="rgb:C0/C0/C0"
+
+#  Text color of regular buttons.
+# ColorNormalButtonText="rgb:00/00/00"
+
+#  Background of pop-up menus.
+# ColorNormalMenu="rgb:C0/C0/C0"
+
+#  Text color of regular menu items.
+# ColorNormalMenuItemText="rgb:00/00/00"
+
+#  Background for mini icons of regular windows.
+# ColorNormalMinimizedWindow="rgb:C0/C0/C0"
+
+#  Text color for mini icons of regular windows.
+# ColorNormalMinimizedWindowText="rgb:00/00/00"
+
+#  Background for task buttons of regular windows.
+# ColorNormalTaskBarApp="rgb:C0/C0/C0"
+
+#  Text color for task buttons of regular windows.
+# ColorNormalTaskBarAppText="rgb:00/00/00"
+
+#  Background of the titlebar of regular windows.
+# ColorNormalTitleBar="rgb:80/80/80"
+
+#  Text shadow of the titlebar of regular windows.
+# ColorNormalTitleBarShadow=""
+
+#  Text color of the titlebar of regular windows.
+# ColorNormalTitleBarText="rgb:00/00/00"
+
+#  Background of titlebar buttons.
+# ColorNormalTitleButton="rgb:C0/C0/C0"
+
+#  Text color of titlebar buttons.
+# ColorNormalTitleButtonText="rgb:00/00/00"
+
+#  Background of workspace buttons, ColorNormalButton is used if empty.
+# ColorNormalWorkspaceButton=""
+
+#  Text color of workspace buttons, ColorNormalButtonText is used if empty.
+# ColorNormalWorkspaceButtonText=""
+
+#  Background of the quick switch window.
+# ColorQuickSwitch="rgb:C0/C0/C0"
+
+#  Rectangle arround the active icon in the quick switch window.
+# ColorQuickSwitchActive=""
+
+#  Text color in the quick switch window.
+# ColorQuickSwitchText="rgb:00/00/00"
+
+#  Scrollbar background (sliding area)
+# ColorScrollBar="rgb:A0/A0/A0"
+
+#  Background of the arrow buttons in scrollbars (obsolete)
+# ColorScrollBarArrow="rgb:C0/C0/C0"
+
+#  Background of the arrow buttons in scrollbars.
+# ColorScrollBarButton="rgb:C0/C0/C0"
+
+#  Color of active arrows on scrollbar buttons.
+# ColorScrollBarButtonArrow="rgb:00/00/00"
+
+#  Color of inactive arrows on scrollbar buttons.
+# ColorScrollBarInactiveArrow="rgb:80/80/80"
+
+#  Background of the slider button in scrollbars.
+# ColorScrollBarSlider="rgb:C0/C0/C0"
+
+#  Background of toolbar buttons, ColorNormalButton is used if empty.
+# ColorToolButton=""
+
+#  Text color of toolbar buttons, ColorNormalButtonText is used if empty.
+# ColorToolButtonText=""
+
+#  Background of tooltips.
+# ColorToolTip="rgb:E0/E0/00"
+
+#  Text color of tooltips.
+# ColorToolTipText="rgb:00/00/00"
+
+#  Resize corner width.
+# CornerSizeX=24 # [0-64]
+
+#  Resize corner height.
+# CornerSizeY=24 # [0-64]
+
+#  Horizontal dialog window border.
+# DlgBorderSizeX=2 # [0-128]
+
+#  Vertical dialog window border.
+# DlgBorderSizeY=2 # [0-128]
+
+#  List of gradient pixmaps in the current theme.
+# Gradients=""
+
+#  Dimension of the large icons.
+# HugeIconSize=48 # [8-128]
+
+#  Name of the input field font.
+# InputFontName="-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
+
+#  Name of the input field font.
+# InputFontNameXft="monospace:size=12"
+
+#  Name of the label font.
+# LabelFontName="-*-sans-medium-r-*-*-*-140-*-*-*-*-*-*"
+
+#  Name of the label font.
+# LabelFontNameXft="sans-serif:size=12"
+
+#  Dimension of the large icons.
+# LargeIconSize=32 # [8-128]
+
+#  Name of the window list font.
+# ListBoxFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the window list font.
+# ListBoxFontNameXft="sans-serif:size=12"
+
+#  The theme look.
+# Look="nice"
+
+#  Vertical offset for the menu button icon.
+# MenuButtonIconVertOffset=0 # [-128-128]
+
+#  Name of the menu font.
+# MenuFontName="-*-sans-bold-r-*-*-*-100-*-*-*-*-*-*"
+
+#  Name of the menu font.
+# MenuFontNameXft="sans-serif:size=10:bold"
+
+#  Menu icon size.
+# MenuIconSize=16 # [8-128]
+
+#  Name of the mini-window font.
+# MinimizedWindowFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the mini-window font.
+# MinimizedWindowFontNameXft="sans-serif:size=12"
+
+#  Name of the normal button font.
+# NormalButtonFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the normal button font.
+# NormalButtonFontNameXft="sans-serif:size=12"
+
+#  Name of the normal task bar item font.
+# NormalTaskBarFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the normal task bar item font.
+# NormalTaskBarFontNameXft="sans-serif:size=12"
+
+#  Name of the normal workspace button font (fallback: NormalButtonFontName).
+# NormalWorkspaceFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the normal workspace button font (fallback: NormalButtonFontName).
+# NormalWorkspaceFontNameXft="sans-serif:size=12"
+
+#  Name of the font for Alt+Tab switcher window.
+# QuickSwitchFontName="-*-monospace-bold-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the font for Alt+Tab switcher window.
+# QuickSwitchFontNameXft="monospace:size=12:bold"
+
+#  Horizontal margin of the quickswitch window.
+# QuickSwitchHorzMargin=3 # [0-64]
+
+#  Distance between the active icon and it's border.
+# QuickSwitchIconBorder=2 # [0-64]
+
+#  Vertical margin in the quickswitch window.
+# QuickSwitchIconMargin=4 # [0-64]
+
+#  Height of the separator between (all reachable) icons and text, 0 to avoid it.
+# QuickSwitchSeparatorSize=6 # [0-64]
+
+#  Vertical margin of the quickswitch window.
+# QuickSwitchVertMargin=3 # [0-64]
+
+#  Does it support the 'O' title bar button images (for mouse rollover)
+# RolloverButtonsSupported=0 # 0/1
+
+#  Scrollbar width.
+# ScrollBarX=16 # [0-64]
+
+#  Scrollbar (button) height.
+# ScrollBarY=16 # [0-64]
+
+#  Show application icon over menu button.
+# ShowMenuButtonIcon=1 # 0/1
+
+#  Dimension of the small icons.
+# SmallIconSize=16 # [8-128]
+
+#  Name of the status display font.
+# StatusFontName="-*-monospace-bold-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the status display font.
+# StatusFontNameXft="monospace:size=12:bold"
+
+#  Task bar clock/battery monitor uses nice pixmap LCD display (but then it doesn't display correctly in many languages anymore, e.g., for Japanese and Korean it works only when a real font is used and not the LCD pixmaps.
+# TaskBarClockLeds=0 # 0/1
+
+#  Width of taskbutton side icons.
+# TaskbuttonIconOffset=0 # [0-16]
+
+#  Name of the task bar temperature font.
+# TempFontName="-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
+
+#  Name of the task bar temperature font.
+# TempFontNameXft="monospace:size=12"
+
+#  Theme author, e-mail address, credits.
+# ThemeAuthor=""
+
+#  Description of the theme, credits.
+# ThemeDescription=""
+
+#  Draw window title centered (obsoleted by TitleBarJustify)
+# TitleBarCentered=0 # 0/1
+
+#  Title bar height.
+# TitleBarHeight=20 # [0-128]
+
+#  Horizontal offset for the window title text.
+# TitleBarHorzOffset=0 # [-128-128]
+
+#  Join title*S and title*T.
+# TitleBarJoinLeft=0 # 0/1
+
+#  Join title*T and title*B.
+# TitleBarJoinRight=0 # 0/1
+
+#  Justification of the window title.
+# TitleBarJustify=0 # [0-100]
+
+#  Vertical offset for the window title text.
+# TitleBarVertOffset=0 # [-128-128]
+
+#  Titlebar buttons from left to right (x=close, m=max, i=min, h=hide, r=rollup, s=sysmenu, d=depth)
+# TitleButtonsLeft="s"
+
+#  Titlebar buttons from right to left (x=close, m=max, i=min, h=hide, r=rollup, s=sysmenu, d=depth)
+# TitleButtonsRight="xmir"
+
+#  Titlebar buttons supported by theme (x,m,i,r,h,s,d)
+# TitleButtonsSupported="xmis"
+
+#  Name of the title bar font.
+# TitleFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the title bar font.
+# TitleFontNameXft="sans-serif:size=12"
+
+#  Name of the tool button font (fallback: NormalButtonFontName).
+# ToolButtonFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the tool button font (fallback: NormalButtonFontName).
+# ToolButtonFontNameXft="sans-serif:size=12"
+
+#  Name of the tool tip font.
+# ToolTipFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
+
+#  Name of the tool tip font.
+# ToolTipFontNameXft="sans-serif:size=12"
+
+#  Surround the tray with plastic border.
+# TrayDrawBevel=0 # 0/1
+
+#  Maximum scaled height of tray icons.
+# TrayIconMaxHeight=24 # [16-128]
+
+#  Maximum scaled width of tray icons.
+# TrayIconMaxWidth=32 # [16-128]
+
+#
+# icewmbg preferences
+#
+
+#  Seconds between cycling over all background images, default zero is off.
+# CycleBackgroundsPeriod=0 # [0-2147483647]
+
+#  Display desktop background centered and not tiled.
+# DesktopBackgroundCenter=0 # 0/1
+
+#  Desktop background color(s)
+# DesktopBackgroundColor=""
+
+#  Desktop background image(s)
+# DesktopBackgroundImage=""
+
+#  Paint the background image over all multihead monitors combined.
+# DesktopBackgroundMultihead=0 # 0/1
+
+#  Resize desktop background to full screen.
+# DesktopBackgroundScaled=0 # 0/1
+
+#  Color(s) to announce for semitransparent windows.
+# DesktopTransparencyColor=""
+
+#  Image(s) to announce for semitransparent windows.
+# DesktopTransparencyImage=""
+
+#  Choose a random selection from the list of background images.
+# ShuffleBackgroundImages=0 # 0/1
+
+#  Support for semitransparent terminals like Eterm or gnome-terminal.
+# SupportSemitransparency=1 # 0/1
+
+TaskBarWorkspacesLimit="1"
diff --git a/files/icewm/theme b/files/icewm/theme
new file mode 100644 (file)
index 0000000..7428794
--- /dev/null
@@ -0,0 +1 @@
+Theme="win95/default.theme"
diff --git a/files/icewm/toolbar b/files/icewm/toolbar
new file mode 100644 (file)
index 0000000..16026a9
--- /dev/null
@@ -0,0 +1,2 @@
+prog "XTerm" xterm xterm -geometry 80x24
+prog "Przeglądarka internetowa" ! x-www-browser
diff --git a/files/lightdm-gtk-greeter.conf b/files/lightdm-gtk-greeter.conf
new file mode 100644 (file)
index 0000000..b8b17c3
--- /dev/null
@@ -0,0 +1,6 @@
+[greeter]
+background = /usr/share/images/desktop-base/lightdm_wallpaper.jpg
+theme-name = Adwaita-dark
+icon-theme-name = Adwaita
+default-user-image = /usr/share/images/desktop-base/immudex_xfce_greeter_logo.png
+
diff --git a/files/vimrc b/files/vimrc
new file mode 100644 (file)
index 0000000..a9a1363
--- /dev/null
@@ -0,0 +1,60 @@
+" All system-wide defaults are set in $VIMRUNTIME/debian.vim and sourced by
+" the call to :runtime you can find below.  If you wish to change any of those
+" settings, you should do it in this file (/etc/vim/vimrc), since debian.vim
+" will be overwritten everytime an upgrade of the vim packages is performed.
+" It is recommended to make changes after sourcing debian.vim since it alters
+" the value of the 'compatible' option.
+
+" This line should not be removed as it ensures that various options are
+" properly set to work with the Vim-related packages available in Debian.
+runtime! debian.vim
+
+" Vim will load $VIMRUNTIME/defaults.vim if the user does not have a vimrc.
+" This happens after /etc/vim/vimrc(.local) are loaded, so it will override
+" any settings in these files.
+" If you don't want that to happen, uncomment the below line to prevent
+" defaults.vim from being loaded.
+" let g:skip_defaults_vim = 1
+
+" Uncomment the next line to make Vim more Vi-compatible
+" NOTE: debian.vim sets 'nocompatible'.  Setting 'compatible' changes numerous
+" options, so any other options should be set AFTER setting 'compatible'.
+"set compatible
+
+" Vim5 and later versions support syntax highlighting. Uncommenting the next
+" line enables syntax highlighting by default.
+syntax on
+
+" If using a dark background within the editing area and syntax highlighting
+" turn on this option as well
+"set background=dark
+
+" Uncomment the following to have Vim jump to the last position when
+" reopening a file
+"au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
+
+" Uncomment the following to have Vim load indentation rules and plugins
+" according to the detected filetype.
+"filetype plugin indent on
+
+" The following are commented out as they cause vim to behave a lot
+" differently from regular Vi. They are highly recommended though.
+"set showcmd           " Show (partial) command in status line.
+"set showmatch         " Show matching brackets.
+"set ignorecase                " Do case insensitive matching
+"set smartcase         " Do smart case matching
+"set incsearch         " Incremental search
+"set autowrite         " Automatically save before commands like :next and :make
+"set hidden            " Hide buffers when they are abandoned
+"set mouse=a           " Enable mouse usage (all modes)
+
+" Source a global configuration file if available
+if filereadable("/etc/vim/vimrc.local")
+  source /etc/vim/vimrc.local
+endif
+
+set number
+set colorcolumn=80
+set tabstop=2
+set shiftwidth=2
+set expandtab
diff --git a/files/xinitrc b/files/xinitrc
new file mode 100644 (file)
index 0000000..6786165
--- /dev/null
@@ -0,0 +1,5 @@
+xscreensaver -no-splash &
+icewmbg --scaled=1 -p -i /usr/share/images/desktop-base/d13_wallpaper.png &
+conky &
+
+exec icewm-session
diff --git a/grub/amd64/font.pf2 b/grub/amd64/font.pf2
new file mode 100644 (file)
index 0000000..48be6f2
Binary files /dev/null and b/grub/amd64/font.pf2 differ
diff --git a/grub/amd64/grub.cfg b/grub/amd64/grub.cfg
new file mode 100644 (file)
index 0000000..0fea273
--- /dev/null
@@ -0,0 +1,26 @@
+if loadfont $prefix/font.pf2 ; then
+       set gfxmode=800x600
+       set gfxpayload=keep
+       insmod efi_gop
+       insmod efi_uga
+       insmod video_bochs
+       insmod video_cirrcus
+       insmod gfxterm
+       terminal_output gfxterm
+fi
+
+search --set=root --file /DEBIAN
+
+set default="0"
+set timeout=30
+set color_highlight=black/white
+set color_normal=white/black
+menuentry "immudex-sdk [EFI/GRUB]" {
+       linux ($root)/live/vmlinuz quiet boot=live bootfrom=removable overlay-size=25%
+       initrd ($root)/live/initrd
+}
+
+menuentry "immudex-sdk [EFI/GRUB] (nomodeset)" {
+       linux ($root)/live/vmlinuz quiet boot=live bootfrom=removable overlay-size=25% nomodeset
+       initrd ($root)/live/initrd
+}
diff --git a/grub/i386/font.pf2 b/grub/i386/font.pf2
new file mode 100644 (file)
index 0000000..48be6f2
Binary files /dev/null and b/grub/i386/font.pf2 differ
diff --git a/grub/i386/grub.cfg b/grub/i386/grub.cfg
new file mode 100644 (file)
index 0000000..74769ee
--- /dev/null
@@ -0,0 +1,26 @@
+if loadfont $prefix/font.pf2 ; then
+       set gfxmode=800x600
+       set gfxpayload=keep
+       insmod efi_gop
+       insmod efi_uga
+       insmod video_bochs
+       insmod video_cirrcus
+       insmod gfxterm
+       terminal_output gfxterm
+fi
+
+search --set=root --file /DEBIAN
+
+set default="0"
+set timeout=30
+set color_highlight=black/white
+set color_normal=white/black
+menuentry "immudex-sdk i386 [EFI/GRUB]" {
+       linux ($root)/live/vmlinuz quiet boot=live bootfrom=removable overlay-size=25%
+       initrd ($root)/live/initrd
+}
+
+menuentry "immudex-sdk i386 [EFI/GRUB] (nomodeset)" {
+       linux ($root)/live/vmlinuz quiet boot=live bootfrom=removable overlay-size=25% nomodeset
+       initrd ($root)/live/initrd
+}
diff --git a/images/d13_wallpaper.png b/images/d13_wallpaper.png
new file mode 100644 (file)
index 0000000..e634eea
Binary files /dev/null and b/images/d13_wallpaper.png differ
diff --git a/images/immudex-sdk.xpm b/images/immudex-sdk.xpm
new file mode 100644 (file)
index 0000000..f26f776
--- /dev/null
@@ -0,0 +1,37 @@
+/* XPM */\r
+static char * immudex_sdk_xpm[] = {\r
+"50 17 17 1",\r
+"      c None",\r
+".     c #D70E53",\r
+"+     c #D71153",\r
+"@     c #D81B57",\r
+"#     c #D71053",\r
+"$     c #D70851",\r
+"%     c #D70F53",\r
+"&     c #D70B52",\r
+"*     c #D70951",\r
+"=     c #D70C52",\r
+"-     c #D70751",\r
+";     c #D70A52",\r
+">     c #D70D52",\r
+",     c #000000",\r
+"'     c #D71454",\r
+")     c #D71254",\r
+"!     c #D81555",\r
+"     .+@                                          ",\r
+"   #$$%&&*=                                       ",\r
+"  .-=     &-                                      ",\r
+"  *        ;$                                     ",\r
+" &          >    ,,,,,                            ",\r
+" =          &  ,,,,,,,  ,,,                  ,,,  ",\r
+".           =  ,,    ,  ,,,                  ,,,  ",\r
+"&           '  ,,,     ,,,,,, ,,,,,,   ,,,,,,,,,,,",\r
+".    )      !  ,,,,,,   ,,,       ,,,  ,,,,, ,,,  ",\r
+"=     +    )    ,,,,,,  ,,,    ,,,,,,  ,,    ,,,  ",\r
+" %     ! )#        ,,,, ,,,   ,,, ,,,  ,,    ,,,  ",\r
+" *             ,    ,,, ,,,   ,,  ,,,  ,,    ,,,  ",\r
+" >.            ,,,,,,,  ,,,,  ,,,,,,,  ,,    ,,,, ",\r
+"  &            ,,,,,,    ,,,, ,,,,,,   ,,     ,,,,",\r
+"   >                                              ",\r
+"    %                                             ",\r
+"                                                  "};\r
diff --git a/images/immudex_xfce_greeter_logo.png b/images/immudex_xfce_greeter_logo.png
new file mode 100644 (file)
index 0000000..a20418b
Binary files /dev/null and b/images/immudex_xfce_greeter_logo.png differ
diff --git a/images/lightdm_wallpaper.jpg b/images/lightdm_wallpaper.jpg
new file mode 100755 (executable)
index 0000000..6f7c3fe
Binary files /dev/null and b/images/lightdm_wallpaper.jpg differ
diff --git a/immudex-build b/immudex-build
new file mode 100755 (executable)
index 0000000..ed72bb2
--- /dev/null
@@ -0,0 +1,150 @@
+#!/bin/bash
+
+GREEN="\e[32m";
+ENDCOLOR="\e[0m";
+
+set -e
+
+echo "-== Starting immudex-sdk_build: $(date) ==-" >> immudex-sdk_build.log;
+
+function help() {
+  echo "-== Help printed: $(date) ==-" >> immudex-sdk_build.log;
+  echo "immudex-sdk-build - script for building immudex-sdk LiveCD.";
+  echo "@ 2023 morketsmerke.org";
+  echo "Usage:";
+  echo " ./immudex-sdk-build  --<amd64/i386> <version>";
+}
+
+function create_enviroment() {
+  echo -n "Installation of packages needed to build immudex-sdk...";
+  sudo apt update >> immudex-sdk_build.log 2>&1;
+  sudo apt install -y debootstrap squashfs-tools xorriso isolinux syslinux-efi grub-pc-bin grub-efi-amd64-bin mtools dosfstools >> immudex-sdk_build.log 2>&1;
+  if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+}
+
+#Distributing immudex-sdk as meta-distribution there is no such thing like
+#updates. For every new commit in Git service you build new iso image.
+
+#Determing requested architecture and
+if [ "$1" ] && [ "$1" = "--amd64" ]; then arch="64";
+elif [ "$1" ] && [ "$1" = "--i386" ]; then arch="32";
+else
+  help;
+  exit 1;
+fi
+
+if [ "$2" ]; then
+  version=$2
+else
+  help;
+  exit 1;
+fi
+
+if [ ! -f /sbin/debootstrap ]; then
+  create_enviroment 
+fi
+
+#Creating root directory sturcture for immudex-sdk build:
+if [ ! -d ${HOME}/build/immudex-sdk/${arch} ]; then
+  echo -n "Creating root directory structure for immudex-sdk build...";
+  mkdir -pv ${HOME}/build/immudex-sdk/${arch} >> immudex-sdk_build.log 2>&1;
+  if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+fi
+
+#Fetching testing vanilla Debian base system files:
+echo -n "Fetching testing vanilla Debian base system files...";
+sudo /sbin/debootstrap --arch=$(echo $1 | sed 's/-//g') --variant=minbase stable ${HOME}/build/immudex-sdk/${arch}/chroot http://deb.debian.org/debian >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Copying chroot script to chroot directory:
+echo -n "Copying chroot script to chroot directory...";
+sudo cp -vv ${HOME}/immudex-sdk/versions/base.sh ${HOME}/build/immudex-sdk/${arch}/chroot >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Executing chroot script, at least i trying:
+sudo chroot ${HOME}/build/immudex-sdk/${arch}/chroot /bin/bash /base.sh $arch;
+
+#Removing chroot script.
+echo -n "Remove chroot script...";
+sudo rm -vf ${HOME}/build/immudex-sdk/${arch}/chroot/base.sh >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Creating LiveCD directory structure:
+echo -n "Creating LiveCD directory structure...";
+mkdir -pv ${HOME}/build/immudex-sdk/${arch}/{staging/{EFI/boot,boot/grub/x86_64-efi,isolinux,live},tmp} >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Creating squasfs archive:
+echo -n "Creating squashfs archive...";
+sudo mksquashfs ${HOME}/build/immudex-sdk/${arch}/chroot ${HOME}/build/immudex-sdk/${arch}/staging/live/filesystem.squashfs -e boot >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Copying kernel and initrd (core files) from chroot:
+echo -n "Copying kernel and initrd (core files) from chroot...";
+cp -v $(ls -v ${HOME}/build/immudex-sdk/${arch}/chroot/boot/vmlinuz-* | tail -1) ${HOME}/build/immudex-sdk/${arch}/staging/live/vmlinuz >> immudex-sdk_build.log 2>&1;
+cp -v $(ls -v ${HOME}/build/immudex-sdk/${arch}/chroot/boot/initrd.img-* | tail -1) ${HOME}/build/immudex-sdk/${arch}/staging/live/initrd >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Setting version for this image:
+echo "-==Setting version for immudex-sdk image: $(date)==-" >> immudex-sdk_build.log;
+echo -n "Setting version for this immudex-sdk image...";
+echo $version | tee ${HOME}/build/immudex-sdk/${arch}/staging/live/version >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Getting and copying bootloader files
+echo -n "Copying bootloader files...";
+arch2=$(echo $1 | sed 's/-//g');
+cp -v ${HOME}/immudex-sdk/isolinux/${arch2}/* ${HOME}/build/immudex-sdk/${arch}/staging/isolinux >> immudex-sdk_build.log 2>&1;
+cp -v ${HOME}/immudex-sdk/grub/${arch2}/* ${HOME}/build/immudex-sdk/${arch}/staging/boot/grub >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Create grubstandalone config:
+echo "-==Create grub-standalone config: $(date)==-" >> immudex-sdk_build.log;
+echo -n "Create grub-standalone config...";
+cat >> ${HOME}/build/immudex-sdk/${arch}/tmp/grub-standalone.cfg <<EOF
+search --set=root --file /DEBIAN
+set prefix=(\$root)/boot/grub
+configfile /boot/grub/grub.cfg
+EOF
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+
+#Create an empty file, which will be used to set root directory for GRUB:
+echo "-==Create empty file for setting root directory for GRUB: $(date)==-" >> immudex-sdk_build.log;
+echo -n "Create empty file for GRUB...";
+touch ${HOME}/build/immudex-sdk/${arch}/staging/DEBIAN;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Copying isolinux files:
+echo -n "Copiying isolinux files...";
+cp -v /usr/lib/ISOLINUX/isolinux.bin ${HOME}/build/immudex-sdk/${arch}/staging/isolinux >> immudex-sdk_build.log 2>&1;
+cp -v /usr/lib/syslinux/modules/bios/* ${HOME}/build/immudex-sdk/${arch}/staging/isolinux >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Copying grub files:
+echo -n "Copying isolinux files...";
+cp -rv /usr/lib/grub/x86_64-efi/* ${HOME}/build/immudex-sdk/${arch}/staging/boot/grub/x86_64-efi >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Creating grub-efi bootloader file:
+echo "-==Creating grub-efi bootloader file: $(date)==-" >> immudex-sdk_build.log;
+echo -n "Creating grub-efi bootloader file...";
+grub-mkstandalone --format=x86_64-efi --output=${HOME}/build/immudex-sdk/${arch}/staging/EFI/boot/bootx64.efi --locales="" --fonts="" "boot/grub/grub.cfg=${HOME}/build/immudex-sdk/${arch}/tmp/grub-standalone.cfg";
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Creating additional EFI partition:
+oldcwd=$(pwd);
+cd ${HOME}/build/immudex-sdk/${arch}/staging/boot/grub;
+echo -n "Creating addtitional EFI partition...";
+dd if=/dev/zero bs=1M of=efiboot.img count=20 >> ${oldcwd}/immudex-sdk_build.log 2>&1;
+sudo mkfs.vfat efiboot.img >> immudex-sdk_build.log 2>&1;
+echo "-==Creating MS-DOS directory: $(date)==-" >> ${oldcwd}/immudex-sdk_build.log;
+sudo mmd -i efiboot.img efi efi/boot >> ${oldcwd}/immudex-sdk_build.log 2>&1;
+sudo mcopy -vi efiboot.img ${HOME}/build/immudex-sdk/${arch}/staging/EFI/boot/bootx64.efi ::efi/boot >> ${oldcwd}/immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+
+#Create iso image:
+cd $oldcwd;
+echo -n "Creating iso image...";
+xorriso as mkisofs -iso-level 3 -o "immudex-sdk_${version}_${arch2}.iso" -full-iso9660-filenames -volid "idxSdk{version}${arch2}" -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin -eltorito-boot isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table --eltorito-catalog isolinux/isolinux.cat -eltorito-alt-boot -e /boot/grub/efiboot.img -no-emul-boot -isohybrid-gpt-basdat -append_partition 2 0xef ${HOME}/build/immudex-sdk/${arch}/staging/boot/grub/efiboot.img ${HOME}/build/immudex-sdk/${arch}/staging >> immudex-sdk_build.log 2>&1;
+if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
diff --git a/isolinux/amd64/black_screen.png b/isolinux/amd64/black_screen.png
new file mode 100644 (file)
index 0000000..f66ec3d
Binary files /dev/null and b/isolinux/amd64/black_screen.png differ
diff --git a/isolinux/amd64/isolinux.cfg b/isolinux/amd64/isolinux.cfg
new file mode 100644 (file)
index 0000000..21f33ff
--- /dev/null
@@ -0,0 +1,27 @@
+UI vesamenu.c32
+
+MENU TITLE immudex-sdk LiveCD amd64
+DEFAULT linux
+TIMEOUT 300
+MENU RESOLUTION 640 480
+MENU BACKGROUND black_screen.png
+MENU COLOR TITLE 1;37;40 #a0ffffff #00000000 std
+MENU COLOR BORDER 37;40        #a0ffffff #00000000 std
+MENU COLOR UNSEL 37;40 #a0ffffff #00000000 std
+MENU COLOR SEL 7;34;32 #ff0000ff #a0ffffff none
+MENU COLOR TABMSG 37;40 #a0ffffff #00000000 std
+MENU COLOR TIMEOUT_MSG 37;40 #a0ffffff #00000000 std
+MENU COLOR TIMEOUT 1;32;40 #a000fa00 #00000000 std
+
+LABEL linux
+       MENU LABEL immudex [BIOS/ISOLINUX]
+       MENU DEFAULT
+       KERNEL /live/vmlinuz
+       APPEND quiet initrd=/live/initrd boot=live bootfrom=removable overlay-size=25%
+
+LABEL linux
+       MENU LABEL immudex [BIOS/ISOLINUX] (nomodeset)
+       MENU DEFAULT
+       KERNEL /live/vmlinuz
+       APPEND quiet initrd=/live/initrd boot=live bootfrom=removable overlay-size=25% nomodeset
+
diff --git a/isolinux/i386/black_screen.png b/isolinux/i386/black_screen.png
new file mode 100644 (file)
index 0000000..f66ec3d
Binary files /dev/null and b/isolinux/i386/black_screen.png differ
diff --git a/isolinux/i386/isolinux.cfg b/isolinux/i386/isolinux.cfg
new file mode 100644 (file)
index 0000000..9124c5c
--- /dev/null
@@ -0,0 +1,27 @@
+UI vesamenu.c32
+
+MENU TITLE immudex-sdk LiveCD i386
+DEFAULT linux
+TIMEOUT 300
+MENU RESOLUTION 640 480
+MENU BACKGROUND black_screen.png
+MENU COLOR TITLE 1;37;40 #a0ffffff #00000000 std
+MENU COLOR BORDER 37;40        #a0ffffff #00000000 std
+MENU COLOR UNSEL 37;40 #a0ffffff #00000000 std
+MENU COLOR SEL 7;34;32 #ff0000ff #a0ffffff none
+MENU COLOR TABMSG 37;40 #a0ffffff #00000000 std
+MENU COLOR TIMEOUT_MSG 37;40 #a0ffffff #00000000 std
+MENU COLOR TIMEOUT 1;32;40 #a000fa00 #00000000 std
+
+LABEL linux
+       MENU LABEL immudex [BIOS/ISOLINUX]
+       MENU DEFAULT
+       KERNEL /live/vmlinuz
+       APPEND quiet initrd=/live/initrd boot=live bootfrom=removable overlay-size=25%
+
+LABEL linux
+       MENU LABEL immudex [BIOS/ISOLINUX] (nomodeset)
+       MENU DEFAULT
+       KERNEL /live/vmlinuz
+       APPEND quiet initrd=/live/initrd boot=live bootfrom=removable overlay-size=25% nomodeset
+
diff --git a/tools/immudex-motd2 b/tools/immudex-motd2
new file mode 100755 (executable)
index 0000000..da11dcc
--- /dev/null
@@ -0,0 +1,49 @@
+#!/bin/bash
+
+/usr/bin/figlet immudex;
+echo;
+echo "Today is: $(date)";
+echo;
+echo "System summary: ";
+cpuIdle=$(vmstat | tail -1 | awk '{printf $15}');
+cpuUsage=$((100 - $cpuIdle));
+echo -e "  \tCPU: ${cpuUsage}%";
+echo -e "  \tMEM: $(free -h | sed -n '2p' | awk '{printf $7}' | sed 's/i//') Free";
+if $(df -h 2> /dev/null | grep -q '/dev/mapper'); then
+  i=1;
+  echo -e "  \tCRYPT_PARTi: Free/Total (Usage%)";
+  amountOfDisks=$(df -h 2> /dev/null | grep '/dev/mapper' | wc -l | awk '{printf $1}');
+  while [ $i -le $amountOfDisks ]; do
+    diskSize=$(df -h 2> /dev/null | grep '/dev/mapper' | sed -n "${i}p" | awk '{printf $2}');
+    diskFree=$(df -h 2> /dev/null | grep '/dev/mapper' | sed -n "${i}p" | awk '{printf $4}');
+    diskUsage_perc=$(df -h 2> /dev/null | grep '/dev/mapper' | sed -n "${i}p" | sed 's/%//' | awk '{printf $5}');
+  #FCP = First Crypt Partition
+    echo -e "  \tCRYPT_PART${i}: ${diskFree}/${diskSize}   (${diskUsage_perc}%)";
+    i=$((i + 1));
+  done
+else
+  echo -e "  \tCRYPT_PART: N/A";
+fi
+echo -e "  \tPROCESSES: $(ps -aux | wc -l | awk '{printf $1}')";
+utime=$(uptime | awk '{printf $3}' | sed 's/,//');
+if $(echo $utime | grep -q ":"); then
+  echo -e "  \tUPTIME: ${utime}";
+else
+  echo -e "  \tUPTIME: 0:${utime}";
+fi
+echo -e " \t$(uptime | grep -o "load.*$" | tr [a-z] [A-Z])";
+echo;
+echo -e "morketsmerke.org @ 2023 https://github.com/xf0r3m/immudex";
+echo;
+#/usr/local/bin/immudex_upgrade --check --print;
+#if [ $? -ne 0 ]; then
+#       echo -e "\e[31mThere is no internet connection or internal error.\e[0m";
+#  if [ -f /tmp/feed.xml ] && [ ! -s /tmp/feed.xml ]; then
+#    rm -f /tmp/feed.xml;
+#  fi
+#else
+#  if [ "$USER" = "xf0r3m" ]; then
+#    sudo apt update > /tmp/update.log 2>&1 && tail -1 /tmp/update.log;
+#  fi
+#fi       
+echo "====================================================================";
diff --git a/versions/base.sh b/versions/base.sh
new file mode 100644 (file)
index 0000000..c907294
--- /dev/null
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+ARCH=$(dpkg --print-architecture);
+cd;
+if [ -x /usr/bin/git ]; then git clone https://git.morketsmerke.org/git/immudex-sdk;
+else apt install git -y && git clone https://git.morketsmerke.org/git/immudex-sdk;
+
+fi
+source ~/immudex-sdk/versions/template.sh;
+
+echo "deb http://deb.debian.org/debian/ stable main" > /etc/apt/sources.list;
+echo "deb-src http://deb.debian.org/debian/ stable main" >> /etc/apt/sources.list;
+echo "deb http://security.debian.org/debian-security stable-security main" >> /etc/apt/sources.list;
+echo "deb-src http://security.debian.org/debian-security stable-security main" >> /etc/apt/sources.list;
+echo "deb http://deb.debian.org/debian/ stable-updates main" >> /etc/apt/sources.list;
+echo "deb-src http://deb.debian.org/debian/ stable-updates main" >> /etc/apt/sources.list;
+update_packages;
+
+
+if [ $ARCH = "amd64" ]; then
+install_packages --no-install-recommends linux-image-amd64 live-boot systemd-sysv -y;
+else
+install_packages --no-install-recommends linux-image-686-pae live-boot systemd-sysv -y;
+fi
+
+install_packages network-manager net-tools iproute2 wireless-tools wget openssh-client alsa-utils firefox-esr icewm xserver-xorg-core xserver-xorg xinit xterm vim geany iputils-ping man man-db texinfo less ranger feh dosfstools isc-dhcp-client whiptail locales keyboard-configuration console-setup curl xfe lightdm rsync git conky cryptsetup debootstrap squashfs-tools xorriso isolinux syslinux-efi grub-pc-bin grub-efi-amd64-bin mtools figlet
+
+cp -vv ~/immudex-sdk/files/lightdm-gtk-greeter.conf /etc/lightdm
+
+if [ ! -d /usr/share/images/desktop-base ]; then
+  mkdir -p /usr/share/images/desktop-base;
+fi
+cp -vv ~/immudex-sdk/images/d13_wallpaper.png /usr/share/images/desktop-base;
+cp -vv ~/immudex-sdk/images/immudex_xfce_greeter_log.png /usr/share/images/desktop-base;
+cp -vv ~/immudex-sdk/images/lightdm_wallpaper.jpg /usr/share/images/desktop-base;
+cp -vv ~/immudex-sdk/images/immudex-sdk.xpm /usr/share/images/desktop-base;
+
+cp -rvv ~/immudex-sdk/files/icewm /root/.icewm;
+ln -s /usr/share/images/desktop-base/immudex-sdk.xpm /root/.icewm/themes/win95/taskbar/icewm.xpm;
+cp -vv ~/immudex-sdk/files/conkyrc /root/.conkyrc;
+cp -vv ~/immudex-sdk/files/vimrc /root/.vimrc;
+cp -vv ~/immudex-sdk/files/xinitrc /root/.xinitrc;
+ln /root/.xinitrc /root/.xsession;
+cp -vv ~/immudex-sdk/files/XTerm /root/XTerm;
+
+cp -vv ~/immudex-sdk/tools/immudex-motd2 /usr/local/bin;
+
+cat >> /etc/bash.bashrc << EOL
+if [ ! -f /tmp/.motd ]; then
+/usr/local/bin/immudex-motd2
+touch /tmp/.motd;
+fi
+EOL
+
+echo "alias immudex-chhome='export HOME=\$(pwd)'" >> /etc/bash.bashrc;
+
+echo "root:toor" | chpasswd;
+echo "immudex-sdk" > /etc/hostname
+echo "127.0.1.1 immudex-sdk" >> /etc/hosts
+tidy;
diff --git a/versions/template.sh b/versions/template.sh
new file mode 100644 (file)
index 0000000..19c6089
--- /dev/null
@@ -0,0 +1,23 @@
+#!/bin/bash
+
+function update_packages() {
+  apt update;
+  apt upgrade -y;
+}
+
+function install_packages() {
+  apt install $@ -y;
+}
+
+
+function tidy() {
+  apt-get clean;
+  apt-get clean;
+  apt-get autoremove -y;
+  apt-get autoclean;
+  rm -rf ~/greenOS;
+  rm /FILE_LIST;
+  rm /var/cache/apt/*.bin;
+  echo > ~/.bash_history;
+  history -c   
+}