]> gitweb.morketsmerke.org Git - X280.git/commitdiff
Wykorzystanie plików T530 jako bazy. Przesłanie plików na repo.
authorxf0r3m <jakubstasinski@protonmail.com>
Thu, 10 Jul 2025 16:16:09 +0000 (18:16 +0200)
committerxf0r3m <jakubstasinski@protonmail.com>
Thu, 10 Jul 2025 16:16:09 +0000 (18:16 +0200)
30 files changed:
16967093831.desktop [new file with mode: 0755]
base.sh [new file with mode: 0644]
bashrc [new file with mode: 0755]
com.teamviewer.TeamViewer2.desktop [new file with mode: 0644]
console-setup [new file with mode: 0644]
immudex-import-kdeconnect [new file with mode: 0755]
immudex-motd2 [new file with mode: 0755]
immudex-nextcloud [new file with mode: 0755]
immudex-nu.omp.json.nu-deploy [new file with mode: 0755]
immudex-run [new file with mode: 0755]
immudex-run-thunderbird [new file with mode: 0755]
immudex-updates [new file with mode: 0755]
immudex_updates.service [new file with mode: 0644]
keyboard [new file with mode: 0644]
launcher-17/17399705731.desktop [new file with mode: 0755]
launcher-17/index.html [new file with mode: 0755]
locale [new file with mode: 0644]
locale.gen [new file with mode: 0644]
morketsmerke.nmconnection [new file with mode: 0755]
nextcloud [new file with mode: 0755]
nextcloud.desktop [new file with mode: 0755]
oh-my-posh-install.sh [new file with mode: 0755]
org.keepassxc.KeePassXC.2.desktop [new file with mode: 0755]
pointers.xml [new file with mode: 0755]
sdrpp2.desktop [new file with mode: 0644]
template.sh [new file with mode: 0644]
ufw-setup [new file with mode: 0644]
ufw-setup.service [new file with mode: 0644]
whiskermenu-1.rc [new file with mode: 0644]
xfce4-panel.xml [new file with mode: 0644]

diff --git a/16967093831.desktop b/16967093831.desktop
new file mode 100755 (executable)
index 0000000..856da29
--- /dev/null
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=Thunderbird
+Comment=Uruchom thunderbirda w datastore
+Exec=/usr/local/bin/immudex-run-thunderbird
+Icon=/usr/lib/thunderbird/chrome/icons/default/default64.png
+Path=
+Terminal=false
+StartupNotify=false
diff --git a/base.sh b/base.sh
new file mode 100644 (file)
index 0000000..c5cee53
--- /dev/null
+++ b/base.sh
@@ -0,0 +1,282 @@
+#!/bin/bash
+
+set -e
+
+DEBVER="$1";
+ARCH=$(dpkg --print-architecture);
+
+if [ $ARCH = "amd64" ]; then
+  KARCH="amd64";
+else
+  KARCH="686-pae";
+fi
+
+cd;
+if [ -x /usr/bin/git ]; then 
+       git clone https://github.com/xf0r3m/immudex;
+       git clone https://git.morketsmerke.org/git/X280;
+else 
+       apt install git -y;
+       git clone https://github.com/xf0r3m/immudex;
+       git clone https://git.morketsmerke.org/git/X280;
+
+fi
+source ~/immudex/versions/template.sh;
+
+echo "deb http://deb.debian.org/debian/ ${DEBVER} main" > /etc/apt/sources.list;
+echo "deb-src http://deb.debian.org/debian/ ${DEBVER} main" >> /etc/apt/sources.list;
+echo "deb http://security.debian.org/debian-security ${DEBVER}-security main" >> /etc/apt/sources.list;
+echo "deb-src http://security.debian.org/debian-security ${DEBVER}-security main" >> /etc/apt/sources.list;
+echo "deb http://deb.debian.org/debian/ ${DEBVER}-updates main" >> /etc/apt/sources.list;
+echo "deb-src http://deb.debian.org/debian/ ${DEBVER}-updates main" >> /etc/apt/sources.list;
+update_packages;
+
+
+install_packages --no-install-recommends linux-image-${KARCH} live-boot systemd-sysv -y;
+
+install_packages tzdata locales keyboard-configuration console-setup;
+
+#dpkg-reconfigure tzdata;
+#dpkg-reconfigure locales;
+#dpkg-reconfigure keyboard-configuration;
+#dpkg-reconfigure console-setup;
+
+echo -n "Europe/Warsaw" > /etc/timezone;
+rm /etc/localtime;
+ln -s /usr/share/zoneinfo/Europe/Warsaw /etc/localtime;
+
+cp -vv ~/X280/locale.gen /etc;
+cp -vv ~/X280/locale /etc/default;
+cp -vv ~/X280/keyboard /etc/default;
+cp -vv ~/X280/console-setup /etc/default; 
+/usr/sbin/locale-gen;
+
+install_packages task-desktop task-xfce-desktop;
+
+#Dodanie pakiet 'make' - wdrożenie projektu ytfzf - 12.05.2024;
+install_packages firejail ufw cryptsetup lsof extlinux grub-efi-amd64 efibootmgr bash-completion etherwake wakeonlan cifs-utils wget figlet mpv vim-gtk3 redshift irssi nmap nfs-common remmina python3-pip ffmpeg debootstrap squashfs-tools xorriso syslinux-efi grub-pc-bin grub-efi-amd64-bin mtools dosfstools chrony python3-venv isolinux rsync mutt gimp openvpn netselect-apt gvfs-backends dnsutils lolcat thunderbird make mc blueman libspa-0.2-bluetooth screen traceroute extrepo keepassxc webext-keepassxc-browser network-manager-openvpn network-manager-openvpn-gnome usbutils
+
+#wget https://ftp.morketsmerke.org/librewolf/librewolf-133.0.3-1.en-US.linux-x86_64.tar.bz2;
+#tar -xf librewolf-133.0.3-1.en-US.linux-x86_64.tar.bz2 -C /usr/lib;
+#rm librewolf-133.0.3-1.en-US.linux-x86_64.tar.bz2
+
+#ln -s /usr/lib/librewolf/librewolf /usr/bin/librewolf;
+
+extrepo enable librewolf;
+apt update;
+install_packages librewolf;
+
+update-alternatives --remove x-www-browser /usr/bin/firefox-esr;
+update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/librewolf 70;
+
+#Missing packages
+if [ $DEBVER = "testing" ]; then
+  install_packages xfce4-notes-plugin yt-dlp;
+  head -1 /etc/apt/sources.list | sed "s/${DEBVER}/stable/" > /etc/apt/sources.list.d/stable.list;
+  apt update;
+  install_packages newsboat;
+  rm /etc/apt/sources.list.d/stable.list;
+  apt update;
+else
+  install_packages newsboat;
+  #head -1 /etc/apt/sources.list | sed "s/${DEBVER}/testing/" > /etc/apt/sources.list.d/testing.list;
+  #apt update;
+  #install_packages xfce4-notes-plugin yt-dlp;
+  #rm /etc/apt/sources.list.d/testing.list;
+  #apt update;
+fi
+if [ -f /usr/bin/youtube-dl ]; then rm /usr/bin/youtube-dl; fi
+#ln -s /usr/bin/yt-dlp /usr/bin/youtube-dl;
+
+ytdlpVer=$(curl https://github.com/yt-dlp/yt-dlp/releases.atom 2>/dev/null | grep '<title>.*</title>$' | sed -n '2p' | sed 's/\ /\n/g' | tail -1 | sed 's,</title>,,');
+wget https://github.com/yt-dlp/yt-dlp/releases/download/${ytdlpVer}/yt-dlp -O /usr/bin/yt-dlp
+ln -s /usr/bin/yt-dlp /usr/bin/youtube-dl;
+
+cd;
+
+git clone https://github.com/xf0r3m/xfcedebian;
+cd xfcedebian;
+bash install.sh;
+
+cd;
+
+git clone https://github.com/xero/figlet-fonts /usr/share/figlet-fonts;
+
+cp -vv ~/immudex/tools/bin/immudex-autostart-x4notes /usr/local/bin;
+cp -vv ~/immudex/tools/bin/immudex-branch /usr/local/bin;
+cp -vv ~/immudex/tools/bin/immudex-import-gpgkeys /usr/local/bin;
+cp -vv ~/immudex/tools/bin/immudex-import-sshkeys /usr/local/bin;
+cp -vv ~/X280/immudex-import-kdeconnect /usr/local/bin;
+cp -vv ~/immudex/tools/bin/immudex-meteo /usr/local/bin;
+cp -vv ~/immudex/tools/bin/immudex-morketsmerke /usr/local/bin;
+cp -vv ~/X280/immudex-motd2 /usr/local/bin/immudex-motd2;
+cp -vv ~/X280/immudex-run /usr/local/bin/immudex-run;
+cp -vv ~/X280/immudex-nextcloud /usr/local/bin/immudex-nextcloud;
+cp -vv ~/immudex/tools/bin/immudex-padlock /usr/local/bin;
+cp -vv ~/immudex/tools/bin/immudex-pl /usr/local/bin;
+wget https://ftp.morketsmerke.org/librewolf/immudex-secured-firefox -O /usr/local/bin/immudex-secured-firefox;
+cp -vv ~/immudex/tools/bin/immudex-shoutcasts /usr/local/bin;
+cp -vv ~/immudex/tools/bin/immudex-version /usr/local/bin;
+
+#Wdrożenie projektu ytfzf - 12.05.2024;
+install_packages fzf jq ueberzug;
+git clone https://github.com/pystardust/ytfzf /tmp/ytfzf;
+(cd /tmp/ytfzf && make install doc)
+
+cp -vv ~/immudex/tools/bin/library.sh /usr/local/bin;
+cp -vv ~/immudex/tools/bin/idle-clic /usr/local/bin;
+cp -vv ~/immudex/tools/bin/sync.sh /usr/local/bin;
+chmod +x /usr/local/bin/*;
+
+cp -vv ~/immudex/tools/sbin/immudex-create-media /usr/local/sbin;
+cp -vv ~/immudex/tools/sbin/immudex-crypt /usr/local/sbin;
+cp -vv ~/immudex/tools/sbin/immudex-hostname /usr/local/sbin;
+cp -vv ~/immudex/tools/sbin/immudex-install /usr/local/sbin;
+cp -vv ~/immudex/tools/sbin/immudex-upgrade /usr/local/sbin;
+cp -vv ~/immudex/tools/sbin/immudex-nf /usr/local/sbin;
+cp -vv ~/X280/immudex-updates /usr/local/sbin;
+chown root:root /usr/local/sbin/*;
+chmod 544 /usr/local/sbin/*;
+
+mkdir /etc/skel/.irssi
+
+cp -rvv ~/immudex/files/libreoffice /etc/skel/.config;
+cp -vv ~/immudex/files/firejail.config /etc/firejail;
+cp -vv ~/immudex/files/redshift.conf /etc/skel/.config;
+cp -vv ~/immudex/files/redshift.desktop /etc/skel/.config/autostart;
+cp -vv ~/X280/nextcloud.desktop /etc/skel/.config/autostart/nextcloud.desktop
+
+cp -rvv ~/immudex/files/sync.sh /usr/share;
+cp -vv ~/X280/org.keepassxc.KeePassXC.2.desktop /usr/share/applications/org.keepassxc.KeePassXC.2.desktop
+cp -vv ~/X280/sdrpp2.desktop /usr/share/applications/sdrpp2.desktop
+cp -vv ~/X280/com.teamviewer.TeamViewer2.desktop /usr/share/applications/com.teamviewer.TeamViewer2.desktop
+
+if [ -f /usr/share/applications/qmmp.desktop ]; then
+  ln -s /usr/share/applications/qmmp.desktop /usr/share/applications/qmmp-1.desktop;
+fi
+#cp -vv ~/immudex/files/immudex_hostname.service /etc/systemd/system;
+
+tar -xf ~/immudex/files/mozilla.tgz -C /etc/skel;
+wget  https://ftp.morketsmerke.org/librewolf/librewolf.tgz -O /tmp/librewolf.tgz;
+tar -xf /tmp/librewolf.tgz -C /etc/skel;
+
+wget https://ftp.morketsmerke.org/librewolf/16844254192.desktop -O /etc/skel/.config/xfce4/panel/launcher-5/16844254192.desktop;
+
+#Wyłączenie dla mnie immudex_hostname, ze względu na VPN
+#systemctl enable immudex_hostname.service;
+
+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 "alias immudex-changelogs='immudex-upgrade --check --print'" >> /etc/bash.bashrc;
+echo "alias immudex-version='less /run/live/medium/live/changelog'" >> /etc/bash.bashrc;
+echo "alias immudex-pt='firejail --net=none packettracer'" >> /etc/bash.bashrc;
+
+chmod u+s /usr/bin/ping;
+
+/usr/sbin/ufw default deny incoming;
+/usr/sbin/ufw default allow outgoing;
+#/usr/sbin/ufw enable;
+sed -i '/^ENABLED=/s/ENABLED=no/ENABLED=yes/' /etc/ufw/ufw.conf
+
+echo "X280" > /etc/hostname;
+echo "127.0.1.1   X280" >> /etc/hosts;
+
+# Zmiany można umieścić również tutaj jeśli dotyczą one użytkowników lub ich
+# plików konfiguracyjnych
+
+cp -vv ~/X280/immudex-run-thunderbird /usr/local/bin/immudex-run-thunderbird;
+chmod +x /usr/local/bin/*;
+
+#cp -vv ~/X280/displays.xml /etc/skel/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml;
+cp -vv ~/X280/pointers.xml /etc/skel/.config/xfce4/xfconf/xfce-perchannel-xml/pointers.xml
+mkdir /etc/skel/.config/xfce4/panel/launcher-16;
+mkdir /etc/skel/.config/xfce4/panel/launcher-17;
+cp -vv ~/X280/16967093831.desktop /etc/skel/.config/xfce4/panel/launcher-16/16967093831.desktop;
+cp -vv ~/X280/launcher-17/17399705731.desktop /etc/skel/.config/xfce4/panel/launcher-17/17399705731.desktop;
+cp -vv ~/X280/xfce4-panel.xml /etc/skel/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml;
+cp -vv ~/X280/whiskermenu-1.rc /etc/skel/.config/xfce4/panel/whiskermenu-1.rc
+cp -vv ~/X280/bashrc /etc/skel/.bashrc;
+
+echo -n "Username: ";
+read username;
+useradd -m -s /bin/bash $username;
+cp -r /etc/skel/.??* /home/${username};
+chown -R ${username}:${username} /home/${username};
+passwd $username;
+usermod -aG sudo $username;
+
+
+dd if=/dev/random bs=1M of=random count=1;
+rootPassword=$(md5sum random | awk '{printf $1}');
+rm random;
+echo "root:${rootPassword}" | chpasswd;
+usermod -L root;
+
+# Miejsce na twoje zmiany, przed poleceniem 'tidy'
+#bash ~/immudex/addons/nvidiaLatest;
+bash ~/immudex/addons/kvm;
+bash ~/X280/nextcloud;
+install_packages wireshark;
+bash ~/immudex/addons/chirp;
+bash ~/immudex/addons/iwlwifi;
+bash ~/immudex/addons/ncspot;
+bash ~/immudex/addons/lampstack;
+bash ~/immudex/addons/realtek;
+cp -vv ~/X280/morketsmerke.nmconnection /etc/NetworkManager/system-connections/morketsmerke.nmconnection
+
+chmod 600 /etc/NetworkManager/system-connections/*;
+usermod -aG www-data xf0r3m
+chown -R www-data:www-data /var/www
+chmod -R 775 /var/www;
+cp -vv ~/X280/oh-my-posh-install.sh /tmp/oh-my-posh-install.sh;
+bash /tmp/oh-my-posh-install.sh
+mv /root/.cache/oh-my-posh /usr/share;
+rm /tmp/oh-my-posh-install.sh;
+cp -vv ~/X280/immudex-nu.omp.json.nu-deploy /usr/share/oh-my-posh/immudex-nu.omp.json;
+cd
+MLDepsUrl="https://gitweb.morketsmerke.org/?p=ML.git;a=blob_plain;f=dependecies.txt;hb=5e30c5b6d7f490bfdfffaa2cff615dc794534f8a";
+install_packages $(curl "$MLDepsUrl" 2> /dev/null | awk '{printf $1" "}')
+
+cd /tmp
+git clone https://git.morketsmerke.org/git/backup
+bash backup/cisco_pt.sh
+
+git clone https://github.com/aristocratos/bashtop.git
+cd bashtop;
+sudo make install;
+cd ..
+
+
+wget ftp.morketsmerke.org/~xf0r3m/X280/rtl_sdr_driver
+bash rtl_sdr_driver;
+rm -rf ~/rtl-sdr-blog;
+usermod -aG plugdev xf0r3m
+
+install_packages libfftw3-dev libglfw3-dev libvolk2-dev librtaudio-dev libzstd-dev;
+wget https://github.com/AlexandreRouma/SDRPlusPlus/releases/download/nightly/sdrpp_debian_bookworm_amd64.deb;
+dpkg -i sdrpp_debian_bookworm_amd64.deb;
+
+apt update;
+apt upgrade -y
+
+cd /tmp
+wget https://download.teamviewer.com/download/linux/teamviewer_amd64.deb
+apt install -y ./teamviewer_amd64.deb
+kill $(pidof gpg-agent)
+
+install_packages kdeconnect kaccounts-providers;
+cp -vv ~/X280/ufw-setup.service /etc/systemd/system;
+systemctl enable ufw-setup.service;
+
+cp -vv ~/X280/ufw-setup /usr/local/sbin/ufw-setup;
+chmod +x /usr/local/sbin/ufw-setup;
+
+rm -rf ~/X280
+
+tidy;
diff --git a/bashrc b/bashrc
new file mode 100755 (executable)
index 0000000..1f121d0
--- /dev/null
+++ b/bashrc
@@ -0,0 +1,191 @@
+# ~/.bashrc: executed by bash(1) for non-login shells.
+# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
+# for examples
+
+# If not running interactively, don't do anything
+case $- in
+    *i*) ;;
+      *) return;;
+esac
+
+# don't put duplicate lines or lines starting with space in the history.
+# See bash(1) for more options
+HISTCONTROL=ignoreboth
+
+# append to the history file, don't overwrite it
+shopt -s histappend
+
+# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
+HISTSIZE=1000
+HISTFILESIZE=2000
+
+# check the window size after each command and, if necessary,
+# update the values of LINES and COLUMNS.
+shopt -s checkwinsize
+
+# If set, the pattern "**" used in a pathname expansion context will
+# match all files and zero or more directories and subdirectories.
+#shopt -s globstar
+
+# make less more friendly for non-text input files, see lesspipe(1)
+#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
+
+# set variable identifying the chroot you work in (used in the prompt below)
+if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
+    debian_chroot=$(cat /etc/debian_chroot)
+fi
+
+# set a fancy prompt (non-color, unless we know we "want" color)
+case "$TERM" in
+    xterm-color|*-256color) color_prompt=yes;;
+esac
+
+# uncomment for a colored prompt, if the terminal has the capability; turned
+# off by default to not distract the user: the focus in a terminal window
+# should be on the output of commands, not on the prompt
+#force_color_prompt=yes
+
+if [ -n "$force_color_prompt" ]; then
+    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
+       # We have color support; assume it's compliant with Ecma-48
+       # (ISO/IEC-6429). (Lack of such support is extremely rare, and such
+       # a case would tend to support setf rather than setaf.)
+       color_prompt=yes
+    else
+       color_prompt=
+    fi
+fi
+
+if [ "$color_prompt" = yes ]; then
+    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
+else
+    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
+fi
+unset color_prompt force_color_prompt
+
+# If this is an xterm set the title to user@host:dir
+case "$TERM" in
+xterm*|rxvt*)
+    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
+    ;;
+*)
+    ;;
+esac
+
+# enable color support of ls and also add handy aliases
+if [ -x /usr/bin/dircolors ]; then
+    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
+    alias ls='ls --color=auto'
+    #alias dir='dir --color=auto'
+    #alias vdir='vdir --color=auto'
+
+    #alias grep='grep --color=auto'
+    #alias fgrep='fgrep --color=auto'
+    #alias egrep='egrep --color=auto'
+fi
+
+# colored GCC warnings and errors
+#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
+
+# some more ls aliases
+#alias ll='ls -l'
+#alias la='ls -A'
+#alias l='ls -CF'
+
+# Alias definitions.
+# You may want to put all your additions into a separate file like
+# ~/.bash_aliases, instead of adding them here directly.
+# See /usr/share/doc/bash-doc/examples in the bash-doc package.
+
+if [ -f ~/.bash_aliases ]; then
+    . ~/.bash_aliases
+fi
+
+# enable programmable completion features (you don't need to enable
+# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
+# sources /etc/bash.bashrc).
+if ! shopt -oq posix; then
+  if [ -f /usr/share/bash-completion/bash_completion ]; then
+    . /usr/share/bash-completion/bash_completion
+  elif [ -f /etc/bash_completion ]; then
+    . /etc/bash_completion
+  fi
+fi
+export POSH_THEME=/usr/share/oh-my-posh/immudex-nu.omp.json
+export POSH_SHELL_VERSION=$BASH_VERSION
+export POWERLINE_COMMAND="oh-my-posh"
+export POSH_PID=$$
+export CONDA_PROMPT_MODIFIER=false
+omp_start_time=""
+
+# start timer on command start
+PS0='${omp_start_time:0:$((omp_start_time="$(_omp_start_timer)",0))}$(_omp_ftcs_command_start)'
+# set secondary prompt
+PS2="$(/usr/local/bin/oh-my-posh print secondary --config="$POSH_THEME" --shell=bash --shell-version="$BASH_VERSION")"
+
+function _set_posh_cursor_position() {
+    # not supported in Midnight Commander
+    # see https://github.com/JanDeDobbeleer/oh-my-posh/issues/3415
+    if [[ "false" != "true" ]] || [[ -v MC_SID ]]; then
+        return
+    fi
+
+    local oldstty=$(stty -g)
+    stty raw -echo min 0
+
+    local COL
+    local ROW
+    IFS=';' read -sdR -p $'\E[6n' ROW COL
+
+    stty $oldstty
+
+    export POSH_CURSOR_LINE=${ROW#*[}
+    export POSH_CURSOR_COLUMN=${COL}
+}
+
+function _omp_start_timer() {
+    /usr/local/bin/oh-my-posh get millis
+}
+
+function _omp_ftcs_command_start() {
+    if [ "false" == "true" ]; then
+        printf "\e]133;C\a"
+    fi
+}
+
+# template function for context loading
+function set_poshcontext() {
+    return
+}
+
+function _omp_hook() {
+    local ret=$? pipeStatus=(${PIPESTATUS[@]})
+    if [[ "${#BP_PIPESTATUS[@]}" -gt "${#pipeStatus[@]}" ]]; then
+        pipeStatus=(${BP_PIPESTATUS[@]})
+    fi
+
+    local omp_stack_count=$((${#DIRSTACK[@]} - 1))
+    local omp_elapsed=-1
+    local no_exit_code="true"
+
+    if [[ -n "$omp_start_time" ]]; then
+        local omp_now=$(/usr/local/bin/oh-my-posh get millis --shell=bash)
+        omp_elapsed=$((omp_now-omp_start_time))
+        omp_start_time=""
+        no_exit_code="false"
+    fi
+
+    set_poshcontext
+    _set_posh_cursor_position
+
+    PS1="$(/usr/local/bin/oh-my-posh print primary --config="$POSH_THEME" --shell=bash --shell-version="$BASH_VERSION" --status="$ret" --pipestatus="${pipeStatus[*]}" --execution-time="$omp_elapsed" --stack-count="$omp_stack_count" --no-status="$no_exit_code" | tr -d '\0')"
+    return $ret
+}
+
+if [ "$TERM" != "linux" ] && [ -x "$(command -v /usr/local/bin/oh-my-posh)" ] && ! [[ "$PROMPT_COMMAND" =~ "_omp_hook" ]]; then
+    PROMPT_COMMAND="_omp_hook; $PROMPT_COMMAND"
+fi
+
+if [ "false" == "true" ]; then
+    echo ""
+fi
diff --git a/com.teamviewer.TeamViewer2.desktop b/com.teamviewer.TeamViewer2.desktop
new file mode 100644 (file)
index 0000000..267bbbf
--- /dev/null
@@ -0,0 +1,12 @@
+[Desktop Entry]
+Version=1.0
+Encoding=UTF-8
+Type=Application
+Categories=Network;
+
+Name=TeamViewer (immudex)
+Comment=Remote control solution.
+Exec=/usr/local/bin/immudex-run /opt/teamviewer/tv_bin/script/teamviewer
+StartupWMClass=TeamViewer
+
+Icon=TeamViewer
diff --git a/console-setup b/console-setup
new file mode 100644 (file)
index 0000000..24bda85
--- /dev/null
@@ -0,0 +1,16 @@
+# CONFIGURATION FILE FOR SETUPCON
+
+# Consult the console-setup(5) manual page.
+
+ACTIVE_CONSOLES="/dev/tty[1-6]"
+
+CHARMAP="UTF-8"
+
+CODESET="Lat2"
+FONTFACE="Fixed"
+FONTSIZE="8x16"
+
+VIDEOMODE=
+
+# The following is an example how to use a braille font
+# FONT='lat9w-08.psf.gz brl-8x8.psf'
diff --git a/immudex-import-kdeconnect b/immudex-import-kdeconnect
new file mode 100755 (executable)
index 0000000..7571eef
--- /dev/null
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+if [ ! -d /home/${USER}/.config/kdeconnect ]; then
+  mkdir /home/${USER}/.config/kdeconnect;
+fi
+
+cp -prvv ~/kdeconnect/* /home/${USER}/.config/kdeconnect;
diff --git a/immudex-motd2 b/immudex-motd2
new file mode 100755 (executable)
index 0000000..e5a040c
--- /dev/null
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+# Deps: figlet lolcat
+# Deps GH: https://github.com/xero/figlet-fonts -> /usr/share/figlet-fonts;
+
+echo "X280" | /usr/bin/figlet -f /usr/share/figlet-fonts/3d.flf | lolcat
+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";
+echo -e "  \tMount points:\tFree/Total\t(Usage%)";
+mountPointsList="/$ /home$";
+for mountPoint in $mountPointsList; do
+  if $(df -h 2>/dev/null | grep -q "${mountPoint}"); then
+    diskSize=$(df -h 2> /dev/null | grep "${mountPoint}" | awk '{printf $2}');
+    diskFree=$(df -h 2> /dev/null | grep "${mountPoint}" | awk '{printf $4}');
+    diskUsage_perc=$(df -h 2> /dev/null | grep "${mountPoint}" | sed 's/%//' | awk '{printf $5}');
+    echo -e "\t$(echo $mountPoint | sed 's,\$,,'):\t\t${diskFree}/${diskSize}\t(${diskUsage_perc}%)";
+  fi
+done
+echo -e "  \tPROCESSES: $(ps -aux | wc -l | awk '{printf $1}')";
+if $(uptime | grep -q 'day'); then
+  utime=$(uptime | awk '{printf $3" "$4" "$5}' | sed -e 's/\,$//' -e 's,:,h ,');
+  echo -e "\tUPTIME: ${utime}m";
+else
+  utime=$(uptime | awk '{printf $3}' | sed -e 's/,//' -e 's,:,h ,');
+  if $(echo $utime | grep -q "h"); then
+    echo -e "  \tUPTIME: ${utime}m";
+  else
+    echo -e "  \tUPTIME: 0h ${utime}m";
+  fi
+fi
+echo -e " \t$(uptime | grep -o "load.*$" | tr [a-z] [A-Z])";
+echo;
+echo -e "morketsmerke.org @ 2025 https://github.com/xf0r3m/immudex";
+echo;
+echo "====================================================================";
diff --git a/immudex-nextcloud b/immudex-nextcloud
new file mode 100755 (executable)
index 0000000..792f536
--- /dev/null
@@ -0,0 +1,11 @@
+#!/bin/bash
+export HOME='/ic0';
+
+while [ true ]; do
+  if [ -d /ic0/wymiana ]; then
+    /usr/local/bin/nextcloud;
+    exit 0;
+  else
+    sleep 5;
+  fi
+done
diff --git a/immudex-nu.omp.json.nu-deploy b/immudex-nu.omp.json.nu-deploy
new file mode 100755 (executable)
index 0000000..c641806
--- /dev/null
@@ -0,0 +1,68 @@
+{
+  "$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
+  "blocks": [
+    {
+      "alignment": "left",
+      "segments": [
+        {
+          "background": "#000000",
+          "foreground": "#487cff",
+          "style": "plain",
+          "template": "<b>\udb86\ude4a</b> {{ .UserName }}@{{ .HostName }}/",
+          "type": "session"
+        },
+        {
+          "background": "#000000",
+          "foreground": "#5ac8ea",
+          "properties": {
+            "style": "folder"
+          },
+          "style": "plain",
+          "template": "\ue5ff {{ .Path }}/",
+          "type": "path"
+        },
+        {
+          "background": "#000000",
+          "foreground": "#de076f",
+          "properties": {
+            "branch_icon": "",
+            "fetch_upstream_icon": true
+          },
+          "style": "plain",
+          "template": "{{ .UpstreamIcon }}{{ .HEAD }}/",
+          "type": "git"
+        },
+        {
+          "background": "#000000",
+          "foreground": "#491545",
+          "properties": {
+            "paused_icon": "\uf04c ",
+            "playing_icon": "\ue602 ",
+            "stopped_icon": "\uf04d ",
+            "track_separator": " - "
+          },
+          "style": "plain",
+          "template": "\uf1bc {{ .Icon }}{{ if ne .Status \"stopped\" }}{{ .Artist }} - {{ .Track }}{{ end }}/",
+          "type": "spotify"
+        },
+        {
+          "background": "#000000",
+          "foreground": "#05b92d",
+         "foreground_templates": [
+            "{{ if gt .Code 0 }}#f1184c{{ end }}"
+          ],
+          "properties": {
+            "always_enabled": true
+          },
+          "style": "plain",
+          "template": "<f>\udb82\udfc6</f>",
+          "trailing_diamond": "\ue0b4",
+          "type": "status"
+        }
+      ],
+      "type": "prompt"
+    }
+  ],
+  "final_space": true,
+  "version": 2
+}
diff --git a/immudex-run b/immudex-run
new file mode 100755 (executable)
index 0000000..0f9fce2
--- /dev/null
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+if [ $(ls /ic0 | wc -w) -gt 0 ]; then
+  export HOME=/ic0;
+  $1;
+else
+  notify-send "Run" "Datastore seems to be empty." --icon=dialog-error
+fi
+
diff --git a/immudex-run-thunderbird b/immudex-run-thunderbird
new file mode 100755 (executable)
index 0000000..c08389a
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+export HOME=/ic0;
+thunderbird;
diff --git a/immudex-updates b/immudex-updates
new file mode 100755 (executable)
index 0000000..42e92eb
--- /dev/null
@@ -0,0 +1,73 @@
+#!/bin/bash
+
+RED="\e[31m";
+GREEN="\e[32m";
+YELLOW="\e[33m";
+ENDCOLOR="\e[0m";
+
+#FILE="/tmp/immudex-updates.txt";
+
+function getVerFromRSSFeed() {
+  URL=$1;
+  echo $(curl $URL 2> /dev/null | grep '<title>' | sed -n '2p' | sed -e 's/<title>//g' -e 's,</title>,,g' | awk '{printf $1}')
+}
+echo "Obtaining updates information:";
+echo "  |";
+if [ -x /usr/bin/librewolf ]; then
+  URL="https://codeberg.org/librewolf/source/releases.rss";
+  newLibrewolfVer=$(getVerFromRSSFeed $URL);
+  currentLibrewolfVer=$(apt list --installed 2>/dev/null | grep 'librewolf' | awk '{printf $2}');
+  if ! [ "$currentLibrewolfVer" = "$newLibrewolfVer" ]; then
+    echo -e "  \`- New Librewolf version (${GREEN}${newLibrewolfVer}${ENDCOLOR}) is available.";
+    echo "  |";
+  fi
+fi
+
+if [ -x /usr/local/bin/ncspot ]; then
+  URL="https://github.com/hrkfdn/ncspot/releases.atom";
+  newNcspotVer=$(getVerFromRSSFeed $URL);
+  currentNcspotVer=$(ncspot -V | awk '{printf $2}');
+  if ! [ "$currentNcspotVer" = "$newNcspotVer" ]; then
+    echo -e "  \`- New ncspot version (${GREEN}${newNcspotVer}${ENDCOLOR}) is available.";
+    echo "  |";
+  fi
+fi
+
+if [ -x /usr/local/bin/nu ]; then
+  URL="https://github.com/nushell/nushell/releases.atom";
+  newNushellVer=$(getVerFromRSSFeed $URL);
+  currentNushellVer=$(nu -v | awk '{printf $1}');
+  if ! [ "$currentNushellVer" = "$NewNushellVer" ]; then
+    echo -e "  \`- New nushell version (${GREEN}${newNushellVer}${ENDCOLOR}) is available.";
+    echo "  |";
+  fi
+fi
+
+if [ -x /usr/local/bin/nextcloud ]; then
+  currentNextcloudVersion=$(/usr/local/bin/nextcloud -v | grep '^Nextcloud version' | awk '{printf $3}');
+  URL="https://github.com/nextcloud-releases/desktop/releases.atom";
+  newNextcloudVersion=$(curl $URL 2> /dev/null | grep -o '<title>.*</title>' | grep -v 'rc' | sed -n '2p' | sed -e 's,<title>,,' -e 's,</title>,,' | awk '{printf $2}');
+  if ! [ "$currentNextcloudVersion" = "$newNextcloudVersion" ]; then
+    echo -e "  \`- New Nextcloud version (${GREEN}${newNextcloudVersion}${ENDCOLOR}) is available.";
+    echo "  |";
+  fi
+fi
+
+debianVersion=$(cut -d "." -f 1 /etc/debian_version);
+URL="https://micronews.debian.org/feeds/feed.rss";
+newDebianVersion=$(curl $URL 2>/dev/null | grep -o "Updated Debian ${debianVersion}: ${debianVersion}.[0-9]*" | sed -n '1p' | awk '{printf $4}');
+if ! [ "$newDebianVersion" = "$(cat /etc/debian_version)" ]; then
+  echo -e "  \`- New Debian version (${YELLOW}${newDebianVersion}${ENDCOLOR}).";
+  echo "  |";
+fi
+
+apt update > /dev/null 2>&1;
+packagesToUpdate=$(expr $(apt list --upgradable 2> /dev/null | wc -l) - 1);
+if [ $packagesToUpdate -lt 0 ]; then packagesToUpdate=0; fi
+
+if [ $packagesToUpdate -lt 10 ]; then color=${GREEN};
+elif [ $packagesToUpdate -lt 50 ]; then color=${YELLOW};
+else color=${RED};
+fi
+
+echo -e "  \`- ${color}${packagesToUpdate}${ENDCOLOR} packages ready to update."; 
diff --git a/immudex_updates.service b/immudex_updates.service
new file mode 100644 (file)
index 0000000..d3291ed
--- /dev/null
@@ -0,0 +1,11 @@
+[Unit]
+Description=Refresh Debian packages list
+After=network-online.target
+After=lightdm.service
+Wants=network-online.target
+[Service]
+Type=OneShot
+ExecStart=/usr/local/sbin/immudex-updates-wlog
+RemainAfterExit=yes
+[Install]
+WantedBy=multi-user.target
diff --git a/keyboard b/keyboard
new file mode 100644 (file)
index 0000000..be82a64
--- /dev/null
+++ b/keyboard
@@ -0,0 +1,10 @@
+# KEYBOARD CONFIGURATION FILE
+
+# Consult the keyboard(5) manual page.
+
+XKBMODEL="pc105"
+XKBLAYOUT="pl"
+XKBVARIANT=""
+XKBOPTIONS="lv3:ralt_switch"
+
+BACKSPACE="guess"
diff --git a/launcher-17/17399705731.desktop b/launcher-17/17399705731.desktop
new file mode 100755 (executable)
index 0000000..192f29c
--- /dev/null
@@ -0,0 +1,20 @@
+[Desktop Entry]
+Name=Firefox ESR
+Name[pl]=Firefox ESR
+Comment=Browse the World Wide Web
+Comment[pl]=Przeglądanie stron WWW 
+GenericName=Web Browser
+GenericName[pl]=Przeglądarka WWW
+X-GNOME-FullName=Firefox ESR Web Browser
+X-GNOME-FullName[pl]=Przeglądarka WWW Firefox ESR
+Exec=/usr/local/bin/immudex-run firefox-esr
+Terminal=false
+X-MultipleArgs=false
+Type=Application
+Icon=firefox-esr
+Categories=Network;WebBrowser;
+MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;
+StartupWMClass=firefox-esr
+StartupNotify=true
+X-XFCE-Source=file:///usr/share/applications/firefox-esr.desktop
+Path=
diff --git a/launcher-17/index.html b/launcher-17/index.html
new file mode 100755 (executable)
index 0000000..ab1d539
--- /dev/null
@@ -0,0 +1 @@
+<h1>It works</h1>
diff --git a/locale b/locale
new file mode 100644 (file)
index 0000000..fffa3ef
--- /dev/null
+++ b/locale
@@ -0,0 +1,2 @@
+#  File generated by update-locale
+LANG=pl_PL.UTF-8
diff --git a/locale.gen b/locale.gen
new file mode 100644 (file)
index 0000000..57628d7
--- /dev/null
@@ -0,0 +1,506 @@
+# This file lists locales that you wish to have built. You can find a list
+# of valid supported locales at /usr/share/i18n/SUPPORTED, and you can add
+# user defined locales to /usr/local/share/i18n/SUPPORTED. If you change
+# this file, you need to rerun locale-gen.
+
+
+# C.UTF-8 UTF-8
+# aa_DJ ISO-8859-1
+# aa_DJ.UTF-8 UTF-8
+# aa_ER UTF-8
+# aa_ER@saaho UTF-8
+# aa_ET UTF-8
+# af_ZA ISO-8859-1
+# af_ZA.UTF-8 UTF-8
+# agr_PE UTF-8
+# ak_GH UTF-8
+# am_ET UTF-8
+# an_ES ISO-8859-15
+# an_ES.UTF-8 UTF-8
+# anp_IN UTF-8
+# ar_AE ISO-8859-6
+# ar_AE.UTF-8 UTF-8
+# ar_BH ISO-8859-6
+# ar_BH.UTF-8 UTF-8
+# ar_DZ ISO-8859-6
+# ar_DZ.UTF-8 UTF-8
+# ar_EG ISO-8859-6
+# ar_EG.UTF-8 UTF-8
+# ar_IN UTF-8
+# ar_IQ ISO-8859-6
+# ar_IQ.UTF-8 UTF-8
+# ar_JO ISO-8859-6
+# ar_JO.UTF-8 UTF-8
+# ar_KW ISO-8859-6
+# ar_KW.UTF-8 UTF-8
+# ar_LB ISO-8859-6
+# ar_LB.UTF-8 UTF-8
+# ar_LY ISO-8859-6
+# ar_LY.UTF-8 UTF-8
+# ar_MA ISO-8859-6
+# ar_MA.UTF-8 UTF-8
+# ar_OM ISO-8859-6
+# ar_OM.UTF-8 UTF-8
+# ar_QA ISO-8859-6
+# ar_QA.UTF-8 UTF-8
+# ar_SA ISO-8859-6
+# ar_SA.UTF-8 UTF-8
+# ar_SD ISO-8859-6
+# ar_SD.UTF-8 UTF-8
+# ar_SS UTF-8
+# ar_SY ISO-8859-6
+# ar_SY.UTF-8 UTF-8
+# ar_TN ISO-8859-6
+# ar_TN.UTF-8 UTF-8
+# ar_YE ISO-8859-6
+# ar_YE.UTF-8 UTF-8
+# as_IN UTF-8
+# ast_ES ISO-8859-15
+# ast_ES.UTF-8 UTF-8
+# ayc_PE UTF-8
+# az_AZ UTF-8
+# az_IR UTF-8
+# be_BY CP1251
+# be_BY.UTF-8 UTF-8
+# be_BY@latin UTF-8
+# bem_ZM UTF-8
+# ber_DZ UTF-8
+# ber_MA UTF-8
+# bg_BG CP1251
+# bg_BG.UTF-8 UTF-8
+# bhb_IN.UTF-8 UTF-8
+# bho_IN UTF-8
+# bho_NP UTF-8
+# bi_VU UTF-8
+# bn_BD UTF-8
+# bn_IN UTF-8
+# bo_CN UTF-8
+# bo_IN UTF-8
+# br_FR ISO-8859-1
+# br_FR.UTF-8 UTF-8
+# br_FR@euro ISO-8859-15
+# brx_IN UTF-8
+# bs_BA ISO-8859-2
+# bs_BA.UTF-8 UTF-8
+# byn_ER UTF-8
+# ca_AD ISO-8859-15
+# ca_AD.UTF-8 UTF-8
+# ca_ES ISO-8859-1
+# ca_ES.UTF-8 UTF-8
+# ca_ES@euro ISO-8859-15
+# ca_ES@valencia UTF-8
+# ca_FR ISO-8859-15
+# ca_FR.UTF-8 UTF-8
+# ca_IT ISO-8859-15
+# ca_IT.UTF-8 UTF-8
+# ce_RU UTF-8
+# chr_US UTF-8
+# ckb_IQ UTF-8
+# cmn_TW UTF-8
+# crh_UA UTF-8
+# cs_CZ ISO-8859-2
+# cs_CZ.UTF-8 UTF-8
+# csb_PL UTF-8
+# cv_RU UTF-8
+# cy_GB ISO-8859-14
+# cy_GB.UTF-8 UTF-8
+# da_DK ISO-8859-1
+# da_DK.UTF-8 UTF-8
+# de_AT ISO-8859-1
+# de_AT.UTF-8 UTF-8
+# de_AT@euro ISO-8859-15
+# de_BE ISO-8859-1
+# de_BE.UTF-8 UTF-8
+# de_BE@euro ISO-8859-15
+# de_CH ISO-8859-1
+# de_CH.UTF-8 UTF-8
+# de_DE ISO-8859-1
+# de_DE.UTF-8 UTF-8
+# de_DE@euro ISO-8859-15
+# de_IT ISO-8859-1
+# de_IT.UTF-8 UTF-8
+# de_LI.UTF-8 UTF-8
+# de_LU ISO-8859-1
+# de_LU.UTF-8 UTF-8
+# de_LU@euro ISO-8859-15
+# doi_IN UTF-8
+# dsb_DE UTF-8
+# dv_MV UTF-8
+# dz_BT UTF-8
+# el_CY ISO-8859-7
+# el_CY.UTF-8 UTF-8
+# el_GR ISO-8859-7
+# el_GR.UTF-8 UTF-8
+# el_GR@euro ISO-8859-7
+# en_AG UTF-8
+# en_AU ISO-8859-1
+# en_AU.UTF-8 UTF-8
+# en_BW ISO-8859-1
+# en_BW.UTF-8 UTF-8
+# en_CA ISO-8859-1
+# en_CA.UTF-8 UTF-8
+# en_DK ISO-8859-1
+# en_DK.ISO-8859-15 ISO-8859-15
+# en_DK.UTF-8 UTF-8
+# en_GB ISO-8859-1
+# en_GB.ISO-8859-15 ISO-8859-15
+# en_GB.UTF-8 UTF-8
+# en_HK ISO-8859-1
+# en_HK.UTF-8 UTF-8
+# en_IE ISO-8859-1
+# en_IE.UTF-8 UTF-8
+# en_IE@euro ISO-8859-15
+# en_IL UTF-8
+# en_IN UTF-8
+# en_NG UTF-8
+# en_NZ ISO-8859-1
+# en_NZ.UTF-8 UTF-8
+# en_PH ISO-8859-1
+# en_PH.UTF-8 UTF-8
+# en_SC.UTF-8 UTF-8
+# en_SG ISO-8859-1
+# en_SG.UTF-8 UTF-8
+# en_US ISO-8859-1
+# en_US.ISO-8859-15 ISO-8859-15
+# en_US.UTF-8 UTF-8
+# en_ZA ISO-8859-1
+# en_ZA.UTF-8 UTF-8
+# en_ZM UTF-8
+# en_ZW ISO-8859-1
+# en_ZW.UTF-8 UTF-8
+# eo UTF-8
+# es_AR ISO-8859-1
+# es_AR.UTF-8 UTF-8
+# es_BO ISO-8859-1
+# es_BO.UTF-8 UTF-8
+# es_CL ISO-8859-1
+# es_CL.UTF-8 UTF-8
+# es_CO ISO-8859-1
+# es_CO.UTF-8 UTF-8
+# es_CR ISO-8859-1
+# es_CR.UTF-8 UTF-8
+# es_CU UTF-8
+# es_DO ISO-8859-1
+# es_DO.UTF-8 UTF-8
+# es_EC ISO-8859-1
+# es_EC.UTF-8 UTF-8
+# es_ES ISO-8859-1
+# es_ES.UTF-8 UTF-8
+# es_ES@euro ISO-8859-15
+# es_GT ISO-8859-1
+# es_GT.UTF-8 UTF-8
+# es_HN ISO-8859-1
+# es_HN.UTF-8 UTF-8
+# es_MX ISO-8859-1
+# es_MX.UTF-8 UTF-8
+# es_NI ISO-8859-1
+# es_NI.UTF-8 UTF-8
+# es_PA ISO-8859-1
+# es_PA.UTF-8 UTF-8
+# es_PE ISO-8859-1
+# es_PE.UTF-8 UTF-8
+# es_PR ISO-8859-1
+# es_PR.UTF-8 UTF-8
+# es_PY ISO-8859-1
+# es_PY.UTF-8 UTF-8
+# es_SV ISO-8859-1
+# es_SV.UTF-8 UTF-8
+# es_US ISO-8859-1
+# es_US.UTF-8 UTF-8
+# es_UY ISO-8859-1
+# es_UY.UTF-8 UTF-8
+# es_VE ISO-8859-1
+# es_VE.UTF-8 UTF-8
+# et_EE ISO-8859-1
+# et_EE.ISO-8859-15 ISO-8859-15
+# et_EE.UTF-8 UTF-8
+# eu_ES ISO-8859-1
+# eu_ES.UTF-8 UTF-8
+# eu_ES@euro ISO-8859-15
+# eu_FR ISO-8859-1
+# eu_FR.UTF-8 UTF-8
+# eu_FR@euro ISO-8859-15
+# fa_IR UTF-8
+# ff_SN UTF-8
+# fi_FI ISO-8859-1
+# fi_FI.UTF-8 UTF-8
+# fi_FI@euro ISO-8859-15
+# fil_PH UTF-8
+# fo_FO ISO-8859-1
+# fo_FO.UTF-8 UTF-8
+# fr_BE ISO-8859-1
+# fr_BE.UTF-8 UTF-8
+# fr_BE@euro ISO-8859-15
+# fr_CA ISO-8859-1
+# fr_CA.UTF-8 UTF-8
+# fr_CH ISO-8859-1
+# fr_CH.UTF-8 UTF-8
+# fr_FR ISO-8859-1
+# fr_FR.UTF-8 UTF-8
+# fr_FR@euro ISO-8859-15
+# fr_LU ISO-8859-1
+# fr_LU.UTF-8 UTF-8
+# fr_LU@euro ISO-8859-15
+# fur_IT UTF-8
+# fy_DE UTF-8
+# fy_NL UTF-8
+# ga_IE ISO-8859-1
+# ga_IE.UTF-8 UTF-8
+# ga_IE@euro ISO-8859-15
+# gd_GB ISO-8859-15
+# gd_GB.UTF-8 UTF-8
+# gez_ER UTF-8
+# gez_ER@abegede UTF-8
+# gez_ET UTF-8
+# gez_ET@abegede UTF-8
+# gl_ES ISO-8859-1
+# gl_ES.UTF-8 UTF-8
+# gl_ES@euro ISO-8859-15
+# gu_IN UTF-8
+# gv_GB ISO-8859-1
+# gv_GB.UTF-8 UTF-8
+# ha_NG UTF-8
+# hak_TW UTF-8
+# he_IL ISO-8859-8
+# he_IL.UTF-8 UTF-8
+# hi_IN UTF-8
+# hif_FJ UTF-8
+# hne_IN UTF-8
+# hr_HR ISO-8859-2
+# hr_HR.UTF-8 UTF-8
+# hsb_DE ISO-8859-2
+# hsb_DE.UTF-8 UTF-8
+# ht_HT UTF-8
+# hu_HU ISO-8859-2
+# hu_HU.UTF-8 UTF-8
+# hy_AM UTF-8
+# hy_AM.ARMSCII-8 ARMSCII-8
+# ia_FR UTF-8
+# id_ID ISO-8859-1
+# id_ID.UTF-8 UTF-8
+# ig_NG UTF-8
+# ik_CA UTF-8
+# is_IS ISO-8859-1
+# is_IS.UTF-8 UTF-8
+# it_CH ISO-8859-1
+# it_CH.UTF-8 UTF-8
+# it_IT ISO-8859-1
+# it_IT.UTF-8 UTF-8
+# it_IT@euro ISO-8859-15
+# iu_CA UTF-8
+# ja_JP.EUC-JP EUC-JP
+# ja_JP.UTF-8 UTF-8
+# ka_GE GEORGIAN-PS
+# ka_GE.UTF-8 UTF-8
+# kab_DZ UTF-8
+# kk_KZ PT154
+# kk_KZ.RK1048 RK1048
+# kk_KZ.UTF-8 UTF-8
+# kl_GL ISO-8859-1
+# kl_GL.UTF-8 UTF-8
+# km_KH UTF-8
+# kn_IN UTF-8
+# ko_KR.EUC-KR EUC-KR
+# ko_KR.UTF-8 UTF-8
+# kok_IN UTF-8
+# ks_IN UTF-8
+# ks_IN@devanagari UTF-8
+# ku_TR ISO-8859-9
+# ku_TR.UTF-8 UTF-8
+# kw_GB ISO-8859-1
+# kw_GB.UTF-8 UTF-8
+# ky_KG UTF-8
+# lb_LU UTF-8
+# lg_UG ISO-8859-10
+# lg_UG.UTF-8 UTF-8
+# li_BE UTF-8
+# li_NL UTF-8
+# lij_IT UTF-8
+# ln_CD UTF-8
+# lo_LA UTF-8
+# lt_LT ISO-8859-13
+# lt_LT.UTF-8 UTF-8
+# lv_LV ISO-8859-13
+# lv_LV.UTF-8 UTF-8
+# lzh_TW UTF-8
+# mag_IN UTF-8
+# mai_IN UTF-8
+# mai_NP UTF-8
+# mfe_MU UTF-8
+# mg_MG ISO-8859-15
+# mg_MG.UTF-8 UTF-8
+# mhr_RU UTF-8
+# mi_NZ ISO-8859-13
+# mi_NZ.UTF-8 UTF-8
+# miq_NI UTF-8
+# mjw_IN UTF-8
+# mk_MK ISO-8859-5
+# mk_MK.UTF-8 UTF-8
+# ml_IN UTF-8
+# mn_MN UTF-8
+# mni_IN UTF-8
+# mnw_MM UTF-8
+# mr_IN UTF-8
+# ms_MY ISO-8859-1
+# ms_MY.UTF-8 UTF-8
+# mt_MT ISO-8859-3
+# mt_MT.UTF-8 UTF-8
+# my_MM UTF-8
+# nan_TW UTF-8
+# nan_TW@latin UTF-8
+# nb_NO ISO-8859-1
+# nb_NO.UTF-8 UTF-8
+# nds_DE UTF-8
+# nds_NL UTF-8
+# ne_NP UTF-8
+# nhn_MX UTF-8
+# niu_NU UTF-8
+# niu_NZ UTF-8
+# nl_AW UTF-8
+# nl_BE ISO-8859-1
+# nl_BE.UTF-8 UTF-8
+# nl_BE@euro ISO-8859-15
+# nl_NL ISO-8859-1
+# nl_NL.UTF-8 UTF-8
+# nl_NL@euro ISO-8859-15
+# nn_NO ISO-8859-1
+# nn_NO.UTF-8 UTF-8
+# nr_ZA UTF-8
+# nso_ZA UTF-8
+# oc_FR ISO-8859-1
+# oc_FR.UTF-8 UTF-8
+# om_ET UTF-8
+# om_KE ISO-8859-1
+# om_KE.UTF-8 UTF-8
+# or_IN UTF-8
+# os_RU UTF-8
+# pa_IN UTF-8
+# pa_PK UTF-8
+# pap_AW UTF-8
+# pap_CW UTF-8
+# pl_PL ISO-8859-2
+pl_PL.UTF-8 UTF-8
+# ps_AF UTF-8
+# pt_BR ISO-8859-1
+# pt_BR.UTF-8 UTF-8
+# pt_PT ISO-8859-1
+# pt_PT.UTF-8 UTF-8
+# pt_PT@euro ISO-8859-15
+# quz_PE UTF-8
+# raj_IN UTF-8
+# rif_MA UTF-8
+# ro_RO ISO-8859-2
+# ro_RO.UTF-8 UTF-8
+# ru_RU ISO-8859-5
+# ru_RU.CP1251 CP1251
+# ru_RU.KOI8-R KOI8-R
+# ru_RU.UTF-8 UTF-8
+# ru_UA KOI8-U
+# ru_UA.UTF-8 UTF-8
+# rw_RW UTF-8
+# sa_IN UTF-8
+# sah_RU UTF-8
+# sat_IN UTF-8
+# sc_IT UTF-8
+# sd_IN UTF-8
+# sd_IN@devanagari UTF-8
+# se_NO UTF-8
+# sgs_LT UTF-8
+# shn_MM UTF-8
+# shs_CA UTF-8
+# si_LK UTF-8
+# sid_ET UTF-8
+# sk_SK ISO-8859-2
+# sk_SK.UTF-8 UTF-8
+# sl_SI ISO-8859-2
+# sl_SI.UTF-8 UTF-8
+# sm_WS UTF-8
+# so_DJ ISO-8859-1
+# so_DJ.UTF-8 UTF-8
+# so_ET UTF-8
+# so_KE ISO-8859-1
+# so_KE.UTF-8 UTF-8
+# so_SO ISO-8859-1
+# so_SO.UTF-8 UTF-8
+# sq_AL ISO-8859-1
+# sq_AL.UTF-8 UTF-8
+# sq_MK UTF-8
+# sr_ME UTF-8
+# sr_RS UTF-8
+# sr_RS@latin UTF-8
+# ss_ZA UTF-8
+# st_ZA ISO-8859-1
+# st_ZA.UTF-8 UTF-8
+# sv_FI ISO-8859-1
+# sv_FI.UTF-8 UTF-8
+# sv_FI@euro ISO-8859-15
+# sv_SE ISO-8859-1
+# sv_SE.ISO-8859-15 ISO-8859-15
+# sv_SE.UTF-8 UTF-8
+# sw_KE UTF-8
+# sw_TZ UTF-8
+# syr UTF-8
+# szl_PL UTF-8
+# ta_IN UTF-8
+# ta_LK UTF-8
+# tcy_IN.UTF-8 UTF-8
+# te_IN UTF-8
+# tg_TJ KOI8-T
+# tg_TJ.UTF-8 UTF-8
+# th_TH TIS-620
+# th_TH.UTF-8 UTF-8
+# the_NP UTF-8
+# ti_ER UTF-8
+# ti_ET UTF-8
+# tig_ER UTF-8
+# tk_TM UTF-8
+# tl_PH ISO-8859-1
+# tl_PH.UTF-8 UTF-8
+# tn_ZA UTF-8
+# to_TO UTF-8
+# tpi_PG UTF-8
+# tr_CY ISO-8859-9
+# tr_CY.UTF-8 UTF-8
+# tr_TR ISO-8859-9
+# tr_TR.UTF-8 UTF-8
+# ts_ZA UTF-8
+# tt_RU UTF-8
+# tt_RU@iqtelif UTF-8
+# ug_CN UTF-8
+# uk_UA KOI8-U
+# uk_UA.UTF-8 UTF-8
+# unm_US UTF-8
+# ur_IN UTF-8
+# ur_PK UTF-8
+# uz_UZ ISO-8859-1
+# uz_UZ.UTF-8 UTF-8
+# uz_UZ@cyrillic UTF-8
+# ve_ZA UTF-8
+# vi_VN UTF-8
+# wa_BE ISO-8859-1
+# wa_BE.UTF-8 UTF-8
+# wa_BE@euro ISO-8859-15
+# wae_CH UTF-8
+# wal_ET UTF-8
+# wo_SN UTF-8
+# xh_ZA ISO-8859-1
+# xh_ZA.UTF-8 UTF-8
+# yi_US CP1255
+# yi_US.UTF-8 UTF-8
+# yo_NG UTF-8
+# yue_HK UTF-8
+# yuw_PG UTF-8
+# zh_CN GB2312
+# zh_CN.GB18030 GB18030
+# zh_CN.GBK GBK
+# zh_CN.UTF-8 UTF-8
+# zh_HK BIG5-HKSCS
+# zh_HK.UTF-8 UTF-8
+# zh_SG GB2312
+# zh_SG.GBK GBK
+# zh_SG.UTF-8 UTF-8
+# zh_TW BIG5
+# zh_TW.EUC-TW EUC-TW
+# zh_TW.UTF-8 UTF-8
+# zu_ZA ISO-8859-1
+# zu_ZA.UTF-8 UTF-8
diff --git a/morketsmerke.nmconnection b/morketsmerke.nmconnection
new file mode 100755 (executable)
index 0000000..f69c8c6
--- /dev/null
@@ -0,0 +1,30 @@
+[connection]
+id=morketsmerke
+uuid=aebf5ac0-72a5-432f-ad57-08c125942378
+type=vpn
+autoconnect=false
+permissions=user:xf0r3m:;
+timestamp=1740503929
+
+[vpn]
+ca=/ic0/vpn/cacert.pem
+cert=/ic0/vpn/X280_crt.pem
+cert-pass-flags=0
+comp-lzo=adaptive
+connection-type=tls
+dev=tun0
+key=/ic0/vpn/X280_key.pem
+port=17003
+remote=194.110.5.148
+service-type=org.freedesktop.NetworkManager.openvpn
+
+[ipv4]
+ignore-auto-routes=true
+method=auto
+never-default=true
+
+[ipv6]
+addr-gen-mode=stable-privacy
+method=auto
+
+[proxy]
diff --git a/nextcloud b/nextcloud
new file mode 100755 (executable)
index 0000000..fe78e30
--- /dev/null
+++ b/nextcloud
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+nextcloudVersion=$(curl https://github.com/nextcloud-releases/desktop/releases.atom 2> /dev/null | grep -o '<title>.*</title>' | grep -v 'rc' | sed -n '2p' | sed -e 's,<title>,,' -e 's,</title>,,' | awk '{printf $2}')
+
+#echo $nextcloudVersion;
+sudo wget https://github.com/nextcloud-releases/desktop/releases/download/v${nextcloudVersion}/Nextcloud-${nextcloudVersion}-x86_64.AppImage -O /usr/local/bin/nextcloud;
+sudo chmod +x /usr/local/bin/nextcloud;
+
+sudo ln -s /usr/local/bin/nextcloud /usr/bin/nextcloud;
+
+# https://github.com/nextcloud-releases/desktop/releases/download/v3.15.1/Nextcloud-3.15.1-x86_64.AppImage
diff --git a/nextcloud.desktop b/nextcloud.desktop
new file mode 100755 (executable)
index 0000000..52d1249
--- /dev/null
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Encoding=UTF-8
+Version=3.15.1
+Type=Application
+Name=nextcloud
+Comment=Desktopowy klient usługi Nextcloud
+Exec=/usr/local/bin/immudex-nextcloud
+OnlyShowIn=XFCE;
+RunHook=0
+StartupNotify=false
+Terminal=false
+Hidden=false
+
diff --git a/oh-my-posh-install.sh b/oh-my-posh-install.sh
new file mode 100755 (executable)
index 0000000..5626860
--- /dev/null
@@ -0,0 +1,232 @@
+#!/usr/bin/env bash
+
+install_dir=""
+themes_dir=""
+executable=""
+
+error() {
+    printf "\e[31m$1\e[0m\n"
+    exit 1
+}
+
+info() {
+    printf "$1\n"
+}
+
+warn() {
+    printf "⚠️  \e[33m$1\e[0m\n"
+}
+
+help() {
+    # Display Help
+    echo "Install script for Oh My Posh"
+    echo
+    echo "Syntax: install.sh [-h|d|t]"
+    echo "options:"
+    echo "-h     Print this help."
+    echo "-d     Specify the installation directory. Defaults to /usr/local/bin or the directory where oh-my-posh is installed."
+    echo "-t     Specify the themes installation directory. Defaults to the oh-my-posh cache directory."
+    echo
+}
+
+while getopts ":hd:t:" option; do
+   case $option in
+      h) # display Help
+         help
+         exit;;
+      d) # Enter a name
+         install_dir=${OPTARG};;
+      t) # themes directory
+         themes_dir=${OPTARG};;
+     \?) # Invalid option
+         echo "Invalid option command line option. Use -h for help."
+         exit 1
+   esac
+done
+
+SUPPORTED_TARGETS="linux-386 linux-amd64 linux-arm linux-arm64 darwin-amd64 darwin-arm64 freebsd-386 freebsd-amd64 freebsd-arm freebsd-arm64"
+
+validate_dependency() {
+    if ! command -v $1 >/dev/null; then
+        error "$1 is required to install Oh My Posh. Please install $1 and try again.\n"
+    fi
+}
+
+validate_dependencies() {
+    validate_dependency curl
+    validate_dependency unzip
+    validate_dependency realpath
+    validate_dependency dirname
+}
+
+set_install_directory() {
+    if [ -n "$install_dir" ]; then
+        # expand directory
+        install_dir="${install_dir/#\~/$HOME}"
+        return 0
+    fi
+
+    # check if we have oh-my-posh installed, if so, use the executable directory
+    # to install into and follow symlinks
+    if command -v oh-my-posh >/dev/null; then
+        posh_dir=$(command -v oh-my-posh)
+        real_dir=$(realpath $posh_dir)
+        install_dir=$(dirname $real_dir)
+        info "Oh My Posh is already installed, updating existing installation in:"
+        info "  ${install_dir}"
+    else
+        install_dir="/usr/local/bin"
+    fi
+}
+
+validate_install_directory() {
+    #check if installation dir exists
+    if [ ! -d "$install_dir" ]; then
+        error "Directory ${install_dir} does not exist, set a different directory and try again."
+    fi
+        
+    # Check if regular user has write permission
+    if [ ! -w "$install_dir" ]; then
+        error "Cannot write to ${install_dir}. Please check write permissions or set a different directory and try again: \ncurl -s https://ohmyposh.dev/install.sh | bash -s -- -d {directory}"
+    fi
+
+    # check if the directory is in the PATH
+    good=$(
+        IFS=:
+        for path in $PATH; do
+        if [ "${path%/}" = "${install_dir}" ]; then
+            printf 1
+            break
+        fi
+        done
+    )
+
+    if [ "${good}" != "1" ]; then
+        warn "Installation directory ${install_dir} is not in your \$PATH"
+    fi
+}
+
+validate_themes_directory() {
+    
+    # Validate if the themes directory exists
+    if ! mkdir -p "$themes_dir" > /dev/null 2>&1; then
+        error "Cannot write to ${themes_dir}. Please check write permissions or set a different directory and try again: \ncurl -s https://ohmyposh.dev/install.sh | bash -s -- -t {directory}"
+    fi
+
+    #check user write permission
+    if [ ! -w "$themes_dir" ]; then
+        error "Cannot write to ${themes_dir}. Please check write permissions or set a different directory and try again: \ncurl -s https://ohmyposh.dev/install.sh | bash -s -- -t {directory}"
+    fi
+}
+
+install_themes() {
+    if [ -n "$themes_dir" ]; then
+        # expand directory
+        themes_dir="${themes_dir/#\~/$HOME}"
+    fi
+
+    cache_dir=$($executable cache path)
+
+    # validate if the user set the path to the themes directory
+    if [ -z "$themes_dir" ]; then
+        themes_dir="${cache_dir}/themes"
+    fi
+
+    validate_themes_directory
+
+    info "🎨 Installing oh-my-posh themes in ${themes_dir}\n"
+
+    zip_file="${cache_dir}/themes.zip"
+
+    url="https://github.com/JanDeDobbeleer/oh-my-posh/releases/download/v21.9.0/themes.zip"
+
+    http_response=$(curl -s -f -L $url -o $zip_file -w "%{http_code}")
+
+    if [ $http_response = "200" ] && [ -f $zip_file ]; then
+        unzip -o -q $zip_file -d $themes_dir
+        # make sure the files are readable and writable for all users
+        chmod a+rwX ${themes_dir}/*.omp.*
+        rm $zip_file
+    else
+        warn "Unable to download themes at ${url}\nPlease validate your curl, connection and/or proxy settings"
+    fi
+}
+
+install() {
+    arch=$(detect_arch)
+    platform=$(detect_platform)
+    target="${platform}-${arch}"
+
+    good=$(
+        IFS=" "
+        for t in $SUPPORTED_TARGETS; do
+        if [ "${t}" = "${target}" ]; then
+            printf 1
+            break
+        fi
+        done
+    )
+
+    if [ "${good}" != "1" ]; then
+        error "${arch} builds for ${platform} are not available for Oh My Posh"
+    fi
+
+    info "\nℹ️  Installing oh-my-posh for ${target} in ${install_dir}"
+
+    executable=${install_dir}/oh-my-posh
+    url=https://github.com/JanDeDobbeleer/oh-my-posh/releases/download/v21.9.0/posh-${target}
+
+    info "⬇️  Downloading oh-my-posh from ${url}"
+
+    http_response=$(curl -s -f -L $url -o $executable -w "%{http_code}")
+
+    if [ $http_response != "200" ] || [ ! -f $executable ]; then
+        error "Unable to download executable at ${url}\nPlease validate your curl, connection and/or proxy settings"
+    fi
+
+    chmod +x $executable
+
+    install_themes
+
+    info "🚀 Installation complete.\n\nYou can follow the instructions at https://ohmyposh.dev/docs/installation/prompt"
+    info "to setup your shell to use oh-my-posh."
+    if [ $http_response = "200" ]; then
+        info "\nIf you want to use a built-in theme, you can find them in the ${themes_dir} directory:"
+        info "  oh-my-posh init {shell} --config ${themes_dir}/{theme}.omp.json\n"
+    fi
+}
+
+detect_arch() {
+  arch="$(uname -m | tr '[:upper:]' '[:lower:]')"
+
+  case "${arch}" in
+    x86_64) arch="amd64" ;;
+    armv*) arch="arm" ;;
+    arm64) arch="arm64" ;;
+    aarch64) arch="arm64" ;;
+    i686) arch="386" ;;
+  esac
+
+  if [ "${arch}" = "arm64" ] && [ "$(getconf LONG_BIT)" -eq 32 ]; then
+    arch=arm
+  fi
+
+  printf '%s' "${arch}"
+}
+
+
+detect_platform() {
+  platform="$(uname -s | awk '{print tolower($0)}')"
+
+  case "${platform}" in
+    linux) platform="linux" ;;
+    darwin) platform="darwin" ;;
+  esac
+
+  printf '%s' "${platform}"
+}
+
+validate_dependencies
+set_install_directory
+validate_install_directory
+install
diff --git a/org.keepassxc.KeePassXC.2.desktop b/org.keepassxc.KeePassXC.2.desktop
new file mode 100755 (executable)
index 0000000..ee62ded
--- /dev/null
@@ -0,0 +1,47 @@
+[Desktop Entry]
+Name=KeePassXC (immudex)
+GenericName=Password Manager
+GenericName[ar]=مدير كلمات المرور
+GenericName[bg]=Мениджър на пароли
+GenericName[ca]=Gestor de contrasenyes
+GenericName[cs]=Aplikace pro správu hesel
+GenericName[da]=Adgangskodehåndtering
+GenericName[de]=Passwortverwaltung
+GenericName[es]=Gestor de contraseñas
+GenericName[et]=Paroolihaldur
+GenericName[fi]=Salasanamanageri
+GenericName[fr]=Gestionnaire de mot de passe
+GenericName[hu]=Jelszókezelő
+GenericName[id]=Pengelola Sandi
+GenericName[it]=Gestione password
+GenericName[ja]=パスワードマネージャー
+GenericName[ko]=암호 관리자
+GenericName[lt]=Slaptažodžių tvarkytuvė
+GenericName[nb]=Passordhåndterer
+GenericName[nl]=Wachtwoordbeheer
+GenericName[pl]=Menedżer haseł
+GenericName[pt_BR]=Gerenciador de Senhas
+GenericName[pt]=Gestor de palavras-passe
+GenericName[ro]=Manager de parole
+GenericName[ru]=Менеджер паролей
+GenericName[sk]=Správca hesiel
+GenericName[sv]=Lösenordshanterare
+GenericName[th]=แอพจัดการรหัสผ่าน
+GenericName[tr]=Parola yöneticisi
+GenericName[uk]=Розпорядник паролів
+GenericName[zh_CN]=密码管理器
+GenericName[zh_TW]=密碼管理員
+Comment=Community-driven port of the Windows application “KeePass Password Safe”
+Comment[da]=Fællesskabsdrevet port af Windows-programmet “KeePass Password Safe”
+Comment[et]=Kogukonna arendatav port Windowsi programmist KeePass Password Safe
+Comment[ru]=Разработанный сообществом порт Windows-приложения KeePass Password Safe
+Exec=/usr/local/bin/immudex-run keepassxc
+TryExec=keepassxc
+Icon=keepassxc
+StartupWMClass=keepassxc
+StartupNotify=true
+Terminal=false
+Type=Application
+Version=1.0
+Categories=Utility;Security;Qt;
+MimeType=application/x-keepass2;
diff --git a/pointers.xml b/pointers.xml
new file mode 100755 (executable)
index 0000000..237528e
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<channel name="pointers" version="1.0">
+  <property name="Synaptics_TM3381-002" type="empty">
+    <property name="Properties" type="empty">
+      <property name="libinput_Tapping_Enabled" type="int" value="1"/>
+    </property>
+  </property>
+</channel>
diff --git a/sdrpp2.desktop b/sdrpp2.desktop
new file mode 100644 (file)
index 0000000..4e60d36
--- /dev/null
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Encoding=UTF-8
+Version=1.0
+Type=Application
+Terminal=false
+Exec=/usr/local/bin/immudex-run sdrpp
+Name=SDR++ (immudex)
+Icon=/usr/share/sdrpp/icons/sdrpp.png
+Categories=HamRadio
diff --git a/template.sh b/template.sh
new file mode 100644 (file)
index 0000000..6edf592
--- /dev/null
@@ -0,0 +1,75 @@
+#!/bin/bash
+
+function update_packages() {
+  apt update;
+  apt upgrade -y;
+}
+
+function install_packages() {
+  apt install $@ -y;
+}
+
+function set_xfce4_notes_autostart() {
+  cp -vv ~/immudex/files/autostart-x4notes.desktop /home/xf0r3m/.config/autostart;
+  chown xf0r3m:xf0r3m /home/xf0r3m/.config/autostart/autostart-x4notes.desktop;
+}
+
+
+function recreate_users() {
+  useradd -m -s /bin/bash user;
+  cp -rvv /etc/skel/.??* /home/user;
+  chown -R user:user /home/user;
+  echo "user:user1" | chpasswd;
+
+  useradd -m -s /bin/bash xf0r3m;
+  cp -rvv /etc/skel/.??* /home/xf0r3m;
+  chown -R xf0r3m:xf0r3m /home/xf0r3m;
+  echo "xf0r3m:xf0r3m1" | chpasswd;
+  set_xfce4_notes_autostart
+
+  usermod -aG libvirt,libvirt-qemu xf0r3m;
+  usermod -aG libvirt,libvirt-qemu user;
+
+  echo "root:toor" | chpasswd;
+}
+
+function tidy() {
+  apt-get clean;
+  apt-get clean;
+  apt-get autoremove -y;
+  apt-get autoclean;
+  rm -rf ~/immudex;
+  if [ -d ~/xfcedebian ]; then rm -rf ~/xfcedebian; fi
+  rm /var/cache/apt/*.bin;
+  echo > ~/.bash_history;
+  history -c   
+}
+
+function set_default_wallpaper() {
+  rm /usr/share/images/desktop-base/default;
+  ln -s /usr/share/images/desktop-base/$1 /usr/share/images/desktop-base/default;
+}
+
+function make_changelog_file() {
+  ARCH=$1;
+  DEBVER=$debver;
+  COMPILATION_DATE=$(date);
+  COMMIT=$(cd ${HOME}/immudex && git log --pretty=oneline | head -1);
+  ADDONS=$(grep 'bash ~/immudex/addons' ${HOME}/immudex/versions/base.sh | grep -v '^#' | cut -d "/" -f4 | sed 's/;//g' | awk '{printf $1" "}');
+
+  echo "ARCH=\"${ARCH}\"" > $FILE;
+  echo "DEBVER=\"${DEBVER}\"" >> $FILE;
+  if [ "$cname" ]; then
+    echo "CANONICAL_NAME=\"${cname}\"" >> $FILE;
+  fi
+  if [ "$version" ]; then
+    echo "VERSION=\"${version}\"" >> $FILE;
+  fi
+  echo "COMPILATION_DATE=\"${COMPILATION_DATE}\"" >> $FILE;
+  echo "COMMIT=\"${COMMIT}\"" >> $FILE;
+  echo "ADDONS=\"${ADDONS}\"" >> $FILE;
+  echo "-== Diffrences in version file ==-" >> $FILE;
+  cp ${HOME}/immudex/versions/base.sh ${HOME}/X280/base.sh; 
+  (cd ${HOME}/X280 && git diff base.sh) >> $FILE;
+  return 0;
+}
diff --git a/ufw-setup b/ufw-setup
new file mode 100644 (file)
index 0000000..7a5a0a5
--- /dev/null
+++ b/ufw-setup
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+ufw allow 1714:1764/udp
+ufw allow 1714:1764/tcp
diff --git a/ufw-setup.service b/ufw-setup.service
new file mode 100644 (file)
index 0000000..3c0b949
--- /dev/null
@@ -0,0 +1,9 @@
+[Unit]
+Description=Configure UFW with ufw commands in script
+After=ufw.service
+[Service]
+Type=OneShot
+ExecStart=/usr/local/sbin/ufw-setup
+RemainAfterExit=yes
+[Install]
+WantedBy=multi-user.target
diff --git a/whiskermenu-1.rc b/whiskermenu-1.rc
new file mode 100644 (file)
index 0000000..aab3048
--- /dev/null
@@ -0,0 +1,83 @@
+favorites=gvim.desktop,org.keepassxc.KeePassXC.2.desktop,vlc.desktop,chirp.desktop,sdrpp2.desktop,firefox-esr.desktop,librewolf.desktop,xfce-display-settings.desktop,com.teamviewer.TeamViewer2.desktop,org.kde.kdeconnect.sms.desktop
+recent=virt-manager.desktop,thunar.desktop,libreoffice-calc.desktop,qmmp-1.desktop
+button-title=Start
+button-icon=debian-logo
+button-single-row=false
+show-button-title=true
+show-button-icon=true
+launcher-show-name=true
+launcher-show-description=true
+launcher-show-tooltip=true
+launcher-icon-size=3
+hover-switch-category=false
+category-show-name=true
+category-icon-size=1
+sort-categories=true
+view-mode=1
+default-category=0
+recent-items-max=10
+favorites-in-recent=true
+position-search-alternate=true
+position-commands-alternate=false
+position-categories-alternate=true
+position-categories-horizontal=false
+stay-on-focus-out=false
+profile-shape=0
+confirm-session-command=true
+menu-width=450
+menu-height=500
+menu-opacity=100
+command-settings=xfce4-settings-manager
+show-command-settings=true
+command-lockscreen=xflock4
+show-command-lockscreen=true
+command-switchuser=dm-tool switch-to-greeter
+show-command-switchuser=false
+command-logoutuser=xfce4-session-logout --logout --fast
+show-command-logoutuser=true
+command-restart=xfce4-session-logout --reboot --fast
+show-command-restart=true
+command-shutdown=xfce4-session-logout --halt --fast
+show-command-shutdown=true
+command-suspend=xfce4-session-logout --suspend
+show-command-suspend=true
+command-hibernate=xfce4-session-logout --hibernate
+show-command-hibernate=false
+command-logout=xfce4-session-logout
+show-command-logout=false
+command-menueditor=menulibre
+show-command-menueditor=true
+command-profile=mugshot
+show-command-profile=true
+search-actions=5
+
+[action0]
+name=Strony podręcznika
+pattern=#
+command=exo-open --launch TerminalEmulator man %s
+regex=false
+
+[action1]
+name=Wyszukiwarka internetowa
+pattern=?
+command=exo-open --launch WebBrowser https://duckduckgo.com/?q=%u
+regex=false
+
+[action2]
+name=Wikipedia
+pattern=!w
+command=exo-open --launch WebBrowser https://en.wikipedia.org/wiki/%u
+regex=false
+
+[action3]
+name=Uruchom w terminalu
+pattern=!
+command=exo-open --launch TerminalEmulator %s
+regex=false
+
+[action4]
+name=Otwórz adres URI
+pattern=^(file|http|https):\\/\\/(.*)$
+command=exo-open \\0
+regex=true
+
diff --git a/xfce4-panel.xml b/xfce4-panel.xml
new file mode 100644 (file)
index 0000000..1572829
--- /dev/null
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<channel name="xfce4-panel" version="1.0">
+  <property name="configver" type="int" value="2"/>
+  <property name="panels" type="array">
+    <value type="int" value="1"/>
+    <property name="dark-mode" type="bool" value="true"/>
+    <property name="panel-1" type="empty">
+      <property name="position" type="string" value="p=8;x=640;y=786"/>
+      <property name="length" type="uint" value="100"/>
+      <property name="position-locked" type="bool" value="true"/>
+      <property name="icon-size" type="uint" value="16"/>
+      <property name="size" type="uint" value="26"/>
+      <property name="plugin-ids" type="array">
+        <value type="int" value="1"/>
+        <value type="int" value="15"/>
+        <value type="int" value="5"/>
+        <value type="int" value="17"/>
+        <value type="int" value="7"/>
+        <value type="int" value="14"/>
+        <value type="int" value="16"/>
+        <value type="int" value="2"/>
+        <value type="int" value="3"/>
+        <value type="int" value="6"/>
+        <value type="int" value="8"/>
+        <value type="int" value="9"/>
+        <value type="int" value="10"/>
+        <value type="int" value="11"/>
+        <value type="int" value="12"/>
+        <value type="int" value="13"/>
+        <value type="int" value="4"/>
+      </property>
+      <property name="enable-struts" type="bool" value="true"/>
+    </property>
+  </property>
+  <property name="plugins" type="empty">
+    <property name="plugin-2" type="string" value="tasklist">
+      <property name="grouping" type="uint" value="1"/>
+    </property>
+    <property name="plugin-3" type="string" value="separator">
+      <property name="expand" type="bool" value="true"/>
+      <property name="style" type="uint" value="0"/>
+    </property>
+    <property name="plugin-6" type="string" value="systray">
+      <property name="square-icons" type="bool" value="true"/>
+      <property name="known-legacy-items" type="array">
+        <value type="string" value="nawiązano bezprzewodowe połączenie sieciowe wi-fi „ap301a-2.4ghz”: ap301a-2.4ghz (86%)"/>
+        <value type="string" value="notatki"/>
+        <value type="string" value="nawiązano ethernetowe połączenie sieciowe „połączenie przewodowe 1”"/>
+        <value type="string" value="nawiązano ethernetowe połączenie sieciowe „wired connection 1”"/>
+        <value type="string" value="aplet networkmanager"/>
+      </property>
+      <property name="known-items" type="array">
+        <value type="string" value="blueman"/>
+        <value type="string" value="vlc"/>
+      </property>
+    </property>
+    <property name="plugin-8" type="string" value="pulseaudio">
+      <property name="enable-keyboard-shortcuts" type="bool" value="true"/>
+      <property name="show-notifications" type="bool" value="true"/>
+      <property name="mpris-players" type="string" value="vlc"/>
+    </property>
+    <property name="plugin-9" type="string" value="power-manager-plugin"/>
+    <property name="plugin-10" type="string" value="notification-plugin"/>
+    <property name="plugin-11" type="string" value="separator">
+      <property name="style" type="uint" value="0"/>
+    </property>
+    <property name="plugin-12" type="string" value="clock">
+      <property name="digital-format" type="string" value="%_H:%M"/>
+      <property name="digital-time-format" type="string" value="%_H:%M"/>
+      <property name="digital-layout" type="uint" value="3"/>
+    </property>
+    <property name="plugin-13" type="string" value="separator">
+      <property name="style" type="uint" value="0"/>
+    </property>
+    <property name="plugin-1" type="string" value="whiskermenu">
+      <property name="button-title" type="string" value="Start"/>
+      <property name="button-icon" type="string" value="debian-logo"/>
+      <property name="show-button-title" type="bool" value="true"/>
+      <property name="launcher-icon-size" type="int" value="3"/>
+      <property name="favorites-in-recent" type="bool" value="true"/>
+      <property name="position-search-alternate" type="bool" value="true"/>
+      <property name="position-categories-alternate" type="bool" value="true"/>
+      <property name="show-command-logoutuser" type="bool" value="true"/>
+      <property name="show-command-restart" type="bool" value="true"/>
+      <property name="show-command-shutdown" type="bool" value="true"/>
+      <property name="show-command-suspend" type="bool" value="true"/>
+      <property name="show-command-logout" type="bool" value="false"/>
+      <property name="favorites" type="array">
+        <value type="string" value="xfce4-web-browser.desktop"/>
+        <value type="string" value="xfce4-file-manager.desktop"/>
+        <value type="string" value="xfce4-terminal-emulator.desktop"/>
+        <value type="string" value="qmmp-1.desktop"/>
+        <value type="string" value="gvim.desktop"/>
+        <value type="string" value="vlc.desktop"/>
+        <value type="string" value="virt-manager.desktop"/>
+      </property>
+      <property name="recent" type="array">
+      </property>
+    </property>
+    <property name="plugin-4" type="string" value="showdesktop"/>
+    <property name="plugin-5" type="string" value="launcher">
+      <property name="items" type="array">
+        <value type="string" value="16844254192.desktop"/>
+      </property>
+    </property>
+    <property name="plugin-7" type="string" value="launcher">
+      <property name="items" type="array">
+        <value type="string" value="16844254905.desktop"/>
+      </property>
+    </property>
+    <property name="plugin-14" type="string" value="launcher">
+      <property name="items" type="array">
+        <value type="string" value="16844255236.desktop"/>
+      </property>
+    </property>
+    <property name="plugin-15" type="string" value="separator">
+      <property name="style" type="uint" value="0"/>
+    </property>
+    <property name="plugin-16" type="string" value="launcher">
+      <property name="items" type="array">
+        <value type="string" value="16967093831.desktop"/>
+      </property>
+    </property>
+    <property name="plugin-17" type="string" value="launcher">
+      <property name="items" type="array">
+        <value type="string" value="17399705731.desktop"/>
+      </property>
+    </property>
+  </property>
+</channel>