diff --git a/scripts/cleaner-apt.sh b/scripts/cleaner-apt.sh
new file mode 100755
index 0000000..179a2db
--- /dev/null
+++ b/scripts/cleaner-apt.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
+CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
+LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"
+METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
+OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v $CURKERNEL)
+
+ function printf(){
+ echo "$1" "$2"
+ }
+
+ ls /root/ > /dev/null
+ if [ "$?" -eq 0 ] ; then
+ printf "Root -> OK"
+ else
+ if [ $USER != root ]; then
+ clear
+ printf ""
+ printf "Error: must be root"
+ printf "Exiting..."
+ printf ""
+ exit 0
+ fi
+ fi
+
+printf "Cleaning apt cache..."
+apt clean
+
+printf "Removing old config files..."
+apt purge $OLDCONF
+
+#printf "Removing old kernels..."
+#aptitude purge $OLDKERNELS
+
+printf "Emptying every trashes..."
+rm -rfv /home/*/.local/share/Trash/*/**
+rm -rfv /root/.local/share/Trash/*/**
+
+printf "Script Finished!"
diff --git a/scripts/update-electronmail.sh b/scripts/update-electronmail.sh
new file mode 100755
index 0000000..49b82e7
--- /dev/null
+++ b/scripts/update-electronmail.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+echo "Checking electronmail version"
+touch /etc/electronmail_version.conf
+version_electronmail=$(curl "https://github.com/vladimiry/ElectronMail/releases" 2> /dev/null | grep "releases/tag" | head -1 | cut -d "=" -f 4 | cut -d "/" -f 6 | cut -d '"' -f 1 | cut -d "v" -f 2)
+version_electronmail_current=$(cat /etc/electronmail_version.conf)
+if [ "${version_electronmail}" != "${version_electronmail_current}" ] ; then
+ echo "New electronmail version detected"
+ echo "Downloading electronmail"
+ rm -rf /tmp/electronmail.deb
+ wget -q --show-progress -c "https://github.com/vladimiry/ElectronMail/releases/download/v${version_electronmail}/electron-mail-${version_electronmail}-linux-amd64.deb" -O /tmp/electronmail.deb
+ echo "Installing electronmail"
+ apt install /tmp/electronmail.deb
+ error_install=$?
+ if [ ${error_install} -eq 0 ] ; then
+ echo "${version_electronmail}" > /etc/electronmail_version.conf
+ fi
+else
+ echo "No updates for electronmail"
+fi
diff --git a/scripts/update-ffmpeg.sh b/scripts/update-ffmpeg.sh
new file mode 100755
index 0000000..88a6b69
--- /dev/null
+++ b/scripts/update-ffmpeg.sh
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+install_ffmpeg_gen(){
+ echo "Downloading ffmpeg"
+ rm -rf /tmp/ffmpeg.tar.xz
+ wget -q --show-progress -c "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-linux64-gpl.tar.xz" -O /tmp/ffmpeg.tar.xz
+ echo "Installing ffmpeg"
+ tar Jxf /tmp/ffmpeg.tar.xz -C /tmp/
+ if [ -f /tmp/ffmpeg-master-latest-linux64-gpl/bin/ffmpeg ] ; then
+ cp -rf /tmp/ffmpeg-master-latest-linux64-gpl/bin/ffmpeg /usr/bin/
+ chmod +x /usr/bin/ffmpeg
+ fi
+ if [ -f /tmp/ffmpeg-master-latest-linux64-gpl/bin/ffprobe ] ; then
+ cp -rf /tmp/ffmpeg-master-latest-linux64-gpl/bin/ffprobe /usr/bin/
+ chmod +x /usr/bin/ffprobe
+ fi
+ if [ -f /tmp/ffmpeg-master-latest-linux64-gpl/bin/ffplay ] ; then
+ cp -rf /tmp/ffmpeg-master-latest-linux64-gpl/bin/ffplay /usr/bin/
+ chmod +x /usr/bin/ffplay
+ fi
+ if [ -d /tmp/ffmpeg-master-latest-linux64-gpl/man ] ; then
+ cp -rf /tmp/ffmpeg-master-latest-linux64-gpl/man/* /usr/share/man/
+ fi
+ rm -rf /tmp/ffmpeg.tar.xz
+ rm -rf /tmp/ffmpeg-master-latest-linux64-gpl
+ echo "Installation ffmpeg done"
+}
+
+echo "Checking ffmpeg version"
+touch /etc/ffmpeg_version.conf
+version_ffmpeg=$(curl "https://github.com/BtbN/FFmpeg-Builds/releases/tag/latest" 2> /dev/null | grep "
" | cut -d ">" -f 2 | cut -d "<" -f 1)
+version_ffmpeg_current=$(cat /etc/ffmpeg_version.conf)
+if [ "${version_ffmpeg}" != "${version_ffmpeg_current}" ] ; then
+ echo "New ffmpeg version detected"
+ install_ffmpeg_gen
+ error_install=$?
+ if [ ${error_install} -eq 0 ] ; then
+ echo "${version_ffmpeg}" > /etc/ffmpeg_version.conf
+ fi
+else
+ echo "No updates for ffmpeg"
+fi
diff --git a/scripts/update-firefox.sh b/scripts/update-firefox.sh
new file mode 100755
index 0000000..c4dce20
--- /dev/null
+++ b/scripts/update-firefox.sh
@@ -0,0 +1,58 @@
+#!/bin/bash
+
+install_firefox_gen() {
+ download_url_firefox="${1}"
+ echo "Downloading firefox"
+ rm -rf /tmp/firefox.tar.xz
+ #wget -q --show-progress -c "${download_url_firefox}" -O /tmp/firefox.tar.xz
+ wget -q --show-progress -c "https://download.mozilla.org/?product=firefox-latest-ssl&os=linux64&lang=en-US" -O /tmp/firefox.tar.xz
+ echo "Installing firefox"
+ if [ -d /usr/lib ] ; then
+ tar Jxf /tmp/firefox.tar.xz -C /usr/lib/
+ unlink /usr/bin/firefox 2> /dev/null
+ install_firefox_desktop
+ ln -s /usr/lib/firefox/firefox /usr/bin/firefox
+ chmod +x /usr/bin/firefox
+ fi
+ rm -rf /tmp/firefox.tar.xz
+ echo "Installation firefox done"
+}
+
+install_firefox_desktop() {
+ if [ -d /usr/share/applications ] ; then
+ echo '[Desktop Entry]' > /usr/share/applications/firefox.desktop
+ echo 'Name=Firefox' >> /usr/share/applications/firefox.desktop
+ echo 'Comment=Browse the World Wide Web' >> /usr/share/applications/firefox.desktop
+ echo 'GenericName=Web Browser' >> /usr/share/applications/firefox.desktop
+ echo 'X-GNOME-FullName=Firefox Web Browser' >> /usr/share/applications/firefox.desktop
+ echo 'Exec=/usr/lib/firefox/firefox-bin %u' >> /usr/share/applications/firefox.desktop
+ echo 'Terminal=false' >> /usr/share/applications/firefox.desktop
+ echo 'X-MultipleArgs=false' >> /usr/share/applications/firefox.desktop
+ echo 'Type=Application' >> /usr/share/applications/firefox.desktop
+ if [ -f /usr/lib/firefox/browser/chrome/icons/default/default48.png ] ; then
+ echo 'Icon=/usr/lib/firefox/browser/chrome/icons/default/default48.png' >> /usr/share/applications/firefox.desktop
+ else
+ echo 'Icon=firefox' >> /usr/share/applications/firefox.desktop
+ fi
+ echo 'Categories=Network;WebBrowser;' >> /usr/share/applications/firefox.desktop
+ echo '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;' >> /usr/share/applications/firefox.desktop
+ echo 'StartupWMClass=Firefox' >> /usr/share/applications/firefox.desktop
+ echo 'StartupNotify=true' >> /usr/share/applications/firefox.desktop
+ fi
+}
+
+echo "Checking firefox version"
+touch /etc/firefox_version.conf
+url_download=$(curl -I -s "https://download.mozilla.org/?product=firefox-latest-ssl&os=linux64&lang=en-US" | grep Location | cut -d " " -f 2)
+version_firefox=$(basename ${url_download})
+version_firefox_current=$(cat /etc/firefox_version.conf)
+if [ "${version_firefox}" != "${version_firefox_current}" ] ; then
+ echo "New firefox version detected"
+ install_firefox_gen "${url_download}"
+ error_install=$?
+ if [ ${error_install} -eq 0 ] ; then
+ echo "${version_firefox}" > /etc/firefox_version.conf
+ fi
+else
+ echo "No updates for firefox"
+fi
diff --git a/scripts/update-open-tv.sh b/scripts/update-open-tv.sh
new file mode 100755
index 0000000..0edefcc
--- /dev/null
+++ b/scripts/update-open-tv.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+echo "Checking open-tv version"
+touch /etc/opentv_version.conf
+version_opentv=$(curl "https://github.com/Fredolx/open-tv/releases" 2> /dev/null | grep "releases/tag" | head -1 | cut -d "=" -f 4 | cut -d "/" -f 6 | cut -d '"' -f 1 | cut -d "v" -f 2)
+version_opentv_current=$(cat /etc/opentv_version.conf)
+if [ "${version_opentv}" != "${version_opentv_current}" ] ; then
+ echo "New open-tv version detected"
+ echo "Downloading open-tv"
+ rm -rf /tmp/open-tv.deb
+ wget -q --show-progress -c "https://github.com/Fredolx/open-tv/releases/download/v${version_opentv}/Open.TV_${version_opentv}_amd64.deb" -O /tmp/open-tv.deb
+ echo "Installing open-tv"
+ apt install /tmp/open-tv.deb
+ error_install=$?
+ if [ ${error_install} -eq 0 ] ; then
+ echo "${version_opentv}" > /etc/opentv_version.conf
+ sed -i 's/Icon\=open_tv/Icon\=me-tv/g' "/usr/share/applications/Open TV.desktop"
+ fi
+else
+ echo "No updates for open-tv"
+fi
diff --git a/scripts/update-rclone.sh b/scripts/update-rclone.sh
new file mode 100755
index 0000000..309c579
--- /dev/null
+++ b/scripts/update-rclone.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+echo "Checking rclone version"
+touch /etc/rclone_version.conf
+version_rclone=$(curl "https://rclone.org/downloads/" 2> /dev/null | grep "\"release\"" | cut -d ">" -f 2 | cut -d "<" -f 1)
+version_rclone_current=$(cat /etc/rclone_version.conf)
+if [ "${version_rclone}" != "${version_rclone_current}" ] ; then
+ echo "New rclone version detected"
+ echo "Downloading rclone"
+ rm -rf /tmp/rclone.deb
+ wget -q --show-progress -c "https://downloads.rclone.org/rclone-current-linux-amd64.deb" -O /tmp/rclone.deb
+ echo "Installing rclone"
+ apt install /tmp/rclone.deb
+ error_install=$?
+ if [ ${error_install} -eq 0 ] ; then
+ echo "${version_rclone}" > /etc/rclone_version.conf
+ fi
+else
+ echo "No updates for rclone"
+fi
diff --git a/scripts/update-system.sh b/scripts/update-system.sh
new file mode 100755
index 0000000..902137b
--- /dev/null
+++ b/scripts/update-system.sh
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+function update_packages() {
+ sudo flatpak update
+ sudo apt update
+ sudo apt upgrade -y
+}
+
+function update_kernel_stable() {
+ sudo apt install linux-image-amd64 -y
+ sudo apt autoremove
+}
+
+function update_scripts() {
+ sudo update-yazi.sh
+ sudo update-vim.sh
+ sudo update-rclone.sh
+ sudo update-ffmpeg.sh
+ sudo update-yt-dlp.sh
+ sudo update-open-tv.sh
+ sudo update-electronmail.sh
+ sudo update-firefox.sh
+ #sudo update-tabby.sh
+ #sudo update-plex.sh
+}
+
+function fstrim_run() {
+ echo "First Trimming"
+ sudo /sbin/fstrim -a -v
+ echo "Second Trimming"
+ sudo /sbin/fstrim -a -v
+ echo "Third Trimming"
+ sudo /sbin/fstrim -a -v
+}
+
+update_scripts
+update_packages
+update_kernel_stable
+fstrim_run
diff --git a/scripts/update-vim.sh b/scripts/update-vim.sh
new file mode 100755
index 0000000..3e8b7c4
--- /dev/null
+++ b/scripts/update-vim.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+install_vim_gen(){
+ version_download="${1}"
+ echo "Downloading vim"
+ rm -rf /tmp/vim.appimage
+ vim_urlfile=$(curl -L "https://github.com/vim/vim-appimage/releases/tag/${version_download}" 2> /dev/null | grep "/Vim-${version_download}" | grep "href\=" | cut -d "=" -f 2 | cut -d '"' -f 2)
+ wget -q --show-progress -c "${vim_urlfile}" -O /tmp/vim.appimage
+ echo "Installing vim"
+ if [ -f /tmp/vim.appimage ] ; then
+ cp -rf /tmp/vim.appimage /usr/bin/vim
+ chmod +x /usr/bin/vim
+ fi
+ rm -rf /tmp/vim.appimage
+ echo "Installation vim done"
+}
+
+echo "Checking vim version"
+touch /etc/vim_version.conf
+version_vim=$(curl "https://github.com/vim/vim-appimage/releases" 2> /dev/null | grep "releases/tag" | head -1 | cut -d "=" -f 4 | cut -d "/" -f 6 | cut -d '"' -f 1)
+version_vim_current=$(cat /etc/vim_version.conf)
+if [ "${version_vim}" != "${version_vim_current}" ] ; then
+ echo "New vim version detected"
+ install_vim_gen "${version_vim}"
+ error_install=$?
+ if [ ${error_install} -eq 0 ] ; then
+ echo "${version_vim}" > /etc/vim_version.conf
+ fi
+else
+ echo "No updates for vim"
+fi
diff --git a/scripts/update-yazi.sh b/scripts/update-yazi.sh
new file mode 100755
index 0000000..1a3b7e7
--- /dev/null
+++ b/scripts/update-yazi.sh
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+install_yazi_gen(){
+ version_download="${1}"
+ echo "Downloading yazi"
+ rm -rf /tmp/yazi.zip
+ wget -q --show-progress -c "https://github.com/sxyazi/yazi/releases/download/${version_download}/yazi-x86_64-unknown-linux-musl.zip" -O /tmp/yazi.zip
+ echo "Installing yazi"
+ cd /tmp
+ unzip -q yazi.zip
+ if [ -f yazi-x86_64-unknown-linux-musl/ya ] ; then
+ cp -rf yazi-x86_64-unknown-linux-musl/ya /usr/bin/
+ chmod +x /usr/bin/ya
+ fi
+ if [ -f yazi-x86_64-unknown-linux-musl/yazi ] ; then
+ cp -rf yazi-x86_64-unknown-linux-musl/yazi /usr/bin/
+ chmod +x /usr/bin/yazi
+ fi
+ rm -rf /tmp/yazi.zip
+ rm -rf /tmp/yazi-x86_64-unknown-linux-musl
+ echo "Installation yazi done"
+}
+
+echo "Checking yazi version"
+touch /etc/yazi_version.conf
+version_yazi=$(curl "https://github.com/sxyazi/yazi/releases" 2> /dev/null | grep "releases/tag" | grep -v "nightly" | head -1 | cut -d "=" -f 4 | cut -d "/" -f 6 | cut -d '"' -f 1)
+version_yazi_current=$(cat /etc/yazi_version.conf)
+if [ "${version_yazi}" != "${version_yazi_current}" ] ; then
+ echo "New yazi version detected"
+ install_yazi_gen "${version_yazi}"
+ error_install=$?
+ if [ ${error_install} -eq 0 ] ; then
+ echo "${version_yazi}" > /etc/yazi_version.conf
+ fi
+else
+ echo "No updates for yazi"
+fi
diff --git a/scripts/update-yt-dlp.sh b/scripts/update-yt-dlp.sh
new file mode 100755
index 0000000..53ae186
--- /dev/null
+++ b/scripts/update-yt-dlp.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+echo "Checking yt-dlp version"
+touch /etc/ytdlp_version.conf
+version_ytdlp=$(curl "https://github.com/yt-dlp/yt-dlp/releases" 2> /dev/null | grep "releases/tag" | head -1 | cut -d "=" -f 4 | cut -d "/" -f 6 | cut -d '"' -f 1 | cut -d "v" -f 2)
+version_ytdlp_current=$(cat /etc/ytdlp_version.conf)
+if [ "${version_ytdlp}" != "${version_ytdlp_current}" ] ; then
+ echo "New yt-dlp version detected"
+ echo "Downloading yt-dlp"
+ rm -rf /tmp/yt-dlp
+ wget -q --show-progress -c "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux" -O /tmp/yt-dlp
+ echo "Installing yt-dlp"
+ cp -rf /tmp/yt-dlp /usr/bin/
+ error_install=$?
+ if [ ${error_install} -eq 0 ] ; then
+ echo "${version_ytdlp}" > /etc/ytdlp_version.conf
+ chmod +x /usr/bin/yt-dlp
+ echo "Installation yt-dlp done"
+ fi
+else
+ echo "No updates for yt-dlp"
+fi