diff --git a/PepDeb64/fusato/.build/config b/PepDeb64/fusato/.build/config
deleted file mode 100644
index e69de29..0000000
diff --git a/PepDeb64/fusato/config/binary b/PepDeb64/fusato/config/binary
deleted file mode 100644
index 540fdac..0000000
--- a/PepDeb64/fusato/config/binary
+++ /dev/null
@@ -1,119 +0,0 @@
-# config/binary - options for live-build(7), binary stage
-
-# Set image type
-LB_IMAGE_TYPE="iso-hybrid"
-
-# Set image filesystem
-LB_BINARY_FILESYSTEM="fat32"
-
-# Set apt/aptitude generic indices
-LB_APT_INDICES="true"
-
-# Set boot parameters
-LB_BOOTAPPEND_LIVE="boot=live components quiet splash"
-
-# Set boot parameters
-LB_BOOTAPPEND_INSTALL="file=/cdrom/install/preseed.cfg"
-
-# Set boot parameters
-LB_BOOTAPPEND_LIVE_FAILSAFE="boot=live components memtest noapic noapm nodma nomce nolapic nosmp nosplash vga=788"
-
-# Set BIOS bootloader
-LB_BOOTLOADER_BIOS="syslinux"
-
-# Set EFI bootloader
-LB_BOOTLOADER_EFI="grub-efi"
-
-# Set bootloaders
-LB_BOOTLOADERS=""
-
-# Set checksums
-LB_CHECKSUMS="sha512 md5"
-
-# Set compression
-LB_COMPRESSION="none"
-
-# Support dm-verity on rootfs
-LB_DM_VERITY=""
-
-# Support FEC on dm-verity rootfs
-LB_DM_VERITY_FEC_ROOTS=""
-
-# Set sign script for roothash for dm-verity rootfs
-LB_DM_VERITY_SIGN=""
-
-# Set zsync
-LB_ZSYNC="false"
-
-# Control if we build binary images chrooted
-# NEVER, *EVER*, *E*V*E*R* SET THIS OPTION to false.
-LB_BUILD_WITH_CHROOT="true"
-
-# Set debian-installer
-LB_DEBIAN_INSTALLER="netinst"
-
-# Set debian-installer suite
-LB_DEBIAN_INSTALLER_DISTRIBUTION="bookworm"
-
-# Set debian-installer preseed filename/url
-LB_DEBIAN_INSTALLER_PRESEEDFILE="preseed.cfg"
-
-# Toggle use of GUI debian-installer
-LB_DEBIAN_INSTALLER_GUI="true"
-
-# Set hdd label
-LB_HDD_LABEL="DEBIAN_LIVE"
-
-# Set hdd filesystem size
-LB_HDD_SIZE="auto"
-
-# Set start of partition for the hdd target for BIOSes that expect a specific boot partition start (e.g. "63s"). If empty, use optimal layout.
-LB_HDD_PARTITION_START=""
-
-# Set iso author
-LB_ISO_APPLICATION="Debian Live"
-
-# Set iso preparer
-LB_ISO_PREPARER="PeppermintOS-https://peppermintos.com/"
-
-# Set iso publisher
-LB_ISO_PUBLISHER="Peppermint OS Team"
-
-# Set iso volume (max 32 chars)
-LB_ISO_VOLUME="PeppermintOS"
-
-# Set jffs2 eraseblock size
-LB_JFFS2_ERASEBLOCK=""
-
-# Set memtest
-LB_MEMTEST="none"
-
-# Set loadlin
-LB_LOADLIN="true"
-
-# Set win32-loader
-LB_WIN32_LOADER="false"
-
-# Set net tarball
-LB_NET_TARBALL="true"
-
-# Set onie
-LB_ONIE="false"
-
-# Set onie additional kernel cmdline options
-LB_ONIE_KERNEL_CMDLINE=""
-
-# Set inclusion of firmware packages in debian-installer
-LB_FIRMWARE_BINARY="true"
-
-# Set inclusion of firmware packages in the live image
-LB_FIRMWARE_CHROOT="false"
-
-# Set swap file path
-LB_SWAP_FILE_PATH=""
-
-# Set swap file size
-LB_SWAP_FILE_SIZE="512"
-
-# Enable/disable UEFI secure boot support
-LB_UEFI_SECURE_BOOT="auto"
diff --git a/PepDeb64/fusato/config/bootstrap b/PepDeb64/fusato/config/bootstrap
deleted file mode 100644
index 584b510..0000000
--- a/PepDeb64/fusato/config/bootstrap
+++ /dev/null
@@ -1,76 +0,0 @@
-# config/bootstrap - options for live-build(7), bootstrap stage
-
-# Select architecture to use
-LB_ARCHITECTURE="amd64"
-
-# Select distribution to use
-LB_DISTRIBUTION="bookworm"
-
-# Select parent distribution to use
-LB_PARENT_DISTRIBUTION=""
-
-# Select distribution to use in the chroot
-LB_DISTRIBUTION_CHROOT="bookworm"
-
-# Select parent distribution to use in the chroot
-LB_PARENT_DISTRIBUTION_CHROOT="bookworm"
-
-# Select distribution to use in the final image
-LB_DISTRIBUTION_BINARY="bookworm"
-
-# Select parent distribution to use in the final image
-LB_PARENT_DISTRIBUTION_BINARY="bookworm"
-
-# Select parent distribution for debian-installer to use
-LB_PARENT_DEBIAN_INSTALLER_DISTRIBUTION="bookworm"
-
-# Select archive areas to use
-LB_ARCHIVE_AREAS="main contrib non-free non-free-firmware"
-
-# Select parent archive areas to use
-LB_PARENT_ARCHIVE_AREAS="main contrib non-free non-free-firmware"
-
-# Set parent mirror to bootstrap from
-LB_PARENT_MIRROR_BOOTSTRAP="http://deb.debian.org/debian/"
-
-# Set parent mirror to fetch packages from
-LB_PARENT_MIRROR_CHROOT="http://deb.debian.org/debian/"
-
-# Set security parent mirror to fetch packages from
-LB_PARENT_MIRROR_CHROOT_SECURITY="http://security.debian.org/"
-
-# Set parent mirror which ends up in the image
-LB_PARENT_MIRROR_BINARY="http://deb.debian.org/debian/"
-
-# Set security parent mirror which ends up in the image
-LB_PARENT_MIRROR_BINARY_SECURITY="http://security.debian.org/"
-
-# Set debian-installer parent mirror
-LB_PARENT_MIRROR_DEBIAN_INSTALLER="http://repo.peppermintos.com/packages"
-
-# Set mirror to bootstrap from
-LB_MIRROR_BOOTSTRAP="http://deb.debian.org/debian/"
-
-# Set mirror to fetch packages from
-LB_MIRROR_CHROOT="http://deb.debian.org/debian/"
-
-# Set security mirror to fetch packages from
-LB_MIRROR_CHROOT_SECURITY="http://security.debian.org/"
-
-# Set mirror which ends up in the image
-LB_MIRROR_BINARY="http://deb.debian.org/debian/"
-
-# Set security mirror which ends up in the image
-LB_MIRROR_BINARY_SECURITY="http://security.debian.org/"
-
-# Set debian-installer mirror
-LB_MIRROR_DEBIAN_INSTALLER="http://deb.debian.org/debian/"
-
-# Set architectures to use foreign bootstrap
-LB_BOOTSTRAP_QEMU_ARCHITECTURE=""
-
-# Set packages to exclude during foreign bootstrap
-LB_BOOTSTRAP_QEMU_EXCLUDE=""
-
-# Set static qemu binary for foreign bootstrap
-LB_BOOTSTRAP_QEMU_STATIC=""
diff --git a/PepDeb64/fusato/config/chroot b/PepDeb64/fusato/config/chroot
deleted file mode 100644
index dafa75d..0000000
--- a/PepDeb64/fusato/config/chroot
+++ /dev/null
@@ -1,34 +0,0 @@
-# config/chroot - options for live-build(7), chroot stage
-
-# Set chroot filesystem
-LB_CHROOT_FILESYSTEM="squashfs"
-
-# Set chroot squashfs compression level
-LB_CHROOT_SQUASHFS_COMPRESSION_LEVEL=""
-
-# Set chroot squashfs compression type
-LB_CHROOT_SQUASHFS_COMPRESSION_TYPE=""
-
-# Set union filesystem
-LB_UNION_FILESYSTEM="overlay"
-
-# Set interactive build
-LB_INTERACTIVE="false"
-
-# Set keyring packages
-LB_KEYRING_PACKAGES="debian-archive-keyring"
-
-# Set kernel flavour to use (with arch)
-LB_LINUX_FLAVOURS_WITH_ARCH="amd64"
-
-# Set kernel packages to use
-LB_LINUX_PACKAGES="linux-image"
-
-# Enable security updates
-LB_SECURITY="true"
-
-# Enable updates updates
-LB_UPDATES="true"
-
-# Enable backports updates
-LB_BACKPORTS="false"
diff --git a/PepDeb64/fusato/config/common b/PepDeb64/fusato/config/common
deleted file mode 100644
index 60b02a7..0000000
--- a/PepDeb64/fusato/config/common
+++ /dev/null
@@ -1,102 +0,0 @@
-# config/common - common options for live-build(7)
-
-# Version of live-build used to build config (config format version)
-LB_CONFIGURATION_VERSION="20230131acoros1"
-
-# Set package manager
-LB_APT="apt"
-
-# Set proxy for HTTP connections
-LB_APT_HTTP_PROXY=""
-
-# Set apt/aptitude pipeline depth
-LB_APT_PIPELINE=""
-
-# Set apt/aptitude recommends
-LB_APT_RECOMMENDS="true"
-
-# Set apt/aptitude security
-LB_APT_SECURE="true"
-
-# Set apt/aptitude source entries in sources.list
-LB_APT_SOURCE_ARCHIVES="true"
-
-# Control cache
-LB_CACHE="true"
-
-# Control if downloaded package indices should be cached
-LB_CACHE_INDICES="false"
-
-# Control if downloaded packages files should be cached
-LB_CACHE_PACKAGES="true"
-
-# Control if completed stages should be cached
-LB_CACHE_STAGES="bootstrap"
-
-# Set debconf(1) frontend to use
-LB_DEBCONF_FRONTEND="noninteractive"
-
-# Set debconf(1) priority to use
-LB_DEBCONF_PRIORITY="critical"
-
-# Set initramfs hook
-LB_INITRAMFS="live-boot"
-
-# Set initramfs compression
-LB_INITRAMFS_COMPRESSION="gzip"
-
-# Set init system
-LB_INITSYSTEM="systemd"
-
-# Set distribution mode
-LB_MODE="debian"
-
-# Set system type
-LB_SYSTEM="live"
-
-# Set base name of the image
-LB_IMAGE_NAME="PepOS-mini-iso"
-
-# Set options to use with apt
-APT_OPTIONS="--yes -o Acquire::Retries=5"
-
-# Set options to use with aptitude
-APTITUDE_OPTIONS="--assume-yes -o Acquire::Retries=5"
-
-# Set options to use with debootstrap
-DEBOOTSTRAP_OPTIONS=""
-
-# Set script to use with debootstrap
-DEBOOTSTRAP_SCRIPT=""
-
-# Set options to use with gzip
-GZIP_OPTIONS="-6 --rsyncable"
-
-# Enable UTC timestamps
-LB_UTC_TIME="false"
-
-# live-build options
-
-# Enable breakpoints
-# If set here, overrides the command line option
-#_BREAKPOINTS="false"
-
-# Enable debug
-# If set here, overrides the command line option
-#_DEBUG="false"
-
-# Enable color
-# If set here, overrides the command line option
-#_COLOR="auto"
-
-# Enable force
-# If set here, overrides the command line option
-#_FORCE="false"
-
-# Enable quiet
-# If set here, overrides the command line option
-#_QUIET="false"
-
-# Enable verbose
-# If set here, overrides the command line option
-#_VERBOSE="false"
diff --git a/PepDeb64/fusato/config/hooks/live/0010-disable-kexec-tools.hook.chroot b/PepDeb64/fusato/config/hooks/live/0010-disable-kexec-tools.hook.chroot
deleted file mode 120000
index 996f766..0000000
--- a/PepDeb64/fusato/config/hooks/live/0010-disable-kexec-tools.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/live/0010-disable-kexec-tools.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/live/0050-disable-sysvinit-tmpfs.hook.chroot b/PepDeb64/fusato/config/hooks/live/0050-disable-sysvinit-tmpfs.hook.chroot
deleted file mode 120000
index 5ddf090..0000000
--- a/PepDeb64/fusato/config/hooks/live/0050-disable-sysvinit-tmpfs.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/live/0050-disable-sysvinit-tmpfs.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0020-create-mtab-symlink.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0020-create-mtab-symlink.hook.chroot
deleted file mode 120000
index 58123fc..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0020-create-mtab-symlink.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0020-create-mtab-symlink.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0030-enable-cryptsetup.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0030-enable-cryptsetup.hook.chroot
deleted file mode 120000
index c5ab625..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0030-enable-cryptsetup.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0030-enable-cryptsetup.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0040-create-locales-files.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0040-create-locales-files.hook.chroot
deleted file mode 120000
index 036e7e0..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0040-create-locales-files.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0040-create-locales-files.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0100-remove-adjtime-configuration.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0100-remove-adjtime-configuration.hook.chroot
deleted file mode 120000
index b0ccdb6..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0100-remove-adjtime-configuration.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0100-remove-adjtime-configuration.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0110-remove-backup-files.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0110-remove-backup-files.hook.chroot
deleted file mode 120000
index 8b68c5c..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0110-remove-backup-files.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0110-remove-backup-files.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0120-remove-dbus-machine-id.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0120-remove-dbus-machine-id.hook.chroot
deleted file mode 120000
index 4d55b27..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0120-remove-dbus-machine-id.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0120-remove-dbus-machine-id.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0130-remove-gnome-icon-cache.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0130-remove-gnome-icon-cache.hook.chroot
deleted file mode 120000
index 54f6a9b..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0130-remove-gnome-icon-cache.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0130-remove-gnome-icon-cache.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0140-remove-log-files.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0140-remove-log-files.hook.chroot
deleted file mode 120000
index 2b99cec..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0140-remove-log-files.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0140-remove-log-files.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0150-remove-mdadm-configuration.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0150-remove-mdadm-configuration.hook.chroot
deleted file mode 120000
index 0c3cd2f..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0150-remove-mdadm-configuration.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0150-remove-mdadm-configuration.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0160-remove-openssh-server-host-keys.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0160-remove-openssh-server-host-keys.hook.chroot
deleted file mode 120000
index e57b8d2..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0160-remove-openssh-server-host-keys.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0160-remove-openssh-server-host-keys.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0170-remove-python-py.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0170-remove-python-py.hook.chroot
deleted file mode 120000
index 858a942..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0170-remove-python-py.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0170-remove-python-py.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0180-remove-systemd-machine-id.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0180-remove-systemd-machine-id.hook.chroot
deleted file mode 120000
index 6cecf66..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0180-remove-systemd-machine-id.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0180-remove-systemd-machine-id.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0190-remove-temporary-files.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0190-remove-temporary-files.hook.chroot
deleted file mode 120000
index ada76d9..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0190-remove-temporary-files.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0190-remove-temporary-files.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0195-remove-ssl-cert-snakeoil.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0195-remove-ssl-cert-snakeoil.hook.chroot
deleted file mode 120000
index 9fc0723..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0195-remove-ssl-cert-snakeoil.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0195-remove-ssl-cert-snakeoil.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0200-remove-udev-persistent-cd-rules.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0200-remove-udev-persistent-cd-rules.hook.chroot
deleted file mode 120000
index f893dcc..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0200-remove-udev-persistent-cd-rules.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0200-remove-udev-persistent-cd-rules.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0300-remove-udev-persistent-net-rules.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0300-remove-udev-persistent-net-rules.hook.chroot
deleted file mode 120000
index a6ee33d..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0300-remove-udev-persistent-net-rules.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0300-remove-udev-persistent-net-rules.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0400-update-apt-file-cache.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0400-update-apt-file-cache.hook.chroot
deleted file mode 120000
index 380fdcf..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0400-update-apt-file-cache.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0400-update-apt-file-cache.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0410-update-apt-xapian-index.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0410-update-apt-xapian-index.hook.chroot
deleted file mode 120000
index dd7150e..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0410-update-apt-xapian-index.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0410-update-apt-xapian-index.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0420-update-glx-alternative.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0420-update-glx-alternative.hook.chroot
deleted file mode 120000
index 4da25f8..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0420-update-glx-alternative.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0420-update-glx-alternative.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0430-update-mlocate-database.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0430-update-mlocate-database.hook.chroot
deleted file mode 120000
index 13b49d7..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0430-update-mlocate-database.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0430-update-mlocate-database.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0440-update-nvidia-alternative.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0440-update-nvidia-alternative.hook.chroot
deleted file mode 120000
index 0a65196..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0440-update-nvidia-alternative.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0440-update-nvidia-alternative.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0500-reproducible-glibc.hook.chroot b/PepDeb64/fusato/config/hooks/normal/0500-reproducible-glibc.hook.chroot
deleted file mode 120000
index 9d4f095..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0500-reproducible-glibc.hook.chroot
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/live/build/hooks/normal/0500-reproducible-glibc.hook.chroot
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/hooks/normal/0950-final-cleanup-hook.binary b/PepDeb64/fusato/config/hooks/normal/0950-final-cleanup-hook.binary
deleted file mode 100755
index 324b352..0000000
--- a/PepDeb64/fusato/config/hooks/normal/0950-final-cleanup-hook.binary
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/bash
-# SPDX-License-Identifier: GPL-3.0-or-later
-#
-# SPDX-FileCopyrightText: 2023 PeppemrintOS Team (peppermintosteam@proton.me)
-
-## This script will remove unnecessary files and folders and reduce the size of the iso.
-# Remove live folder from binary.
-
-rm -r live
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/font.pf2 b/PepDeb64/fusato/config/includes.binary/boot/grub/font.pf2
deleted file mode 100644
index 59e8ffa..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/font.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/grub.cfg b/PepDeb64/fusato/config/includes.binary/boot/grub/grub.cfg
deleted file mode 100644
index 42938df..0000000
--- a/PepDeb64/fusato/config/includes.binary/boot/grub/grub.cfg
+++ /dev/null
@@ -1,96 +0,0 @@
-if loadfont $prefix/font.pf2 ; then
- set gfxmode=800x600
- set gfxpayload=keep
- insmod efi_gop
- insmod efi_uga
- insmod video_bochs
- insmod video_cirrus
- insmod gfxterm
- insmod png
- terminal_output gfxterm
-fi
-
-if background_image /isolinux/splash.png; then
- set color_normal=light-gray/black
- set color_highlight=white/black
-elif background_image /splash.png; then
- set color_normal=light-gray/black
- set color_highlight=white/black
-else
- set menu_color_normal=cyan/blue
- set menu_color_highlight=white/blue
-fi
-
-source /boot/grub/config.cfg
-
-insmod play
-play 960 440 1 0 4 440 1
-set theme=/boot/grub/live-theme/theme.txt
-menuentry --hotkey=g 'Graphical install' {
- set background_color=black
- linux /install/vmlinuz vga=788 --- quiet
- initrd /install/gtk/initrd.gz
-}
-menuentry --hotkey=i 'Install' {
- set background_color=black
- linux /install/vmlinuz vga=788 --- quiet
- initrd /install/initrd.gz
-}
-submenu --hotkey=a 'Advanced options ...' {
- set menu_color_normal=cyan/blue
- set menu_color_highlight=white/blue
- set theme=/boot/grub/live-theme/theme.txt
- set gfxpayload=keep
- menuentry '... Graphical expert install' {
- set background_color=black
- linux /install/vmlinuz priority=low vga=788 ---
- initrd /install/gtk/initrd.gz
- }
- menuentry '... Graphical rescue mode' {
- set background_color=black
- linux /install/vmlinuz vga=788 rescue/enable=true --- quiet
- initrd /install/gtk/initrd.gz
- }
- menuentry '... Graphical automated install' {
- set background_color=black
- linux /install/vmlinuz auto=true priority=critical vga=788 --- quiet
- initrd /install/gtk/initrd.gz
- }
- menuentry --hotkey=x '... Expert install' {
- set background_color=black
- linux /install/vmlinuz priority=low vga=788 ---
- initrd /install/initrd.gz
- }
- menuentry --hotkey=r '... Rescue mode' {
- set background_color=black
- linux /install/vmlinuz vga=788 rescue/enable=true --- quiet
- initrd /install/initrd.gz
- }
- menuentry --hotkey=a '... Automated install' {
- set background_color=black
- linux /install/vmlinuz auto=true priority=critical vga=788 --- quiet
- initrd /install/initrd.gz
- }
- submenu --hotkey=s '... Speech-enabled advanced options ...' {
- set menu_color_normal=cyan/blue
- set menu_color_highlight=white/blue
- set theme=/boot/grub/live-theme/theme.txt
- set gfxpayload=keep
- menuentry --hotkey=x '... Expert speech install' {
- set background_color=black
- linux /install/vmlinuz priority=low vga=788 speakup.synth=soft ---
- initrd /install/gtk/initrd.gz
- }
- menuentry --hotkey=r '... Rescue speech mode' {
- set background_color=black
- linux /install/vmlinuz vga=788 rescue/enable=true speakup.synth=soft --- quiet
- initrd /install/gtk/initrd.gz
- }
- menuentry --hotkey=a '... Automated speech install' {
- set background_color=black
- linux /install/vmlinuz auto=true priority=critical vga=788 speakup.synth=soft --- quiet
- initrd /install/gtk/initrd.gz
- }
- }
-}
-
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/background.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/background.png
deleted file mode 100644
index bf8fd87..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/background.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/4MLinux.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/4MLinux.png
deleted file mode 100644
index 1c6fe5e..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/4MLinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/AlpineLinux.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/AlpineLinux.png
deleted file mode 100644
index 6212a1f..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/AlpineLinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/Manjaro.i686.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/Manjaro.i686.png
deleted file mode 100644
index 611a6fb..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/Manjaro.i686.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/Manjaro.x86_64.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/Manjaro.x86_64.png
deleted file mode 100644
index 611a6fb..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/Manjaro.x86_64.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/SystemRescueCD.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/SystemRescueCD.png
deleted file mode 100644
index 7c41182..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/SystemRescueCD.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/android.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/android.png
deleted file mode 100644
index dad066f..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/android.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/anonymous.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/anonymous.png
deleted file mode 100644
index 7d165b6..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/anonymous.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/antergos.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/antergos.png
deleted file mode 100644
index 32e3a3a..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/antergos.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/arch.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/arch.png
deleted file mode 100644
index f6cd870..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/arch.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/archlinux.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/archlinux.png
deleted file mode 100644
index f6cd870..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/archlinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/arcolinux.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/arcolinux.png
deleted file mode 100644
index c5e5e5e..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/arcolinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/artix.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/artix.png
deleted file mode 100644
index 0cbeb11..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/artix.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/bedrock.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/bedrock.png
deleted file mode 100644
index 58ff48a..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/bedrock.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/cancel.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/cancel.png
deleted file mode 100644
index fca2ac9..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/cancel.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/centos.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/centos.png
deleted file mode 100644
index 23fe2fa..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/centos.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/chakra.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/chakra.png
deleted file mode 100644
index 6f63a95..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/chakra.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/debian.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/debian.png
deleted file mode 100644
index 20bea8c..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/debian.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/deepin.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/deepin.png
deleted file mode 100644
index 61c92fb..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/deepin.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/devuan.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/devuan.png
deleted file mode 100644
index ff65401..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/devuan.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/driver.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/driver.png
deleted file mode 100644
index 1621ee7..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/driver.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/edit.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/edit.png
deleted file mode 100644
index 6a43bd9..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/edit.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/efi.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/efi.png
deleted file mode 100644
index 4ecf3b9..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/efi.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/elementary.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/elementary.png
deleted file mode 100644
index 2840354..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/elementary.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/endeavouros.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/endeavouros.png
deleted file mode 100644
index 6b1e530..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/endeavouros.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/fedora.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/fedora.png
deleted file mode 100644
index 926b56d..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/fedora.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/find.efi.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/find.efi.png
deleted file mode 100644
index 0e32321..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/find.efi.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/find.none.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/find.none.png
deleted file mode 100644
index 87d4d0e..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/find.none.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/freebsd.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/freebsd.png
deleted file mode 100644
index fb9408c..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/freebsd.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/garuda.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/garuda.png
deleted file mode 100644
index f699718..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/garuda.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/gentoo.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/gentoo.png
deleted file mode 100644
index bc0ed70..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/gentoo.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/gnu-linux.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/gnu-linux.png
deleted file mode 100644
index db2fcfd..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/gnu-linux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/haiku.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/haiku.png
deleted file mode 100644
index ce7f818..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/haiku.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/help.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/help.png
deleted file mode 100644
index d8b5a17..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/help.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kali.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kali.png
deleted file mode 100644
index 900dc82..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kali.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kaos.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kaos.png
deleted file mode 100644
index 9fd4e89..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kaos.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kbd.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kbd.png
deleted file mode 100644
index 6ace3ac..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kbd.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/korora.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/korora.png
deleted file mode 100644
index 456e876..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/korora.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kubuntu.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kubuntu.png
deleted file mode 100644
index 7a79ff3..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/kubuntu.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lang.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lang.png
deleted file mode 100644
index 3c9c1d7..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lang.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lfs.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lfs.png
deleted file mode 100644
index 2c54036..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lfs.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/linux.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/linux.png
deleted file mode 100644
index 348ebdd..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/linux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/linuxmint.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/linuxmint.png
deleted file mode 100644
index 7d9da81..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/linuxmint.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lubuntu.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lubuntu.png
deleted file mode 100644
index 057c8e2..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/lubuntu.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/macosx.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/macosx.png
deleted file mode 100644
index ea03e77..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/macosx.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mageia.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mageia.png
deleted file mode 100644
index 79afa76..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mageia.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/manjaro.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/manjaro.png
deleted file mode 100644
index 611a6fb..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/manjaro.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mate.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mate.png
deleted file mode 100644
index b2fc22a..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mate.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/memtest.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/memtest.png
deleted file mode 100644
index 1621ee7..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/memtest.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mx-linux.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mx-linux.png
deleted file mode 100644
index 49f1133..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/mx-linux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/neon.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/neon.png
deleted file mode 100644
index e41906e..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/neon.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/opensuse.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/opensuse.png
deleted file mode 100644
index d844fd5..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/opensuse.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/parrot.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/parrot.png
deleted file mode 100644
index 3333de9..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/parrot.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/pop-os.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/pop-os.png
deleted file mode 100644
index 014d9f3..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/pop-os.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/pop.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/pop.png
deleted file mode 100644
index 014d9f3..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/pop.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/recovery.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/recovery.png
deleted file mode 100644
index 7b69b14..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/recovery.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/regolith.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/regolith.png
deleted file mode 100644
index 5ece07b..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/regolith.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/restart.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/restart.png
deleted file mode 100644
index 9715302..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/restart.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/rocky.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/rocky.png
deleted file mode 100644
index be144f6..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/rocky.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/shutdown.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/shutdown.png
deleted file mode 100644
index fc9cf16..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/shutdown.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/siduction.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/siduction.png
deleted file mode 100644
index d16549b..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/siduction.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/slackware.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/slackware.png
deleted file mode 100644
index 4c31a3f..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/slackware.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/solus.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/solus.png
deleted file mode 100644
index 338718b..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/solus.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/steamos.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/steamos.png
deleted file mode 100644
index df28bcc..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/steamos.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/type.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/type.png
deleted file mode 100644
index 5c48476..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/type.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/tz.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/tz.png
deleted file mode 100644
index 220b29b..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/tz.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/ubuntu.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/ubuntu.png
deleted file mode 100644
index 352fbe0..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/ubuntu.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/unknown.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/unknown.png
deleted file mode 100644
index 4733dc8..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/unknown.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/unset.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/unset.png
deleted file mode 100644
index 15e3d3c..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/unset.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/ventoy.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/ventoy.png
deleted file mode 100644
index 7abdc6c..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/ventoy.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/void.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/void.png
deleted file mode 100644
index 01cc2f3..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/void.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/windows.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/windows.png
deleted file mode 100644
index d5c7cc3..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/windows.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/windows11.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/windows11.png
deleted file mode 100644
index fe97d9f..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/windows11.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xero.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xero.png
deleted file mode 100644
index 2221c73..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xero.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xerolinux.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xerolinux.png
deleted file mode 100644
index 2221c73..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xerolinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xubuntu.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xubuntu.png
deleted file mode 100644
index f43abc7..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/xubuntu.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/zorin.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/zorin.png
deleted file mode 100644
index c1506c4..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/icons/zorin.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_c.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_c.png
deleted file mode 100644
index b1f8d58..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_c.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_e.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_e.png
deleted file mode 100644
index 9332368..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_e.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_w.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_w.png
deleted file mode 100644
index 28f6424..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/select_w.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_c.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_c.png
deleted file mode 100644
index d0dd52a..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_c.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_e.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_e.png
deleted file mode 100644
index 394cbe4..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_e.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_n.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_n.png
deleted file mode 100644
index 476f8bc..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_n.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_ne.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_ne.png
deleted file mode 100644
index 9e26959..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_ne.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_nw.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_nw.png
deleted file mode 100644
index 5c3cba8..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_nw.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_s.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_s.png
deleted file mode 100644
index 85a8901..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_s.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_se.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_se.png
deleted file mode 100644
index d8627ee..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_se.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_sw.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_sw.png
deleted file mode 100644
index 67c600c..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_sw.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_w.png b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_w.png
deleted file mode 100644
index d066e2d..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminal_box_w.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-12.pf2 b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-12.pf2
deleted file mode 100644
index 6092035..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-12.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-14.pf2 b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-14.pf2
deleted file mode 100644
index 8ab8bd1..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-14.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-16.pf2 b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-16.pf2
deleted file mode 100644
index 6e6b25d..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-16.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-18.pf2 b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-18.pf2
deleted file mode 100644
index 129cef1..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/terminus-18.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/theme.txt b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/theme.txt
deleted file mode 100644
index c666b67..0000000
--- a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/theme.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-# Main options
-title-text: ""
-desktop-image: "background.png"
-desktop-color: "#000000"
-terminal-font: "Terminus Regular 14"
-terminal-box: "terminal_box_*.png"
-terminal-left: "0"
-terminal-top: "0"
-terminal-width: "100%"
-terminal-height: "100%"
-terminal-border: "0"
-
-# Boot menu
-+ boot_menu {
- left = 15%
- top = 40%
- width = 85%
- height = 65%
- item_font = "Ubuntu Regular 20"
- item_color = "#cccccc"
- selected_item_color = "#ffffff"
- icon_width = 36
- icon_height = 36
- item_icon_space = 20
- item_height = 40
- item_padding = 2
- item_spacing = 10
- selected_item_pixmap_style = "select_*.png"
-}
-
-
-# Countdown label
-# You can change the name of default starting OS here
-+ label {
- left = 15%
- top = 31%
- align = "center"
- id = "__timeout__"
- text = "Peppermint will start in %d seconds"
- color = "#cccccc"
- font = "Ubuntu Regular 17"
-}
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/ubuntu_regular_17.pf2 b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/ubuntu_regular_17.pf2
deleted file mode 100644
index 9405954..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/ubuntu_regular_17.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/ubuntu_regular_20.pf2 b/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/ubuntu_regular_20.pf2
deleted file mode 100644
index 3d903ba..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/live-theme/ubuntu_regular_20.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/boot/grub/splash.png b/PepDeb64/fusato/config/includes.binary/boot/grub/splash.png
deleted file mode 100644
index bf8fd87..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/boot/grub/splash.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/addrk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/addrk.cfg
deleted file mode 100644
index e9074de..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/addrk.cfg
+++ /dev/null
@@ -1,9 +0,0 @@
-label expertdark
- menu label E^xpert install
- kernel /install/vmlinuz
- append priority=low vga=788 initrd=/install/initrd.gz theme=dark ---
-include rqdrk.cfg
-label autodark
- menu label ^Automated install
- kernel /install/vmlinuz
- append auto=true priority=critical vga=788 initrd=/install/initrd.gz theme=dark --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/addrkgtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/addrkgtk.cfg
deleted file mode 100644
index 83db79e..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/addrkgtk.cfg
+++ /dev/null
@@ -1,12 +0,0 @@
-menu hshift 9
-menu width 58
-
-label expertdarkgui
- menu label Graphical expert install
- kernel /install/vmlinuz
- append priority=low vga=788 initrd=/install/gtk/initrd.gz theme=dark ---
-include rqdrkgtk.cfg
-label autodarkgui
- menu label Graphical automated install
- kernel /install/gtk/vmlinuz
- append auto=true priority=critical vga=788 initrd=/install/gtk/initrd.gz theme=dark --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/adgtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/adgtk.cfg
deleted file mode 100644
index 524951e..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/adgtk.cfg
+++ /dev/null
@@ -1,12 +0,0 @@
-menu hshift 9
-menu width 58
-
-label expertgui
- menu label Graphical expert install
- kernel /install/vmlinuz
- append priority=low vga=788 initrd=/install/gtk/initrd.gz ---
-include rqgtk.cfg
-label autogui
- menu label Graphical automated install
- kernel /install/vmlinuz
- append auto=true priority=critical vga=788 initrd=/install/gtk/initrd.gz --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/adspkgtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/adspkgtk.cfg
deleted file mode 100644
index e6d9d33..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/adspkgtk.cfg
+++ /dev/null
@@ -1,19 +0,0 @@
-menu hshift 9
-menu width 58
-
-menu begin adspk
- menu label ^Speech-enabled advanced options
- menu title Speech-enabled advanced options
- label advancedmenu
- menu label ^Back..
- menu exit
- label expertspk
- menu label E^xpert speech install
- kernel /install/vmlinuz
- append priority=low vga=788 initrd=/install/gtk/initrd.gz speakup.synth=soft ---
- include rqspkgtk.cfg
- label autospk
- menu label ^Automated speech install
- kernel /install/vmlinuz
- append auto=true priority=critical vga=788 initrd=/install/gtk/initrd.gz speakup.synth=soft --- quiet
-menu end
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/adtxt.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/adtxt.cfg
deleted file mode 100644
index acb1e3c..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/adtxt.cfg
+++ /dev/null
@@ -1,9 +0,0 @@
-label expert
- menu label E^xpert install
- kernel /install/vmlinuz
- append priority=low vga=788 initrd=/install/initrd.gz ---
-include rqtxt.cfg
-label auto
- menu label ^Automated install
- kernel /install/vmlinuz
- append auto=true priority=critical vga=788 initrd=/install/initrd.gz --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/boot.cat b/PepDeb64/fusato/config/includes.binary/isolinux/boot.cat
deleted file mode 100644
index a52d039..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/boot.cat and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/drk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/drk.cfg
deleted file mode 100644
index 25acc00..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/drk.cfg
+++ /dev/null
@@ -1,6 +0,0 @@
-label installdark
-default installdark
- menu label ^Install
- menu default
- kernel /install/vmlinuz
- append vga=788 initrd=/install/initrd.gz theme=dark --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/drkgtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/drkgtk.cfg
deleted file mode 100644
index 7e460c6..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/drkgtk.cfg
+++ /dev/null
@@ -1,6 +0,0 @@
-label installdarkgui
-default installdarkgui
- menu label ^Graphical install
- menu default
- kernel /install/vmlinuz
- append vga=788 initrd=/install/gtk/initrd.gz theme=dark --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/drkmenu.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/drkmenu.cfg
deleted file mode 100644
index 753528a..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/drkmenu.cfg
+++ /dev/null
@@ -1,21 +0,0 @@
-menu background #00000000
-menu color title * #FFFFFFFF *
-menu color border * #00000000 #00000000 none
-menu color unsel * #ffffffff #ff000000 *
-menu color hotkey * #ffdddd00 #ff000000 *
-menu color sel * #ffffffff #ff808080 *
-menu color hotsel * #ffdddd00 #ff808080 *
-menu color tabmsg * #ffffffff #00000000 *
-menu color help 37;40 #ffdddd00 #00000000 none
-# XXX When adjusting vshift, take care that rows is set to a small
-# enough value so any possible menu will fit on the screen,
-# rather than falling off the bottom.
-menu vshift 8
-menu rows 12
-# The help line must be at least one line from the bottom.
-menu helpmsgrow 14
-# The command line must be at least one line from the help line.
-menu cmdlinerow 16
-menu timeoutrow 16
-menu tabmsgrow 18
-menu tabmsg Press ENTER to boot or TAB to edit a menu entry
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/exithelp.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/exithelp.cfg
deleted file mode 100644
index 3119e65..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/exithelp.cfg
+++ /dev/null
@@ -1,3 +0,0 @@
-label menu
- kernel vesamenu.c32
- config isolinux.cfg
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f1.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f1.txt
deleted file mode 100644
index 5451a9b..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f1.txt
+++ /dev/null
@@ -1,25 +0,0 @@
- 0fWelcome to Debian GNU/Linux!07 09F107
-
-This is a PeppermintOS installation CD-ROM.
-It was built 20230311-21:01; d-i 20230311-00:01:40.
-
-0fHELP INDEX07
-
-0fKEY TOPIC07
-
-<09F107> This page, the help index.
-<09F207> Prerequisites for installing Debian.
-<09F307> Boot methods for special ways of using this CD-ROM
-<09F407> Additional boot methods; rescue mode.
-<09F507> Special boot parameters, overview.
-<09F607> Special boot parameters for special machines.
-<09F707> Special boot parameters for selected disk controllers.
-<09F807> Special boot parameters for the install system.
-<09F907> How to get help.
-<09F1007> Copyrights and warranties.
-
-For F1-F9 type control and F then the digit 1-9
-For F10 type control and F then the digit 0
-
-
-Press F2 through F10 for details, or ENTER to
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f10.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f10.txt
deleted file mode 100644
index 09dfa12..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f10.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-0fCOPYRIGHTS AND WARRANTIES07 09F1007
-
-PeppermintOS is Copyright (C) 2010-2023 Software in the Public Interest,
-and others.
-
-The PepperminOS system is freely redistributable. After installation,
-the exact distribution terms for each package are described in the
-corresponding file /usr/share/doc/0bpackagename07/copyright.
-
-PeppermintOS comes with 0fABSOLUTELY NO WARRANTY07, to the extent
-permitted by applicable law.
-
-
-
-
-
-
-
-
-
-
-
-Press F1control and F then 1 for the help index, or ENTER to
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f2.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f2.txt
deleted file mode 100644
index dc8b754..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f2.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-0fPREREQUISITES FOR INSTALLING PEPPERMINT07 09F207
-
-You must have at least 285 megabytes of RAM to use this Debian installer.
-
-You should have space on your hard disk to create a new disk partition
-of at least 1160 megabytes to install the base system. You'll need more
-disk space to install additional packages, depending on what you wish
-to do with your new Debian system.
-
-See the Installation Guide or the FAQ for more information; both
-documents are available at the Debian web site, 0fhttps://peppermintos.com/07
-
-Thank you for choosing PeppermintOS!
-
-
-
-
-
-
-
-
-
-Press F1control and F then 1 for the help index, or ENTER to
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f3.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f3.txt
deleted file mode 100644
index 144d25d..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f3.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-0fBOOT METHODS07 09F307
-
-0fAvailable boot methods:07
-
-0finstallgui07
- Start the installation using the graphical installer -- this is the
- default CD-ROM install
-0finstall07
- Start the installation using the text mode installer
-0fexpertgui07
- Start the installation in expert mode, for maximum control, using
- the graphical installer
-0fexpert07
- Start the installation in expert mode using the text mode installer
-
-To use one of these boot methods, type it at the prompt, optionally
-followed by any boot parameters. For example:
- boot: install acpi=off
-
-If unsure, you should use the default boot method, with no special
-parameters, by simply pressing enter at the boot prompt.
-
-Except in expert mode, non-critical kernel boot messages are suppressed.
-
-Press F1control and F then 1 for the help index, or ENTER to
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f4.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f4.txt
deleted file mode 100644
index 74de4bf..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f4.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-0fRESCUE MODE07 09F407
-
-0fUse one of these boot methods to rescue an existing install:07
-
-0frescuegui07
- Boot into rescue mode using the graphical installer.
-0frescue07
- Boot into rescue mode.
-
-
-
-
-
-To use one of these boot methods, type it at the prompt, optionally
-followed by any boot parameters. For example:
- boot: rescue acpi=off
-
-
-
-
-
-
-Press F1control and F then 1 for the help index, or ENTER to
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f5.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f5.txt
deleted file mode 100644
index 6e73913..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f5.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-0fSPECIAL BOOT PARAMETERS - OVERVIEW07 09F507
-
-On a few systems, you may need to specify a parameter at the 0fboot:07
-prompt in order to boot the system. For example, Linux may not be able
-to autodetect your hardware, and you may need to explicitly specify
-its location or type for it to be recognized.
-
-For more information about what boot parameters you can use, press:
-
- <09F607> -- boot parameters for special machines
- <09F707> -- boot parameters for various disk controllers
- <09F807> -- boot parameters understood by the install system
-
-Note that to specify a parameter for a particular kernel module, use the form
-module.param=value, for example: libata.atapi_enabled=1
-
-
-
-
-
-
-
-Press F1control and F then 1 for the help index, or ENTER to
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f6.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f6.txt
deleted file mode 100644
index ad8220f..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f6.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-0fSPECIAL BOOT PARAMETERS - VARIOUS HARDWARE07 09F607
-
-You can use the following boot parameters at the 0fboot:07 prompt,
-in combination with the boot method (see <09F307>).
-If you use hex numbers you have to use the 0x prefix (e.g., 0x300).
-0f
-HARDWARE PARAMETER TO SPECIFY07
-IBM PS/1 or ValuePoint (IDE disk) 0fhd=0bcylinders0f,0bheads0f,0bsectors07
-Some IBM ThinkPads 0ffloppy.floppy=thinkpad07
-Protect I/O port regions 0freserve=0biobase0f,0bextent07[0f,0b...07]
-Laptops with screen display problems 0fvga=77107
-Use first serial port at 9600 baud 0fconsole=ttyS0,9600n807
-Force use of generic IDE driver 0fall_generic_ide=107
-Possible (temporary) workarounds for lockups or other hardware failures:
-disable buggy APIC interrupt routing 0fnoapic nolapic07
-(partly) disable ACPI 0facpi=noirq07 or 0facpi=off07
-disable USB 0fnousb07
-poll for interrupts 0firqpoll07
-
-For example:
- boot: install vga=771 noapic nolapic
-
-Press F1control and F then 1 for the help index, or ENTER to
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f7.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f7.txt
deleted file mode 100644
index bfd39fc..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f7.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-0fSPECIAL BOOT PARAMETERS - VARIOUS DISK DRIVES07 09F707
-
-You can use the following boot parameters at the 0fboot:07 prompt,
-in combination with the boot method (see <09F307>).
-0f
-HARDWARE PARAMETER TO SPECIFY07
-Adaptec 151x, 152x 0faha152x.aha152x=0biobase07[0f,0birq07[0f,0bscsi-id07[0f,0breconnect07]]]
-Adaptec 1542 0faha1542.aha1542=0biobase07[0f,0bbuson0f,0bbusoff07[0f,0bdmaspeed07]]
-Adaptec 274x, 284x 0faic7xxx.aic7xxx=no_reset07 (enabled if non-zero)
-BusLogic SCSI Hosts 0fBusLogic.BusLogic=0biobase07
-Certain DELL machines 0faic7xxx.aic7xxx=no_probe07
-
-This list is incomplete, see the kernel's kernel-parameters.txt file
-for more.
-
-
-
-
-
-For example:
- boot: install aic7xxx.aic7xxx=no_probe
-
-Press F1control and F then 1 for the help index, or ENTER to
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f8.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f8.txt
deleted file mode 100644
index 936e212..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f8.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-0fSPECIAL BOOT PARAMETERS - INSTALLATION SYSTEM07 09F807
-
-You can use the following boot parameters at the 0fboot:07 prompt,
-in combination with the boot method (see <09F307>). These parameters
-control how the installer works.
-0f
-RESULT PARAMETER07
-Disable framebuffer 0fvga=normal fb=false07
-Don't start PCMCIA 0fhw-detect/start_pcmcia=false07
-Force static network config 0fnetcfg/disable_dhcp=true07
-Set keyboard map 0fbootkbd=es07
-Select the desktop 0fdesktop=kde07
-
-Accessibility options (last 2 options not available for all images):
- Use dark contrast theme 0ftheme=dark07
- Use Braille tty 0fbrltty=driver,device,texttable07
- Use Speakup 0fspeakup.synth=driver07
-
-
-For example:
- boot: install vga=normal fb=false
-
-Press F1control and F then 1 for the help index, or ENTER to
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/f9.txt b/PepDeb64/fusato/config/includes.binary/isolinux/f9.txt
deleted file mode 100644
index b6bdb3e..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/f9.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-0fGETTING HELP07 09F907
-
-If you can't install Debian, don't despair! The PepperminOS team is ready to
-help you! We are especially interested in hearing about installation
-problems, because in general they don't happen to only 0fone07 person.
-We've either already heard about your particular problem and can dispense a
-quick fix, or we would like to hear about it and work through it with you,
-and the next user who comes up with the same problem will profit from your
-experience!
-
-See the Installation Guide or the FAQ for more information; both
-documents are available at the Debian web site, 0fhttps://peppermintos.com/07
-
-
-
-
-
-
-
-
-
-
-Press F1control and F then 1 for the help index, or ENTER to
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/g2ldr b/PepDeb64/fusato/config/includes.binary/isolinux/g2ldr
deleted file mode 100644
index f5da412..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/g2ldr and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/g2ldr.mbr b/PepDeb64/fusato/config/includes.binary/isolinux/g2ldr.mbr
deleted file mode 100644
index 2cdd88a..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/g2ldr.mbr and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/gtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/gtk.cfg
deleted file mode 100644
index 14003e8..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/gtk.cfg
+++ /dev/null
@@ -1,6 +0,0 @@
-default installgui
-label installgui
- menu label ^Graphical install
- menu default
- kernel /install/vmlinuz
- append vga=788 initrd=/install/gtk/initrd.gz --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/isolinux.bin b/PepDeb64/fusato/config/includes.binary/isolinux/isolinux.bin
deleted file mode 100644
index 95329f8..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/isolinux.bin and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/isolinux.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/isolinux.cfg
deleted file mode 100644
index 312653c..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/isolinux.cfg
+++ /dev/null
@@ -1,7 +0,0 @@
-# D-I config version 2.0
-# search path for the c32 support libraries (libcom32, libutil etc.)
-path
-prompt 0
-timeout 0
-include menu.cfg
-default vesamenu.c32
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/ldlinux.c32 b/PepDeb64/fusato/config/includes.binary/isolinux/ldlinux.c32
deleted file mode 100644
index e94389b..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/ldlinux.c32 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/libcom32.c32 b/PepDeb64/fusato/config/includes.binary/isolinux/libcom32.c32
deleted file mode 100644
index c4265b9..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/libcom32.c32 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/libutil.c32 b/PepDeb64/fusato/config/includes.binary/isolinux/libutil.c32
deleted file mode 100644
index 6fc1da7..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/libutil.c32 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/menu.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/menu.cfg
deleted file mode 100644
index cf652c3..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/menu.cfg
+++ /dev/null
@@ -1,55 +0,0 @@
-menu hshift 4
-menu width 70
-
-menu title PeppermintOS net installer menu (BIOS mode)
-include stdmenu.cfg
-include gtk.cfg
-include txt.cfg
-menu begin advanced
- menu label ^Advanced options
- menu title Advanced options
- include stdmenu.cfg
- label mainmenu
- menu label ^Back..
- menu exit
- include adgtk.cfg
- include adtxt.cfg
- include adspkgtk.cfg
- include adspk.cfg
-menu end
-menu begin dark
- menu label Accessible ^dark contrast installer menu
- menu title Accessible dark contrast option
- include drkmenu.cfg
- label mainmenu
- menu label ^Back..
- menu exit
- include drkgtk.cfg
- include drk.cfg
- menu begin advanced
- menu label ^Advanced options
- menu title Advanced options
- include drkmenu.cfg
- label mainmenu
- menu label ^Back..
- menu exit
- include addrkgtk.cfg
- include addrk.cfg
- menu end
- include x86drkme.cfg
- label help
- menu label ^Help
- text help
- Display help screens; type 'menu' at boot prompt to return to this menu
- endtext
- config prompt.cfg
-menu end
-include x86menu.cfg
-label help
- menu label ^Help
- text help
- Display help screens; type 'menu' at boot prompt to return to this menu
- endtext
- config prompt.cfg
-include spkgtk.cfg
-include spk.cfg
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/prompt.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/prompt.cfg
deleted file mode 100644
index 3076499..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/prompt.cfg
+++ /dev/null
@@ -1,16 +0,0 @@
-prompt 1
-display f1.txt
-timeout 0
-include menu.cfg
-include exithelp.cfg
-
-f1 f1.txt
-f2 f2.txt
-f3 f3.txt
-f4 f4.txt
-f5 f5.txt
-f6 f6.txt
-f7 f7.txt
-f8 f8.txt
-f9 f9.txt
-f10 f10.txt
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/rqdrk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/rqdrk.cfg
deleted file mode 100644
index c30ed87..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/rqdrk.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-label rescuedark
- menu label ^Rescue mode
- kernel /install/vmlinuz
- append vga=788 initrd=/install/initrd.gz rescue/enable=true theme=dark --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/rqdrkgtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/rqdrkgtk.cfg
deleted file mode 100644
index 317e749..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/rqdrkgtk.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-label rescuedarkgui
- menu label Graphical rescue mode
- kernel /install/vmlinuz
- append vga=788 initrd=/install/gtk/initrd.gz rescue/enable=true theme=dark --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/rqgtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/rqgtk.cfg
deleted file mode 100644
index 10680cc..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/rqgtk.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-label rescuegui
- menu label Graphical rescue mode
- kernel /install/vmlinuz
- append vga=788 initrd=/install/gtk/initrd.gz rescue/enable=true --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/rqspkgtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/rqspkgtk.cfg
deleted file mode 100644
index 6117159..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/rqspkgtk.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-label rescuespk
- menu label ^Rescue speech mode
- kernel /install/vmlinuz
- append vga=788 initrd=/install/gtk/initrd.gz rescue/enable=true speakup.synth=soft --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/rqtxt.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/rqtxt.cfg
deleted file mode 100644
index fdb931c..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/rqtxt.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-label rescue
- menu label ^Rescue mode
- kernel /install/vmlinuz
- append vga=788 initrd=/install/initrd.gz rescue/enable=true --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/setup.exe b/PepDeb64/fusato/config/includes.binary/isolinux/setup.exe
deleted file mode 100644
index 8f62e8f..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/setup.exe and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/spkgtk.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/spkgtk.cfg
deleted file mode 100644
index 7047551..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/spkgtk.cfg
+++ /dev/null
@@ -1,8 +0,0 @@
-label installspk
- menu label Install with ^speech synthesis
- kernel /install/vmlinuz
- append vga=788 initrd=/install/gtk/initrd.gz speakup.synth=soft --- quiet
-# timeout to speech-enabled install
-timeout 300
-ontimeout /install/vmlinuz vga=788 initrd=/install/gtk/initrd.gz speakup.synth=soft --- quiet
-menu autoboot Press a key, otherwise speech synthesis will be started in # second{,s}...
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/splash.png b/PepDeb64/fusato/config/includes.binary/isolinux/splash.png
deleted file mode 100644
index bf8fd87..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/splash.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/stdmenu.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/stdmenu.cfg
deleted file mode 100644
index f5ff63f..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/stdmenu.cfg
+++ /dev/null
@@ -1,19 +0,0 @@
-menu background splash.png
-menu color title * #FFFFFFFF *
-menu color border * #00000000 #00000000 none
-menu color sel * #ffffffff #76a1d0ff *
-menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *
-menu color tabmsg * #ffffffff #00000000 *
-menu color help 37;40 #ffdddd00 #00000000 none
-# XXX When adjusting vshift, take care that rows is set to a small
-# enough value so any possible menu will fit on the screen,
-# rather than falling off the bottom.
-menu vshift 8
-menu rows 12
-# The help line must be at least one line from the bottom.
-menu helpmsgrow 14
-# The command line must be at least one line from the help line.
-menu cmdlinerow 16
-menu timeoutrow 16
-menu tabmsgrow 18
-menu tabmsg Press ENTER to boot or TAB to edit a menu entry
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/txt.cfg b/PepDeb64/fusato/config/includes.binary/isolinux/txt.cfg
deleted file mode 100644
index 1f0dbc0..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/txt.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-label install
- menu label ^Install
- kernel /install/vmlinuz
- append vga=788 initrd=/install/initrd.gz --- quiet
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/vesamenu.c32 b/PepDeb64/fusato/config/includes.binary/isolinux/vesamenu.c32
deleted file mode 100644
index bbb65e0..0000000
Binary files a/PepDeb64/fusato/config/includes.binary/isolinux/vesamenu.c32 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.binary/isolinux/win32-loader.ini b/PepDeb64/fusato/config/includes.binary/isolinux/win32-loader.ini
deleted file mode 100644
index c635fe7..0000000
--- a/PepDeb64/fusato/config/includes.binary/isolinux/win32-loader.ini
+++ /dev/null
@@ -1,11 +0,0 @@
-[installer]
-kernel=linux
-arch=amd64
-amd64/linux=install/vmlinuz
-amd64/initrd=install/initrd.gz
-amd64/gtk/linux=install/vmlinuz
-amd64/gtk/initrd=install/gtk/initrd.gz
-
-[grub]
-g2ldr=g2ldr
-g2ldr.mbr=g2ldr.mbr
diff --git a/PepDeb64/fusato/config/includes.installer/preseed.cfg b/PepDeb64/fusato/config/includes.installer/preseed.cfg
deleted file mode 100644
index b0f76f8..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed.cfg
+++ /dev/null
@@ -1,29 +0,0 @@
-# SPDX-License-Identifier: GPL-3.0-or-later
-#
-# SPDX-FileCopyrightText: 2023 PeppermintOS Team (peppermintosteam@proton.me)
-
-#This preseed file includes configuration settings for a custom repository with the 'contrib' and 'non-free' components #enabled, as well as disabling the automatic response to the Debian popularity contest.
-
-# Add your custom repositories
-d-i apt-setup/local0/repository string \
- http://repo.peppermintos.com/packages bookworm main contrib non-free non-free-firmware
-d-i apt-setup/local0/comment string PeppermintOS repository
-d-i apt-setup/local0/source boolean true
-
-# URL to the public key of the local repository
-d-i apt-setup/local0/key string http://repo.peppermintos.com/packages/conf/peppermint-keyring.gpg
-
-# You can choose to install non-free and contrib software.
-d-i apt-setup/non-free boolean true
-d-i apt-setup/contrib boolean true
-d-i apt-setup/non-free-firmware boolean true
-
-# Select which update services to use; define the mirrors to be used.
-# Values shown below are the normal defaults.
-d-i apt-setup/services-select multiselect security, updates
-d-i apt-setup/security_host string security.debian.org
-
-# Remove popularity-contest
-popularity-contest popularity-contest/participate boolean false
-
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/apps/Pephub.desktop b/PepDeb64/fusato/config/includes.installer/preseed/apps/Pephub.desktop
deleted file mode 100755
index 55a4e0b..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/apps/Pephub.desktop
+++ /dev/null
@@ -1,11 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Type=Application
-Name=Peppermint Hub
-Exec=hub
-Icon=/usr/share/pixmaps/peppermint-hub.png
-Terminal=false
-Categories=Settings
-StartupNotify=True
-Comment=Use the Hub to configure your system
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/apps/Welcome.desktop b/PepDeb64/fusato/config/includes.installer/preseed/apps/Welcome.desktop
deleted file mode 100755
index a669bc5..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/apps/Welcome.desktop
+++ /dev/null
@@ -1,11 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Type=Application
-Name=Welcome to Peppermint
-Exec=welcome
-Icon=/usr/share/pixmaps/peppermint.png
-Terminal=false
-Categories=Settings
-StartupNotify=True
-Name[en_US]=Welcome to Peppermint
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/apps/gdebi.desktop b/PepDeb64/fusato/config/includes.installer/preseed/apps/gdebi.desktop
deleted file mode 100755
index 9bc2eba..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/apps/gdebi.desktop
+++ /dev/null
@@ -1,164 +0,0 @@
-[Desktop Entry]
-Name=GDebi Package Installer
-Name[ar]=مثبت الحزم GDebi
-Name[ast]=Instalador de Paquetes GDebi
-Name[bg]=Инсталатор на пакет
-Name[bn]=প্যাকেজ ইনস্টলার
-Name[bs]=GDebi Paketni Instaler
-Name[ca]=Instal·lador de paquets GDebi
-Name[ca@valencia]=Instal·lador de paquets GDebi
-Name[cs]=Instalátor balíků GDebi
-Name[da]=GDebi pakkeinstalleringsprogram
-Name[de]=GDebi-Paket-Installationsprogramm
-Name[el]=Εγκατάσταση πακέτων GDebi
-Name[en_AU]=GDebi Package Installer
-Name[en_CA]=GDebi Package Installer
-Name[en_GB]=GDebi Package Installer
-Name[eo]=Instalilo de GDebi-pakaĵoj
-Name[es]=Instalador de paquetes GDebi
-Name[et]=GDebi Paketipaigaldus
-Name[eu]=GDebi pakete-instalatzailea
-Name[fi]=GDebi-paketinasentaja
-Name[fo]=GDebi Pakka innleggjari
-Name[fr]=Installateur de paquets GDebi
-Name[gl]=Instalador de paquetes GDebi
-Name[he]=מתקין החבילות GDebi
-Name[hu]=GDebi csomagtelepítő
-Name[id]=Pemasang Paket GDebi
-Name[it]=Installatore pacchetto GDebi
-Name[ja]=GDebi パッケージインストーラー
-Name[ko]=GDebi 패키지 설치 프로그램
-Name[lt]=„GDebi“ paketų diegyklė
-Name[ms]=Pemasang Pakej GDebi
-Name[nb]=GDebi pakkeinstallerer
-Name[nl]=GDebi pakketinstalleerder
-Name[oc]=Installador de paquets GDebi
-Name[pl]=Instalator pakietów GDebi
-Name[pt]=Instalador de Pacotes
-Name[pt_BR]=Instalador de pacotes GDebi
-Name[ro]=GDebi instalator de pachete
-Name[ru]=Программа установки пакетов GDebi
-Name[sk]=Inštalátor balíkov GDebi
-Name[sl]=Namestilnik paketov GDebi
-Name[sr]=ГДеби — Инсталер пакета
-Name[sv]=Paketinstalleraren GDebi
-Name[te]=GDebi ప్యాకేజీ స్థాపకం
-Name[tr]=GDebi Paket Kurucu
-Name[uk]=Встановлювач пакунків GDebi
-Name[ur]=جی ڈیبی پیکج انسٹالر
-Name[zh_CN]=GDebi 软件包安装程序
-Name[zh_HK]=GDebi 套件安裝程式
-Name[zh_TW]=GDebi 套件安裝程式
-GenericName=Package Installer
-GenericName[ar]=مثبت الحزم
-GenericName[ast]=Instalador de paquetes
-GenericName[bg]=Инсталатор на пакети
-GenericName[bn]=প্যাকেজ ইনস্টলার
-GenericName[bs]=Paketni instaler
-GenericName[ca]=Instal·lador de paquets
-GenericName[ca@valencia]=Instal·lador de paquets
-GenericName[cs]=Instalátor balíků
-GenericName[da]=Pakkeinstalleringsprogram
-GenericName[de]=Paket-Installationsprogramm
-GenericName[el]=Εγκατάσταση πακέτων
-GenericName[en_AU]=Package Installer
-GenericName[en_CA]=Package Installer
-GenericName[en_GB]=Package Installer
-GenericName[eo]=Instalilo de pakaĵoj
-GenericName[es]=Instalador de paquetes
-GenericName[et]=Paketti paigaldus
-GenericName[eu]=Pakete-instalatzailea
-GenericName[fi]=Paketinasentaja
-GenericName[fo]=Pakkainnleggjari
-GenericName[fr]=Installateur de paquets
-GenericName[gl]=Instalador de paquetes
-GenericName[he]=מתקין החבילות
-GenericName[hr]=Paketni instaler
-GenericName[hu]=Csomagtelepítő
-GenericName[id]=Pemasang Paket
-GenericName[it]=Installatore pacchetto
-GenericName[ja]=パッケージインストーラー
-GenericName[ko]=패키지 설치 프로그램
-GenericName[ku]=Sazgera Paketan
-GenericName[lt]=Paketų diegyklė
-GenericName[ms]=Pemasang Pakej
-GenericName[nb]=Pakkeinstallerer
-GenericName[nl]=Pakketinstalleerder
-GenericName[oc]=Installador de paquets
-GenericName[pl]=Instalator pakietów
-GenericName[pt]=Instalador de Pacotes
-GenericName[pt_BR]=Instalador de Pacotes
-GenericName[ro]=Instalator pachete
-GenericName[ru]=Программа установки пакетов
-GenericName[sk]=Inštalátor balíkov
-GenericName[sl]=Namestilnik paketov
-GenericName[sr]=Инсталер пакета
-GenericName[sv]=Paketinstallerare
-GenericName[te]=ప్యాకేజీ స్థాపకం
-GenericName[tr]=Paket Kurucu
-GenericName[uk]=Встановлювач пакунків
-GenericName[ur]=پیکج تنصیب کار
-GenericName[zh_CN]=软件包安装程序
-GenericName[zh_HK]=套件安裝程式
-GenericName[zh_TW]=套件安裝程式
-Comment=Install and view software packages
-Comment[ar]=تثبيت و عرض حزم البرامج
-Comment[ast]=Instalar y ver paquetes de software
-Comment[bg]=Инсталиране и преглед на пакети
-Comment[bn]=সফটওয়্যার প্যাকেজ ইনস্টল করুন এবং দেখুন
-Comment[bs]=Instaliraj i vidi softverski paket
-Comment[ca]=Instal·la i visualitza paquets de programari
-Comment[ca@valencia]=Instal·la i visualitza paquets de programari
-Comment[cs]=Instalovat a prohlížet balíky
-Comment[da]=Installer og vis softwarepakker
-Comment[de]=Software-Pakete installieren und betrachten
-Comment[el]=Εγκαταστήστε και εμφανίστε πακέτα λογισμικού
-Comment[en_AU]=Install and view software packages
-Comment[en_CA]=Install and view software packages
-Comment[en_GB]=Install and view software packages
-Comment[eo]=Instali kaj vidi pakaĵojn de programaroj
-Comment[es]=Instala y muestra paquetes de software
-Comment[eu]=Instalatu eta ikusi software paketeak
-Comment[fi]=Asenna ja tarkastele ohjelmapaketteja
-Comment[fo]=Legg inn og vís ritbúnaðarpakkar
-Comment[fr]=Installer et lister les paquets logiciels
-Comment[gl]=Instalar e ver paquetes de software
-Comment[he]=התקנה וצפייה של חבילות תכנה
-Comment[hr]=Instaliraj i pregledaj pakete
-Comment[hu]=Szoftvercsomagok telepítése és megjelenítése
-Comment[id]=Pasang dan tinjau paket-paket piranti lunak
-Comment[it]=Installa e visualizza pacchetti software
-Comment[ja]=ソフトウェアパッケージのインストールと表示を行います
-Comment[ko]=소프트웨어 패키지를 설치하고 봅니다
-Comment[ku]=Paketên nivîsbariyê saz bike û lê binêre
-Comment[lt]=Įdiegti ir peržiūrėti programinės įrangos paketus
-Comment[ms]=Pasang dan papar pakej perisian
-Comment[nb]=Installer og vis programvarepakker
-Comment[nl]=Programmapakketten installeren en bekijken
-Comment[oc]=Installar e far la lista dels paquets logicials
-Comment[pl]=Instaluje i wyświetla informacje o pakietach oprogramowania
-Comment[pt]=Instalar e ver pacotes de software
-Comment[pt_BR]=Instalar e visualizar pacotes de programa
-Comment[ro]=Instalare şi vizualizare pachete software
-Comment[ru]=Программа установки и просмотра пакетов программ
-Comment[sk]=Inštalácia a zobrazenie balíkov softvéru
-Comment[sl]=Nameščanje in ogled paketov programske opreme
-Comment[sr]=Инсталирајте и погледајте софтверске пакете
-Comment[sv]=Installera och visa programpaket
-Comment[te]=సాఫ్ట్వేర్ ప్యాకేజీలను స్థాపించు మరియు చూడు
-Comment[tr]=Yazılım paketlerini kur ve izle
-Comment[uk]=Встановити та оглянути програмні пакунки
-Comment[ur]=اردو ترجمہ از محمد علی مکی
-Comment[zh_CN]=安装和查看软件包
-Comment[zh_HK]=安裝和檢視軟件套件
-Comment[zh_TW]=安裝和檢視軟體套件
-Exec=sh -c "gdebi-gtk %f"
-Icon=gnome-mime-application-x-deb
-Terminal=false
-Type=Application
-Categories=System;
-MimeType=application/vnd.debian.binary-package;
-NotShowIn=KDE;
-X-Ubuntu-Gettext-Domain=gdebi
-StartupNotify=true
-Keywords=package;apt;dpkg;install
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/apps/kumo.desktop b/PepDeb64/fusato/config/includes.installer/preseed/apps/kumo.desktop
deleted file mode 100755
index ec67327..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/apps/kumo.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Name=Kumo
-GenericName=Kumo
-Comment=Simple SSB Launcher
-Categories=Network;
-Type=Application
-Exec=kumo
-Icon=/usr/share/pixmaps/kumo.png
-Terminal=false
-NoDisplay=false
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/apps/plank.desktop b/PepDeb64/fusato/config/includes.installer/preseed/apps/plank.desktop
deleted file mode 100755
index 2a34df4..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/apps/plank.desktop
+++ /dev/null
@@ -1,67 +0,0 @@
-[Desktop Entry]
-Name=Plank
-GenericName=Dock
-Comment[am]=በጣም ቀላል
-Comment[ar]=بسيط بغباء.
-Comment[bg]=Пределно прост.
-Comment[bs]=Glupavo jednostavan.
-Comment[ca]=Estúpidament simple.
-Comment[cs]=Stupidně jednoduchý.
-Comment[da]=Super simpel.
-Comment[de]=Lächerlich einfach.
-Comment[el]=Βλακωδώς απλό.
-Comment[en_AU]=Stupidly simple.
-Comment[en_CA]=Stupidly simple.
-Comment[en_GB]=Stupidly simple.
-Comment[eo]=Stulte simple.
-Comment[es]=Estúpidamente simple.
-Comment[et]=Hämmastavalt lihtne.
-Comment[eu]=Erraza baino errazagoa.
-Comment[fi]=Todella yksinkertainen.
-Comment[fr]=Stupidement simple.
-Comment[ga]=Simplíocht shimplí.
-Comment[gd]=Cho furasta 's a ghabhas.
-Comment[gl]=Estupidamente simple.
-Comment[he]=טפשי עד כמה שזה פשוט
-Comment[hr]=Neviđeno jednostavan
-Comment[hu]=Nagyszerűen egyszerű.
-Comment[id]=Begitu sederhana.
-Comment[it]=Stupidamente semplice.
-Comment[ja]=超シンプル
-Comment[ka]=ძალიან მარტივი აი ძალიან
-Comment[ko]=어처구니없으리 만치 단순한.
-Comment[lt]=Kvailai paprastas.
-Comment[lv]=Muļķīgi vienkārši.
-Comment[ml]=അനായാസം.
-Comment[ms]=Ringkas la sangat.
-Comment[nb]=Uforstandig enkelt.
-Comment[ne]=एकदमै सरल
-Comment[nl]=Belachelijk eenvoudig.
-Comment[nn]=Idiotsikkert
-Comment[pl]=Idiotycznie prosty.
-Comment[pt]=Estupidamente simples.
-Comment[pt_BR]=Estupidamente simples.
-Comment[ro]=Stupid de simplu.
-Comment[ru]=До безумного прост.
-Comment[sk]=Primitívne jednoduchý.
-Comment[sl]=Bedasto preprost.
-Comment[sma]=dle dan aelhkies.
-Comment[sr]=Шашаво једноставно.
-Comment[sr@latin]=Glupavo jenostavan.
-Comment[sv]=Galet enkelt.
-Comment[ta]=மிகவும் எளிது
-Comment[te]=చాలా సరళమైనది.
-Comment[th]=ง่ายเหี้ยๆ
-Comment[tr]=Son derece basit.
-Comment[uk]=Просто легкий.
-Comment[uz]=Ahmoqona darajada sodda.
-Comment[vi]=Cực kì đơn giản.
-Comment[zh_CN]=简单得无语。
-Comment[zh_TW]=極簡。
-Comment=Stupidly simple.
-Categories=Utility;
-Type=Application
-Exec=plank
-Icon=plank
-Terminal=false
-NoDisplay=false
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/conf/hostname b/PepDeb64/fusato/config/includes.installer/preseed/conf/hostname
deleted file mode 100644
index ac3dd28..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/conf/hostname
+++ /dev/null
@@ -1 +0,0 @@
-PepOS-Live
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/conf/issue b/PepDeb64/fusato/config/includes.installer/preseed/conf/issue
deleted file mode 100644
index 115706f..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/conf/issue
+++ /dev/null
@@ -1,2 +0,0 @@
-Peppermint OS GNU/Linux \n \l
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/conf/issue.net b/PepDeb64/fusato/config/includes.installer/preseed/conf/issue.net
deleted file mode 100644
index c95a2cb..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/conf/issue.net
+++ /dev/null
@@ -1 +0,0 @@
-Peppermint OS
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/conf/os-release b/PepDeb64/fusato/config/includes.installer/preseed/conf/os-release
deleted file mode 100644
index af53259..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/conf/os-release
+++ /dev/null
@@ -1,7 +0,0 @@
-PRETTY_NAME="PeppermintOS"
-NAME="Peppermint"
-ID=peppermint
-VERSION_CODENAME="bookworm"
-HOME_URL="https://peppermintos.com"
-SUPPORT_URL="https://sourceforge.net/p/peppermintos/pepos/"
-BUG_REPORT_URL="https://sourceforge.net/p/peppermintos/pepos/"
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/conf/sources.list b/PepDeb64/fusato/config/includes.installer/preseed/conf/sources.list
deleted file mode 100644
index 696c7b9..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/conf/sources.list
+++ /dev/null
@@ -1,24 +0,0 @@
-# This system was installed using PeppermintOS removable media
-# (e.g. netinst, live or single CD). The matching "deb cdrom"
-# entries were removed at the end of the installation process.
-# For information about how to configure apt package sources,
-# see the sources.list(5) manual.
-
-# Main Repo - main contrib non-free
-deb http://deb.debian.org/debian/ bookworm main contrib non-free
-deb-src http://deb.debian.org/debian/ bookworm main contrib non-free
-
-# Security Repo - main contrib non-free
-#deb http://security.debian.org/ bookworm-security main contrib non-free
-#deb-src http://security.debian.org/ bookworm-security main contrib non-free
-
-# Updates Repo - main contrib non-free
-#deb http://deb.debian.org/debian bookworm-updates main contrib non-free
-#deb-src http://deb.debian.org/debian bookworm-updates main
-#deb http://deb.debian.org/debian/ bookworm-proposed-updates main contrib non-free
-#deb-src http://deb.debian.org/debian/ bookworm-proposed-updates main contrib non-free
-
-# bookworm-backports, previously on backports.debian.org
-#deb http://deb.debian.org/debian/ bookworm-backports main contrib non-free
-#deb-src http://deb.debian.org/debian/ bookworm-backports main contrib non-free
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/database/welval.db b/PepDeb64/fusato/config/includes.installer/preseed/database/welval.db
deleted file mode 100644
index 743b999..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/database/welval.db and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/background.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/background.png
deleted file mode 100644
index bf8fd87..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/background.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/4MLinux.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/4MLinux.png
deleted file mode 100644
index 1c6fe5e..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/4MLinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/AlpineLinux.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/AlpineLinux.png
deleted file mode 100644
index 6212a1f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/AlpineLinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/Manjaro.i686.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/Manjaro.i686.png
deleted file mode 100644
index 611a6fb..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/Manjaro.i686.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/Manjaro.x86_64.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/Manjaro.x86_64.png
deleted file mode 100644
index 611a6fb..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/Manjaro.x86_64.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/SystemRescueCD.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/SystemRescueCD.png
deleted file mode 100644
index 7c41182..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/SystemRescueCD.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/android.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/android.png
deleted file mode 100644
index dad066f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/android.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/anonymous.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/anonymous.png
deleted file mode 100644
index 7d165b6..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/anonymous.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/antergos.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/antergos.png
deleted file mode 100644
index 32e3a3a..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/antergos.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/arch.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/arch.png
deleted file mode 100644
index f6cd870..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/arch.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/archlinux.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/archlinux.png
deleted file mode 100644
index f6cd870..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/archlinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/arcolinux.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/arcolinux.png
deleted file mode 100644
index c5e5e5e..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/arcolinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/artix.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/artix.png
deleted file mode 100644
index 0cbeb11..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/artix.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/bedrock.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/bedrock.png
deleted file mode 100644
index 58ff48a..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/bedrock.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/cancel.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/cancel.png
deleted file mode 100644
index fca2ac9..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/cancel.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/centos.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/centos.png
deleted file mode 100644
index 23fe2fa..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/centos.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/chakra.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/chakra.png
deleted file mode 100644
index 6f63a95..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/chakra.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/debian.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/debian.png
deleted file mode 100644
index 20bea8c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/debian.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/deepin.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/deepin.png
deleted file mode 100644
index 61c92fb..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/deepin.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/devuan.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/devuan.png
deleted file mode 100644
index ff65401..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/devuan.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/driver.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/driver.png
deleted file mode 100644
index 1621ee7..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/driver.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/edit.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/edit.png
deleted file mode 100644
index 6a43bd9..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/edit.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/efi.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/efi.png
deleted file mode 100644
index 4ecf3b9..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/efi.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/elementary.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/elementary.png
deleted file mode 100644
index 2840354..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/elementary.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/endeavouros.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/endeavouros.png
deleted file mode 100644
index 6b1e530..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/endeavouros.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/fedora.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/fedora.png
deleted file mode 100644
index 926b56d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/fedora.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/find.efi.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/find.efi.png
deleted file mode 100644
index 0e32321..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/find.efi.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/find.none.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/find.none.png
deleted file mode 100644
index 87d4d0e..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/find.none.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/freebsd.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/freebsd.png
deleted file mode 100644
index fb9408c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/freebsd.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/garuda.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/garuda.png
deleted file mode 100644
index f699718..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/garuda.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/gentoo.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/gentoo.png
deleted file mode 100644
index bc0ed70..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/gentoo.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/gnu-linux.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/gnu-linux.png
deleted file mode 100644
index db2fcfd..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/gnu-linux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/haiku.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/haiku.png
deleted file mode 100644
index ce7f818..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/haiku.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/help.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/help.png
deleted file mode 100644
index d8b5a17..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/help.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kali.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kali.png
deleted file mode 100644
index 900dc82..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kali.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kaos.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kaos.png
deleted file mode 100644
index 9fd4e89..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kaos.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kbd.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kbd.png
deleted file mode 100644
index 6ace3ac..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kbd.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/korora.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/korora.png
deleted file mode 100644
index 456e876..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/korora.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kubuntu.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kubuntu.png
deleted file mode 100644
index 7a79ff3..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/kubuntu.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lang.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lang.png
deleted file mode 100644
index 3c9c1d7..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lang.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lfs.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lfs.png
deleted file mode 100644
index 2c54036..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lfs.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/linux.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/linux.png
deleted file mode 100644
index 348ebdd..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/linux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/linuxmint.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/linuxmint.png
deleted file mode 100644
index 7d9da81..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/linuxmint.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lubuntu.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lubuntu.png
deleted file mode 100644
index 057c8e2..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/lubuntu.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/macosx.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/macosx.png
deleted file mode 100644
index ea03e77..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/macosx.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mageia.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mageia.png
deleted file mode 100644
index 79afa76..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mageia.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/manjaro.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/manjaro.png
deleted file mode 100644
index 611a6fb..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/manjaro.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mate.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mate.png
deleted file mode 100644
index b2fc22a..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mate.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/memtest.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/memtest.png
deleted file mode 100644
index 1621ee7..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/memtest.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mx-linux.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mx-linux.png
deleted file mode 100644
index 49f1133..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/mx-linux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/neon.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/neon.png
deleted file mode 100644
index e41906e..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/neon.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/opensuse.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/opensuse.png
deleted file mode 100644
index d844fd5..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/opensuse.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/parrot.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/parrot.png
deleted file mode 100644
index 3333de9..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/parrot.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/pop-os.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/pop-os.png
deleted file mode 100644
index 014d9f3..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/pop-os.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/pop.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/pop.png
deleted file mode 100644
index 014d9f3..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/pop.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/recovery.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/recovery.png
deleted file mode 100644
index 7b69b14..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/recovery.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/regolith.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/regolith.png
deleted file mode 100644
index 5ece07b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/regolith.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/restart.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/restart.png
deleted file mode 100644
index 9715302..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/restart.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/rocky.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/rocky.png
deleted file mode 100644
index be144f6..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/rocky.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/shutdown.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/shutdown.png
deleted file mode 100644
index fc9cf16..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/shutdown.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/siduction.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/siduction.png
deleted file mode 100644
index d16549b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/siduction.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/slackware.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/slackware.png
deleted file mode 100644
index 4c31a3f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/slackware.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/solus.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/solus.png
deleted file mode 100644
index 338718b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/solus.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/steamos.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/steamos.png
deleted file mode 100644
index df28bcc..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/steamos.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/type.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/type.png
deleted file mode 100644
index 5c48476..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/type.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/tz.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/tz.png
deleted file mode 100644
index 220b29b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/tz.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/ubuntu.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/ubuntu.png
deleted file mode 100644
index 352fbe0..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/ubuntu.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/unknown.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/unknown.png
deleted file mode 100644
index 4733dc8..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/unknown.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/unset.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/unset.png
deleted file mode 100644
index 15e3d3c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/unset.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/ventoy.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/ventoy.png
deleted file mode 100644
index 7abdc6c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/ventoy.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/void.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/void.png
deleted file mode 100644
index 01cc2f3..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/void.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/windows.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/windows.png
deleted file mode 100644
index d5c7cc3..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/windows.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/windows11.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/windows11.png
deleted file mode 100644
index fe97d9f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/windows11.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xero.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xero.png
deleted file mode 100644
index 2221c73..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xero.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xerolinux.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xerolinux.png
deleted file mode 100644
index 2221c73..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xerolinux.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xubuntu.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xubuntu.png
deleted file mode 100644
index f43abc7..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/xubuntu.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/zorin.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/zorin.png
deleted file mode 100644
index c1506c4..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/icons/zorin.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_c.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_c.png
deleted file mode 100644
index b1f8d58..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_c.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_e.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_e.png
deleted file mode 100644
index 9332368..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_e.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_w.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_w.png
deleted file mode 100644
index 28f6424..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/select_w.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_c.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_c.png
deleted file mode 100644
index d0dd52a..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_c.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_e.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_e.png
deleted file mode 100644
index 394cbe4..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_e.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_n.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_n.png
deleted file mode 100644
index 476f8bc..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_n.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_ne.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_ne.png
deleted file mode 100644
index 9e26959..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_ne.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_nw.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_nw.png
deleted file mode 100644
index 5c3cba8..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_nw.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_s.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_s.png
deleted file mode 100644
index 85a8901..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_s.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_se.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_se.png
deleted file mode 100644
index d8627ee..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_se.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_sw.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_sw.png
deleted file mode 100644
index 67c600c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_sw.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_w.png b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_w.png
deleted file mode 100644
index d066e2d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminal_box_w.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-12.pf2 b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-12.pf2
deleted file mode 100644
index 6092035..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-12.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-14.pf2 b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-14.pf2
deleted file mode 100644
index 8ab8bd1..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-14.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-16.pf2 b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-16.pf2
deleted file mode 100644
index 6e6b25d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-16.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-18.pf2 b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-18.pf2
deleted file mode 100644
index 129cef1..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/terminus-18.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/theme.txt b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/theme.txt
deleted file mode 100644
index c666b67..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/theme.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-# Main options
-title-text: ""
-desktop-image: "background.png"
-desktop-color: "#000000"
-terminal-font: "Terminus Regular 14"
-terminal-box: "terminal_box_*.png"
-terminal-left: "0"
-terminal-top: "0"
-terminal-width: "100%"
-terminal-height: "100%"
-terminal-border: "0"
-
-# Boot menu
-+ boot_menu {
- left = 15%
- top = 40%
- width = 85%
- height = 65%
- item_font = "Ubuntu Regular 20"
- item_color = "#cccccc"
- selected_item_color = "#ffffff"
- icon_width = 36
- icon_height = 36
- item_icon_space = 20
- item_height = 40
- item_padding = 2
- item_spacing = 10
- selected_item_pixmap_style = "select_*.png"
-}
-
-
-# Countdown label
-# You can change the name of default starting OS here
-+ label {
- left = 15%
- top = 31%
- align = "center"
- id = "__timeout__"
- text = "Peppermint will start in %d seconds"
- color = "#cccccc"
- font = "Ubuntu Regular 17"
-}
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/ubuntu_regular_17.pf2 b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/ubuntu_regular_17.pf2
deleted file mode 100644
index 9405954..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/ubuntu_regular_17.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/ubuntu_regular_20.pf2 b/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/ubuntu_regular_20.pf2
deleted file mode 100644
index 3d903ba..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/grub/themes/peppermint/ubuntu_regular_20.pf2 and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/keyrings/deb-multimedia-keyring.gpg b/PepDeb64/fusato/config/includes.installer/preseed/keyrings/deb-multimedia-keyring.gpg
deleted file mode 100644
index a4f2b10..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/keyrings/deb-multimedia-keyring.gpg and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/keyrings/peppermint-keyring.gpg b/PepDeb64/fusato/config/includes.installer/preseed/keyrings/peppermint-keyring.gpg
deleted file mode 100644
index 87f923f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/keyrings/peppermint-keyring.gpg and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/lightdm/lightdm-gtk-greeter.conf b/PepDeb64/fusato/config/includes.installer/preseed/lightdm/lightdm-gtk-greeter.conf
deleted file mode 100755
index 3a52105..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/lightdm/lightdm-gtk-greeter.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-[greeter]
-background = /usr/share/backgrounds/pexels-sutee-vichaporn-8498924.jpg
-theme-name = Marwaita Dark Peppermint
-xft-antialias = true
-xft-hintstyle = hintfull
-xft-rgba = rgb
-reader = orca
-icon-theme-name = GNOME
-font-name = Cantarell 11
-position = 16%,center 52%,center
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/lightdm/lightdm.conf b/PepDeb64/fusato/config/includes.installer/preseed/lightdm/lightdm.conf
deleted file mode 100644
index b893186..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/lightdm/lightdm.conf
+++ /dev/null
@@ -1,170 +0,0 @@
-[Seat:*]
-#
-# General configuration
-#
-# start-default-seat = True to always start one seat if none are defined in the configuration
-# greeter-user = User to run greeter as
-# minimum-display-number = Minimum display number to use for X servers
-# minimum-vt = First VT to run displays on
-# lock-memory = True to prevent memory from being paged to disk
-# user-authority-in-system-dir = True if session authority should be in the system location
-# guest-account-script = Script to be run to setup guest account
-# logind-check-graphical = True to on start seats that are marked as graphical by logind
-# log-directory = Directory to log information to
-# run-directory = Directory to put running state in
-# cache-directory = Directory to cache to
-# sessions-directory = Directory to find sessions
-# remote-sessions-directory = Directory to find remote sessions
-# greeters-directory = Directory to find greeters
-# backup-logs = True to move add a .old suffix to old log files when opening new ones
-# dbus-service = True if LightDM provides a D-Bus service to control it
-#
-[LightDM]
-#start-default-seat=true
-#greeter-user=lightdm
-#minimum-display-number=0
-#minimum-vt=7
-#lock-memory=true
-#user-authority-in-system-dir=false
-#guest-account-script=guest-account
-#logind-check-graphical=false
-#log-directory=/var/log/lightdm
-#run-directory=/var/run/lightdm
-#cache-directory=/var/cache/lightdm
-#sessions-directory=/usr/share/lightdm/sessions:/usr/share/xsessions:/usr/share/wayland-sessions
-#remote-sessions-directory=/usr/share/lightdm/remote-sessions
-#greeters-directory=$XDG_DATA_DIRS/lightdm/greeters:$XDG_DATA_DIRS/xgreeters
-#backup-logs=true
-#dbus-service=true
-
-#
-# Seat configuration
-#
-# Seat configuration is matched against the seat name glob in the section, for example:
-# [Seat:*] matches all seats and is applied first.
-# [Seat:seat0] matches the seat named "seat0".
-# [Seat:seat-thin-client*] matches all seats that have names that start with "seat-thin-client".
-#
-# type = Seat type (local, xremote, unity)
-# pam-service = PAM service to use for login
-# pam-autologin-service = PAM service to use for autologin
-# pam-greeter-service = PAM service to use for greeters
-# xserver-backend = X backend to use (mir)
-# xserver-command = X server command to run (can also contain arguments e.g. X -special-option)
-# xmir-command = Xmir server command to run (can also contain arguments e.g. Xmir -special-option)
-# xserver-config = Config file to pass to X server
-# xserver-layout = Layout to pass to X server
-# xserver-allow-tcp = True if TCP/IP connections are allowed to this X server
-# xserver-share = True if the X server is shared for both greeter and session
-# xserver-hostname = Hostname of X server (only for type=xremote)
-# xserver-display-number = Display number of X server (only for type=xremote)
-# xdmcp-manager = XDMCP manager to connect to (implies xserver-allow-tcp=true)
-# xdmcp-port = XDMCP UDP/IP port to communicate on
-# xdmcp-key = Authentication key to use for XDM-AUTHENTICATION-1 (stored in keys.conf)
-# unity-compositor-command = Unity compositor command to run (can also contain arguments e.g. unity-system-compositor -special-option)
-# unity-compositor-timeout = Number of seconds to wait for compositor to start
-# greeter-session = Session to load for greeter
-# greeter-hide-users = True to hide the user list
-# greeter-allow-guest = True if the greeter should show a guest login option
-# greeter-show-manual-login = True if the greeter should offer a manual login option
-# greeter-show-remote-login = True if the greeter should offer a remote login option
-# user-session = Session to load for users
-# allow-user-switching = True if allowed to switch users
-# allow-guest = True if guest login is allowed
-# guest-session = Session to load for guests (overrides user-session)
-# session-wrapper = Wrapper script to run session with
-# greeter-wrapper = Wrapper script to run greeter with
-# guest-wrapper = Wrapper script to run guest sessions with
-# display-setup-script = Script to run when starting a greeter session (runs as root)
-# display-stopped-script = Script to run after stopping the display server (runs as root)
-# greeter-setup-script = Script to run when starting a greeter (runs as root)
-# session-setup-script = Script to run when starting a user session (runs as root)
-# session-cleanup-script = Script to run when quitting a user session (runs as root)
-# autologin-guest = True to log in as guest by default
-# autologin-user = User to log in with by default (overrides autologin-guest)
-# autologin-user-timeout = Number of seconds to wait before loading default user
-# autologin-session = Session to load for automatic login (overrides user-session)
-# autologin-in-background = True if autologin session should not be immediately activated
-# exit-on-failure = True if the daemon should exit if this seat fails
-#
-[Seat:*]
-#type=local
-#pam-service=lightdm
-#pam-autologin-service=lightdm-autologin
-#pam-greeter-service=lightdm-greeter
-#xserver-backend=
-#xserver-command=X
-#xmir-command=Xmir
-#xserver-config=
-#xserver-layout=
-#xserver-allow-tcp=false
-#xserver-share=true
-#xserver-hostname=
-#xserver-display-number=
-#xdmcp-manager=
-#xdmcp-port=177
-#xdmcp-key=
-#unity-compositor-command=unity-system-compositor
-#unity-compositor-timeout=60
-greeter-session=lightdm-gtk-greeter
-greeter-hide-users=false
-#greeter-allow-guest=true
-#greeter-show-manual-login=false
-#greeter-show-remote-login=true
-user-session=xfce
-allow-user-switching=true
-#allow-guest=true
-#guest-session=xfce
-#session-wrapper=lightdm-session
-#greeter-wrapper=
-#guest-wrapper=
-#display-setup-script=
-#display-stopped-script=
-#greeter-setup-script=
-#session-setup-script=
-#session-cleanup-script=
-#autologin-guest=false
-#autologin-user=
-#autologin-user-timeout=0
-#autologin-in-background=false
-#autologin-session=xfce
-#exit-on-failure=false
-
-#
-# XDMCP Server configuration
-#
-# enabled = True if XDMCP connections should be allowed
-# port = UDP/IP port to listen for connections on
-# listen-address = Host/address to listen for XDMCP connections (use all addresses if not present)
-# key = Authentication key to use for XDM-AUTHENTICATION-1 or blank to not use authentication (stored in keys.conf)
-# hostname = Hostname to report to XDMCP clients (defaults to system hostname if unset)
-#
-# The authentication key is a 56 bit DES key specified in hex as 0xnnnnnnnnnnnnnn. Alternatively
-# it can be a word and the first 7 characters are used as the key.
-#
-[XDMCPServer]
-#enabled=false
-#port=177
-#listen-address=
-#key=
-#hostname=
-
-#
-# VNC Server configuration
-#
-# enabled = True if VNC connections should be allowed
-# command = Command to run Xvnc server with
-# port = TCP/IP port to listen for connections on
-# listen-address = Host/address to listen for VNC connections (use all addresses if not present)
-# width = Width of display to use
-# height = Height of display to use
-# depth = Color depth of display to use
-#
-[VNCServer]
-#enabled=false
-#command=Xvnc
-#port=5900
-#listen-address=
-#width=1024
-#height=768
-#depth=8
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ai.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ai.png
deleted file mode 100644
index 55f99ee..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ai.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/applications-system.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/applications-system.png
deleted file mode 100644
index 8268a5b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/applications-system.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/battery.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/battery.png
deleted file mode 100644
index 5fb0fe0..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/battery.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ckm.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ckm.png
deleted file mode 100644
index 0c8dbba..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ckm.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/cs-default-applications.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/cs-default-applications.png
deleted file mode 100644
index c1729a7..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/cs-default-applications.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/cs-notifications.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/cs-notifications.png
deleted file mode 100644
index 2b47881..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/cs-notifications.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/dconf-editor.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/dconf-editor.png
deleted file mode 100644
index 9f4916f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/dconf-editor.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/drive-harddisk-system.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/drive-harddisk-system.png
deleted file mode 100644
index e0bb52c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/drive-harddisk-system.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ff.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ff.png
deleted file mode 100644
index 9b5be5d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/ff.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/flat.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/flat.png
deleted file mode 100644
index fdb2c03..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/flat.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/glade.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/glade.png
deleted file mode 100644
index 7f99d03..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/glade.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-dev-printer.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-dev-printer.png
deleted file mode 100644
index 32970c4..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-dev-printer.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-session.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-session.png
deleted file mode 100644
index 6ff8198..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-session.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-software.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-software.png
deleted file mode 100644
index a46ba6c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/gnome-software.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/hblock.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/hblock.png
deleted file mode 100644
index bbe750f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/hblock.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/hblockon.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/hblockon.png
deleted file mode 100644
index 395bd12..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/hblockon.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/install-debian.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/install-debian.png
deleted file mode 100644
index 6361d2d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/install-debian.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/keyboard.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/keyboard.png
deleted file mode 100644
index 9cb1cb5..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/keyboard.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/kumo.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/kumo.png
deleted file mode 100644
index ae6c53b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/kumo.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/logo.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/logo.png
deleted file mode 100644
index c5d5c79..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/logo.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/luakit.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/luakit.png
deleted file mode 100644
index ae6c53b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/luakit.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/mouse.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/mouse.png
deleted file mode 100644
index a0f50f7..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/mouse.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/network-wired.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/network-wired.png
deleted file mode 100644
index e849106..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/network-wired.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/panel-applets.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/panel-applets.png
deleted file mode 100644
index 973ed53..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/panel-applets.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-48.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-48.png
deleted file mode 100644
index f576ab0..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-48.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-fm-20.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-fm-20.png
deleted file mode 100644
index 8b05465..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-fm-20.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-hub-128.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-hub-128.png
deleted file mode 100644
index 85b0ee6..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-hub-128.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-hub.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-hub.png
deleted file mode 100644
index f984e72..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-hub.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-inst-48.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-inst-48.png
deleted file mode 100644
index b4fb90f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-inst-48.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-inst.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-inst.png
deleted file mode 100644
index 9982463..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-inst.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-old.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-old.png
deleted file mode 100644
index 4934a1c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-old.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-rim-128.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-rim-128.png
deleted file mode 100644
index ce08aeb..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-rim-128.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-rim-48.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-rim-48.png
deleted file mode 100644
index fabb69d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint-rim-48.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint.png
deleted file mode 100644
index 094e9f5..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/peppermint.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/preferences-desktop-accessibility.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/preferences-desktop-accessibility.png
deleted file mode 100644
index af96ad5..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/preferences-desktop-accessibility.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/snap.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/snap.png
deleted file mode 100644
index 19f88ce..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/snap.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/software-properties.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/software-properties.png
deleted file mode 100644
index 4c0b72b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/software-properties.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/stock_music-library.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/stock_music-library.png
deleted file mode 100644
index 27cc427..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/stock_music-library.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/stock_people.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/stock_people.png
deleted file mode 100644
index 395135b..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/stock_people.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/synaptic.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/synaptic.png
deleted file mode 100644
index b69e13c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/synaptic.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/update-manager.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/update-manager.png
deleted file mode 100644
index ab481ab..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/update-manager.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/video-display.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/video-display.png
deleted file mode 100644
index 2be22db..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/video-display.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/xd.png b/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/xd.png
deleted file mode 100644
index fe74207..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/pixmaps/xd.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.pepkumo.policy b/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.pepkumo.policy
deleted file mode 100644
index 329e97b..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.pepkumo.policy
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
- Run PepKumo SSB creater
- Authentication to run Kumo is required
- accessories-text-editor
-
- auth_admin
- auth_admin
- auth_admin
-
- /opt/pypep/pepkumo.py
- true
-
-
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.peppackages.policy b/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.peppackages.policy
deleted file mode 100644
index f95e9ab..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.peppackages.policy
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
- Run Package Selection program
- Authentication to run PepPackages is required
- accessories-text-editor
-
- auth_admin
- auth_admin
- auth_admin
-
- /opt/pypep/peppackages.py
- true
-
-
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.pepu.policy b/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.pepu.policy
deleted file mode 100644
index e2a6c8e..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.pepu.policy
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
- Run Peppermint Update Manager
- Authentication to run Update Manager is required
- accessories-text-editor
-
- auth_admin
- auth_admin
- auth_admin
-
- /opt/pypep/pepu.py
- true
-
-
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.python3.policy b/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.python3.policy
deleted file mode 100755
index ad312c8..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.python3.policy
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
- Run python3 program
- Authentication is required to run the python3
- accessories-text-editor
-
- auth_admin
- auth_admin
- auth_admin
-
- /usr/bin/python3
- true
-
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.ttkcreator.policy b/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.ttkcreator.policy
deleted file mode 100644
index 4ca43ae..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/polkit/org.freedesktop.ttkcreator.policy
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
- Run TTK-Creator program
- Authentication to run TTK-Creater is required
- accessories-text-editor
-
- auth_admin
- auth_admin
- auth_admin
-
- /usr/bin/python3 /usr/local/lib/python3.9/dist-packages/ttkcreator/__main__.py
- true
-
-
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/protools/hblock b/PepDeb64/fusato/config/includes.installer/preseed/protools/hblock
deleted file mode 100755
index 04c00f5..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/protools/hblock
+++ /dev/null
@@ -1,760 +0,0 @@
-#!/bin/sh
-
-set -eu
-export LC_ALL='C'
-
-# Metadata.
-if [ -z "${HBLOCK_VERSION+x}" ]; then HBLOCK_VERSION='3.4.1'; fi
-if [ -z "${HBLOCK_AUTHOR+x}" ]; then HBLOCK_AUTHOR='Héctor Molinero Fernández '; fi
-if [ -z "${HBLOCK_LICENSE+x}" ]; then HBLOCK_LICENSE='MIT, https://opensource.org/licenses/MIT'; fi
-if [ -z "${HBLOCK_REPOSITORY+x}" ]; then HBLOCK_REPOSITORY='https://github.com/hectorm/hblock'; fi
-
-# Emulate ksh if the shell is zsh.
-if [ -n "${ZSH_VERSION-}" ]; then emulate -L ksh; fi
-
-# Define system and user configuration directories.
-if [ -z "${ETCDIR+x}" ]; then ETCDIR='/etc'; fi
-if [ -z "${XDG_CONFIG_HOME+x}" ]; then XDG_CONFIG_HOME="${HOME-}/.config"; fi
-
-# Remove temporary files on exit.
-cleanup() { ret="$?"; rm -rf -- "${TMPDIR:-${TMP:-/tmp}}/hblock.${$}."*; trap - EXIT; exit "${ret:?}"; }
-{ trap cleanup EXIT ||:; trap cleanup TERM ||:; trap cleanup INT ||:; trap cleanup HUP ||:; } 2>/dev/null
-
-# Built-in header.
-HOSTNAME="${HOSTNAME-"$(uname -n)"}"
-HBLOCK_HEADER_BUILTIN="$(cat <<-EOF
- 127.0.0.1 localhost ${HOSTNAME?}
- 255.255.255.255 broadcasthost
- ::1 localhost ${HOSTNAME?}
- ::1 ip6-localhost ip6-loopback
- fe00::0 ip6-localnet
- ff00::0 ip6-mcastprefix
- ff02::1 ip6-allnodes
- ff02::2 ip6-allrouters
- ff02::3 ip6-allhosts
-EOF
-)"
-
-# Built-in footer.
-HBLOCK_FOOTER_BUILTIN=''
-
-# Built-in sources.
-HBLOCK_SOURCES_BUILTIN="$(cat <<-'EOF'
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/adaway.org/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/adblock-nocoin-list/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/adguard-cname-trackers/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/adguard-simplified/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/dandelionsprout-nordic/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-ara/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-bul/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-ces-slk/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-deu/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-fra/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-heb/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-ind/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-ita/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-kor/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-lav/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-lit/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-nld/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-por/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-rus/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-spa/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easylist-zho/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/easyprivacy/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/eth-phishing-detect/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/gfrogeye-firstparty-trackers/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/hostsvn/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/kadhosts/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/matomo.org-spammers/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/mitchellkrogza-badd-boyz-hosts/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/phishing.army/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/socram8888-notonmyshift/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/someonewhocares.org/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/spam404.com/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/stevenblack/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/ublock/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/ublock-abuse/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/ublock-badware/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/ublock-privacy/list.txt
- https://raw.githubusercontent.com/hectorm/hmirror/master/data/urlhaus/list.txt
-EOF
-)"
-
-# Built-in allowlist.
-HBLOCK_ALLOWLIST_BUILTIN=''
-
-# Built-in denylist.
-HBLOCK_DENYLIST_BUILTIN="$(cat <<-'EOF'
- # Special domain that is used to check if hBlock is enabled.
- hblock-check.molinero.dev
-EOF
-)"
-
-# Parse command line options.
-optParse() {
- SEP="$(printf '\037')"; POS=''
- while [ "${#}" -gt '0' ]; do
- case "${1?}" in
- # Short options that accept a value need a "*" in their pattern because they can be found in the "-A" form.
- '-O'*|'--output') optArgStr "${@-}"; outputFile="${optArg?}"; shift "${optShift:?}" ;;
- '-H'*|'--header') optArgStr "${@-}"; headerFile="${optArg?}"; shift "${optShift:?}" ;;
- '-F'*|'--footer') optArgStr "${@-}"; footerFile="${optArg?}"; shift "${optShift:?}" ;;
- '-S'*|'--sources') optArgStr "${@-}"; sourcesFile="${optArg?}"; shift "${optShift:?}" ;;
- '-A'*|'--allowlist') optArgStr "${@-}"; allowlistFile="${optArg?}"; shift "${optShift:?}" ;;
- '-D'*|'--denylist') optArgStr "${@-}"; denylistFile="${optArg?}"; shift "${optShift:?}" ;;
- '-R'*|'--redirection') optArgStr "${@-}"; redirection="${optArg?}"; shift "${optShift:?}" ;;
- '-W'*|'--wrap') optArgStr "${@-}"; wrap="${optArg?}"; shift "${optShift:?}" ;;
- '-T'*|'--template') optArgStr "${@-}"; template="${optArg?}"; shift "${optShift:?}" ;;
- '-C'*|'--comment') optArgStr "${@-}"; comment="${optArg?}"; shift "${optShift:?}" ;;
- '-l' |'--lenient'|'--no-lenient') optArgBool "${@-}"; lenient="${optArg:?}" ;;
- '-r' |'--regex'|'--no-regex') optArgBool "${@-}"; regex="${optArg:?}" ;;
- '-f' |'--filter-subdomains'|'--no-filter-subdomains') optArgBool "${@-}"; filterSubdomains="${optArg:?}" ;;
- '-c' |'--continue'|'--no-continue') optArgBool "${@-}"; continue="${optArg:?}" ;;
- '-p'*|'--parallel') optArgStr "${@-}"; parallel="${optArg?}"; shift "${optShift:?}" ;;
- '-q' |'--quiet'|'--no-quiet') optArgBool "${@-}"; quiet="${optArg:?}" ;;
- '-x'*|'--color') optArgStr "${@-}"; color="${optArg?}"; shift "${optShift:?}" ;;
- '-v' |'--version') showVersion ;;
- '-h' |'--help') showHelp ;;
- # If "--" is found, the remaining positional parameters are saved and the parsing ends.
- --) shift; _IFS="${IFS?}"; IFS="${SEP:?}"; POS="${POS-}${POS+${SEP:?}}${*-}"; IFS="${_IFS?}"; break ;;
- # If a long option in the form "--opt=value" is found, it is split into "--opt" and "value".
- --*=*) optSplitEquals "${@-}"; shift; set -- "${optName:?}" "${optArg?}" "${@-}"; continue ;;
- # If an option did not match any pattern, an error is thrown.
- -?|--*) optDie "Illegal option ${1:?}" ;;
- # If multiple short options in the form "-AB" are found, they are split into "-A" and "-B".
- -?*) optSplitShort "${@-}"; shift; set -- "${optAName:?}" "${optBName:?}" "${@-}"; continue ;;
- # If a positional parameter is found, it is saved.
- *) POS="${POS-}${POS+${SEP:?}}${1?}" ;;
- esac
- shift
- done
-}
-optSplitShort() {
- optAName="${1%"${1#??}"}"; optBName="-${1#??}"
-}
-optSplitEquals() {
- optName="${1%="${1#--*=}"}"; optArg="${1#--*=}"
-}
-optArgStr() {
- if [ -n "${1#??}" ] && [ "${1#--}" = "${1:?}" ]; then optArg="${1#??}"; optShift='0';
- elif [ -n "${2+x}" ]; then optArg="${2-}"; optShift='1';
- else optDie "No argument for ${1:?} option"; fi
-}
-optArgBool() {
- if [ "${1#--no-}" = "${1:?}" ]; then optArg='true';
- else optArg='false'; fi
-}
-optDie() {
- printf '%s\n' "${@-}" "Try 'hblock --help' for more information" >&2
- exit 2
-}
-
-# Show help and quit.
-showHelp() {
- printf '%s\n' "$(sed -e 's/%NL/\n/g' <<-EOF
- Usage: hblock [OPTION]...
-
- hBlock is a POSIX-compliant shell script that gets a list of domains that serve
- ads, tracking scripts and malware from multiple sources and creates a hosts
- file, among other formats, that prevents your system from connecting to them.
-
- Options:
-
- -O, --output , \${HBLOCK_OUTPUT_FILE}%NL
- Output file location.%NL
- If equals "-", it is printed to stdout.%NL
- (default: ${outputFile?})%NL
- -H, --header , \${HBLOCK_HEADER_FILE}%NL
- File to be included at the beginning of the output file.%NL
- If equals "builtin", the built-in value is used.%NL
- If equals "none", an empty value is used.%NL
- If equals "-", the stdin content is used.%NL
- If unspecified and any of the following files exists, its content is used.%NL
- \${XDG_CONFIG_HOME}/hblock/header%NL
- ${ETCDIR?}/hblock/header%NL
- (default: ${headerFile?})%NL
- -F, --footer , \${HBLOCK_FOOTER_FILE}%NL
- File to be included at the end of the output file.%NL
- If equals "builtin", the built-in value is used.%NL
- If equals "none", an empty value is used.%NL
- If equals "-", the stdin content is used.%NL
- If unspecified and any of the following files exists, its content is used.%NL
- \${XDG_CONFIG_HOME}/hblock/footer%NL
- ${ETCDIR?}/hblock/footer%NL
- (default: ${footerFile?})%NL
- -S, --sources , \${HBLOCK_SOURCES_FILE}%NL
- File with line separated URLs used to generate the blocklist.%NL
- If equals "builtin", the built-in value is used.%NL
- If equals "none", an empty value is used.%NL
- If equals "-", the stdin content is used.%NL
- If unspecified and any of the following files exists, its content is used.%NL
- \${XDG_CONFIG_HOME}/hblock/sources.list%NL
- ${ETCDIR?}/hblock/sources.list%NL
- (default: ${sourcesFile?})%NL
- -A, --allowlist , \${HBLOCK_ALLOWLIST_FILE}%NL
- File with line separated entries to be removed from the blocklist.%NL
- If equals "builtin", the built-in value is used.%NL
- If equals "none", an empty value is used.%NL
- If equals "-", the stdin content is used.%NL
- If unspecified and any of the following files exists, its content is used.%NL
- \${XDG_CONFIG_HOME}/hblock/allow.list%NL
- ${ETCDIR?}/hblock/allow.list%NL
- (default: ${allowlistFile?})%NL
- -D, --denylist , \${HBLOCK_DENYLIST_FILE}%NL
- File with line separated entries to be added to the blocklist.%NL
- If equals "builtin", the built-in value is used.%NL
- If equals "none", an empty value is used.%NL
- If equals "-", the stdin content is used.%NL
- If unspecified and any of the following files exists, its content is used.%NL
- \${XDG_CONFIG_HOME}/hblock/deny.list%NL
- ${ETCDIR?}/hblock/deny.list%NL
- (default: ${denylistFile?})%NL
- -R, --redirection , \${HBLOCK_REDIRECTION}%NL
- Redirection for all entries in the blocklist.%NL
- (default: ${redirection?})%NL
- -W, --wrap , \${HBLOCK_WRAP}%NL
- Break blocklist lines after this number of entries.%NL
- (default: ${wrap?})%NL
- -T, --template , \${HBLOCK_TEMPLATE}%NL
- Template applied to each entry.%NL
- %D = , %R = %NL
- (default: ${template?})%NL
- -C, --comment , \${HBLOCK_COMMENT}%NL
- Character used for comments.%NL
- (default: ${comment?})%NL
- -l, --[no-]lenient, \${HBLOCK_LENIENT}%NL
- Match all entries from sources regardless of their IP, instead of
- 0.0.0.0, 127.0.0.1, ::, ::1 or nothing.%NL
- (default: ${lenient?})%NL
- -r, --[no-]regex, \${HBLOCK_REGEX}%NL
- Use POSIX BREs in the allowlist instead of fixed strings.%NL
- (default: ${regex?})%NL
- -f, --[no-]filter-subdomains, \${HBLOCK_FILTER_SUBDOMAINS}%NL
- Do not include subdomains when the parent domain is also blocked.
- Useful for reducing the blocklist size in cases such as when DNS blocking
- makes these subdomains redundant.%NL
- (default: ${filterSubdomains?})%NL
- -c, --[no-]continue, \${HBLOCK_CONTINUE}%NL
- Do not abort if a download error occurs.%NL
- (default: ${continue?})%NL
- -p, --parallel, \${HBLOCK_PARALLEL}%NL
- Maximum concurrency for parallel downloads.%NL
- (default: ${parallel?})%NL
- -q, --[no-]quiet, \${HBLOCK_QUIET}%NL
- Suppress non-error messages.%NL
- (default: ${quiet?})%NL
- -x, --color , \${HBLOCK_COLOR}%NL
- Colorize the output.%NL
- (default: ${color?})%NL
- -v, --version%NL
- Show version number and quit.%NL
- -h, --help%NL
- Show this help and quit.
-
- Report bugs to:
- EOF
- )"
- exit 0
-}
-
-# Show version number and quit.
-showVersion() {
- printf '%s\n' "$(cat <<-EOF
- hBlock ${HBLOCK_VERSION:?}
- Author: ${HBLOCK_AUTHOR:?}
- License: ${HBLOCK_LICENSE:?}
- Repository: ${HBLOCK_REPOSITORY:?}
- EOF
- )"
- exit 0
-}
-
-# Check if a program exists.
-exists() {
- # shellcheck disable=SC2230
- if command -v true; then command -v -- "${1:?}"
- elif eval type type; then eval type -- "${1:?}"
- else which -- "${1:?}"; fi >/dev/null 2>&1
-}
-
-# Pretty print methods.
-printInfo() { [ -n "${NO_STDOUT+x}" ] || printf "${COLOR_RESET-}[${COLOR_BGREEN-}INFO${COLOR_RESET-}] %s\n" "${@-}"; }
-printWarn() { [ -n "${NO_STDERR+x}" ] || printf "${COLOR_RESET-}[${COLOR_BYELLOW-}WARN${COLOR_RESET-}] %s\n" "${@-}" >&2; }
-printError() { [ -n "${NO_STDERR+x}" ] || printf "${COLOR_RESET-}[${COLOR_BRED-}ERROR${COLOR_RESET-}] %s\n" "${@-}" >&2; }
-printList() { [ -n "${NO_STDOUT+x}" ] || printf "${COLOR_RESET-} ${COLOR_BCYAN-}*${COLOR_RESET-} %s\n" "${@-}"; }
-
-# Print a pseudorandom string.
-rand() { :& awk -v N="${!}" 'BEGIN{srand();printf("%08x%06x",rand()*2^31-1,N)}'; }
-
-# Create a temporary directory, file or FIFO special file.
-createTemp() {
- # POSIX does not specify the mktemp utility, so here comes a hacky solution.
- while t="${TMPDIR:-${TMP:-/tmp}}/hblock.${$}.$(rand)" && [ -e "${t:?}" ]; do sleep 1; done
- (
- umask 077
- case "${1-}" in
- 'dir') mkdir -- "${t:?}" ;;
- 'file') touch -- "${t:?}" ;;
- 'fifo') mkfifo -- "${t:?}" ;;
- esac
- printf '%s' "${t:?}"
- )
-}
-
-# Write stdin to a file.
-sponge() {
- spongeFile="$(createTemp 'file')"; cat > "${spongeFile:?}"
- cat -- "${spongeFile:?}" > "${1:?}"; rm -f -- "${spongeFile:?}"
-}
-
-# Count files or directories in a directory.
-dirCount() { [ -e "${1:?}" ] && printf '%s' "${#}" || printf '%s' '0'; }
-
-# Print to stdout the contents of a URL.
-fetchUrl() {
- # If the protocol is "file://" we can omit the download and simply use cat.
- if [ "${1#file://}" != "${1:?}" ]; then cat -- "${1#file://}"
- else
- userAgent='Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0'
- if exists curl; then curl -fsSL -A "${userAgent:?}" -- "${1:?}"
- elif exists wget; then wget -qO- -U "${userAgent:?}" -- "${1:?}"
- elif exists fetch; then fetch -qo- --user-agent="${userAgent:?}" -- "${1:?}"
- else
- printError 'curl, wget or fetch are required for this script'
- exit 1
- fi
- fi
-}
-
-# Remove comments from string.
-removeComments() { sed -e 's/[[:blank:]]*#.*//;/^$/d'; }
-
-# Transform hosts file entries to domain names.
-sanitizeBlocklist() {
- leadingScript='s/^[[:blank:]]*//'
- trailingScript='s/[[:blank:]]*\(#.*\)\{0,1\}$//'
- if [ "${1:?}" = 'true' ]; then
- ipv4Script='s/^\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}[[:blank:]]\{1,\}//'
- ipv6Script='s/^\([0-9a-f]\{0,4\}:\)\{2,7\}[0-9a-f]\{0,4\}[[:blank:]]\{1,\}//'
- else
- ipv4Script='s/^\(0\)\{0,1\}\(127\)\{0,1\}\(\.[0-9]\{1,3\}\)\{3\}[[:blank:]]\{1,\}//'
- ipv6Script='s/^\(0\{0,4\}:\)\{2,7\}0\{0,3\}[01]\{0,1\}[[:blank:]]\{1,\}//'
- fi
- domainRegex='\([0-9a-z_-]\{1,63\}\.\)\{1,\}[a-z][0-9a-z-]\{0,61\}[0-9a-z]\.\{0,1\}'
- tr -d '\r' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' \
- | sed -e "${leadingScript:?};${ipv4Script:?};${ipv6Script:?};${trailingScript:?}" \
- | { grep -e "^${domainRegex:?}\([[:blank:]]\{1,\}${domainRegex:?}\)*$" ||:; } \
- | tr -s ' \t' '\n' | sed 's/\.$//'
-}
-
-# Remove reserved Top Level Domains.
-removeReservedTLDs() {
- sed -e '/\.corp$/d' \
- -e '/\.domain$/d' \
- -e '/\.example$/d' \
- -e '/\.home$/d' \
- -e '/\.host$/d' \
- -e '/\.invalid$/d' \
- -e '/\.lan$/d' \
- -e '/\.local$/d' \
- -e '/\.localdomain$/d' \
- -e '/\.localhost$/d' \
- -e '/\.test$/d'
-}
-
-main() {
- usrConfDir="${XDG_CONFIG_HOME?}/hblock"
- sysConfDir="${ETCDIR?}/hblock"
-
- # Source environment file if exists.
- # shellcheck disable=SC1091
- if [ -f "${usrConfDir:?}/environment" ]; then
- set -a; . "${usrConfDir:?}/environment"; set +a
- elif [ -f "${sysConfDir:?}/environment" ]; then
- set -a; . "${sysConfDir:?}/environment"; set +a
- fi
-
- # Output file location.
- outputFile="${HBLOCK_OUTPUT_FILE-"${ETCDIR?}/hosts"}"
-
- # File to be included at the beginning of the output file.
- headerFile='builtin'
- if [ -n "${HBLOCK_HEADER+x}" ]; then
- HBLOCK_HEADER_BUILTIN="${HBLOCK_HEADER?}"
- elif [ -n "${HBLOCK_HEADER_FILE+x}" ]; then
- headerFile="${HBLOCK_HEADER_FILE?}"
- elif [ -f "${usrConfDir:?}/header" ]; then
- headerFile="${usrConfDir:?}/header"
- elif [ -f "${sysConfDir:?}/header" ]; then
- headerFile="${sysConfDir:?}/header"
- fi
-
- # File to be included at the end of the output file.
- footerFile='builtin'
- if [ -n "${HBLOCK_FOOTER+x}" ]; then
- HBLOCK_FOOTER_BUILTIN="${HBLOCK_FOOTER?}"
- elif [ -n "${HBLOCK_FOOTER_FILE+x}" ]; then
- footerFile="${HBLOCK_FOOTER_FILE?}"
- elif [ -f "${usrConfDir:?}/footer" ]; then
- footerFile="${usrConfDir:?}/footer"
- elif [ -f "${sysConfDir:?}/footer" ]; then
- footerFile="${sysConfDir:?}/footer"
- fi
-
- # File with line separated URLs used to generate the blocklist.
- sourcesFile='builtin'
- if [ -n "${HBLOCK_SOURCES+x}" ]; then
- HBLOCK_SOURCES_BUILTIN="${HBLOCK_SOURCES?}"
- elif [ -n "${HBLOCK_SOURCES_FILE+x}" ]; then
- sourcesFile="${HBLOCK_SOURCES_FILE?}"
- elif [ -f "${usrConfDir:?}/sources.list" ]; then
- sourcesFile="${usrConfDir:?}/sources.list"
- elif [ -f "${sysConfDir:?}/sources.list" ]; then
- sourcesFile="${sysConfDir:?}/sources.list"
- fi
-
- # File with line separated entries to be removed from the blocklist.
- allowlistFile='builtin'
- if [ -n "${HBLOCK_ALLOWLIST+x}" ]; then
- HBLOCK_ALLOWLIST_BUILTIN="${HBLOCK_ALLOWLIST?}"
- elif [ -n "${HBLOCK_ALLOWLIST_FILE+x}" ]; then
- allowlistFile="${HBLOCK_ALLOWLIST_FILE?}"
- elif [ -f "${usrConfDir:?}/allow.list" ]; then
- allowlistFile="${usrConfDir:?}/allow.list"
- elif [ -f "${sysConfDir:?}/allow.list" ]; then
- allowlistFile="${sysConfDir:?}/allow.list"
- fi
-
- # File with line separated entries to be added to the blocklist.
- denylistFile='builtin'
- if [ -n "${HBLOCK_DENYLIST+x}" ]; then
- HBLOCK_DENYLIST_BUILTIN="${HBLOCK_DENYLIST?}"
- elif [ -n "${HBLOCK_DENYLIST_FILE+x}" ]; then
- denylistFile="${HBLOCK_DENYLIST_FILE?}"
- elif [ -f "${usrConfDir:?}/deny.list" ]; then
- denylistFile="${usrConfDir:?}/deny.list"
- elif [ -f "${sysConfDir:?}/deny.list" ]; then
- denylistFile="${sysConfDir:?}/deny.list"
- fi
-
- # Redirection for all entries in the blocklist.
- redirection="${HBLOCK_REDIRECTION-"0.0.0.0"}"
-
- # Break blocklist lines after this number of entries.
- wrap="${HBLOCK_WRAP-"1"}"
-
- # Template applied to each entry.
- template="${HBLOCK_TEMPLATE-"%R %D"}"
-
- # Character used for comments.
- comment="${HBLOCK_COMMENT-"#"}"
-
- # Match all entries from sources, regardless of their IP.
- lenient="${HBLOCK_LENIENT-"false"}"
-
- # Use POSIX BREs instead of fixed strings.
- regex="${HBLOCK_REGEX-"false"}"
-
- # Do not include subdomains when the parent domain is also blocked.
- filterSubdomains="${HBLOCK_FILTER_SUBDOMAINS-"false"}"
-
- # Abort if a download error occurs.
- continue="${HBLOCK_CONTINUE-"false"}"
-
- # Maximum concurrency for parallel downloads.
- parallel="${HBLOCK_PARALLEL-"4"}"
-
- # Colorize the output.
- color="${HBLOCK_COLOR-"auto"}"
-
- # Suppress non-error messages.
- quiet="${HBLOCK_QUIET-"false"}"
-
- # Parse command line options.
- # shellcheck disable=SC2086
- { optParse "${@-}"; _IFS="${IFS?}"; IFS="${SEP:?}"; set -- ${POS-} >/dev/null; IFS="${_IFS?}"; }
-
- # Define terminal colors if the color option is enabled or in auto mode if STDOUT is attached to a TTY and the
- # "NO_COLOR" variable is not set (https://no-color.org).
- if [ "${color:?}" = 'true' ] || { [ "${color:?}" = 'auto' ] && [ -z "${NO_COLOR+x}" ] && [ -t 1 ]; }; then
- COLOR_RESET="$({ exists tput && tput sgr0; } 2>/dev/null || printf '\033[0m')"
- COLOR_BRED="$({ exists tput && tput bold && tput setaf 1; } 2>/dev/null || printf '\033[1;31m')"
- COLOR_BGREEN="$({ exists tput && tput bold && tput setaf 2; } 2>/dev/null || printf '\033[1;32m')"
- COLOR_BYELLOW="$({ exists tput && tput bold && tput setaf 3; } 2>/dev/null || printf '\033[1;33m')"
- COLOR_BCYAN="$({ exists tput && tput bold && tput setaf 6; } 2>/dev/null || printf '\033[1;36m')"
- fi
-
- # Set "NO_STDOUT" variable if the quiet option is enabled (other methods will honor this variable).
- if [ "${quiet:?}" = 'true' ]; then
- NO_STDOUT='true'
- fi
-
- # Check the header file.
- case "${headerFile:?}" in
- # If the file value equals "-", use stdin.
- '-') headerFile="$(createTemp 'file')"; cat <&0 > "${headerFile:?}" ;;
- # If the file value equals "none", use an empty file.
- 'none') headerFile="$(createTemp 'file')" ;;
- # If the file value equals "builtin", use the built-in value.
- 'builtin') headerFile="$(createTemp 'file')"; printf '%s' "${HBLOCK_HEADER_BUILTIN?}" > "${headerFile:?}" ;;
- # If the file does not exist, throw an error.
- *) [ -e "${headerFile:?}" ] || { printError "No such file: ${headerFile:?}"; exit 1; } ;;
- esac
-
- # Check the footer file.
- case "${footerFile:?}" in
- # If the file value equals "-", use stdin.
- '-') footerFile="$(createTemp 'file')"; cat <&0 > "${footerFile:?}" ;;
- # If the file value equals "none", use an empty file.
- 'none') footerFile="$(createTemp 'file')" ;;
- # If the file value equals "builtin", use the built-in value.
- 'builtin') footerFile="$(createTemp 'file')"; printf '%s' "${HBLOCK_FOOTER_BUILTIN?}" > "${footerFile:?}" ;;
- # If the file does not exist, throw an error.
- *) [ -e "${footerFile:?}" ] || { printError "No such file: ${footerFile:?}"; exit 1; } ;;
- esac
-
- # Check the sources file.
- case "${sourcesFile:?}" in
- # If the file value equals "-", use stdin.
- '-') sourcesFile="$(createTemp 'file')"; cat <&0 > "${sourcesFile:?}" ;;
- # If the file value equals "none", use an empty file.
- 'none') sourcesFile="$(createTemp 'file')" ;;
- # If the file value equals "builtin", use the built-in value.
- 'builtin') sourcesFile="$(createTemp 'file')"; printf '%s' "${HBLOCK_SOURCES_BUILTIN?}" > "${sourcesFile:?}" ;;
- # If the file does not exist, throw an error.
- *) [ -e "${sourcesFile:?}" ] || { printError "No such file: ${sourcesFile:?}"; exit 1; } ;;
- esac
-
- # Check the allowlist file.
- case "${allowlistFile:?}" in
- # If the file value equals "-", use stdin.
- '-') allowlistFile="$(createTemp 'file')"; cat <&0 > "${allowlistFile:?}" ;;
- # If the file value equals "none", use an empty file.
- 'none') allowlistFile="$(createTemp 'file')" ;;
- # If the file value equals "builtin", use the built-in value.
- 'builtin') allowlistFile="$(createTemp 'file')"; printf '%s' "${HBLOCK_ALLOWLIST_BUILTIN?}" > "${allowlistFile:?}" ;;
- # If the file does not exist, throw an error.
- *) [ -e "${allowlistFile:?}" ] || { printError "No such file: ${allowlistFile:?}"; exit 1; } ;;
- esac
-
- # Check the denylist file.
- case "${denylistFile:?}" in
- # If the file value equals "-", use stdin.
- '-') denylistFile="$(createTemp 'file')"; cat <&0 > "${denylistFile:?}" ;;
- # If the file value equals "none", use an empty file.
- 'none') denylistFile="$(createTemp 'file')" ;;
- # If the file value equals "builtin", use the built-in value.
- 'builtin') denylistFile="$(createTemp 'file')"; printf '%s' "${HBLOCK_DENYLIST_BUILTIN?}" > "${denylistFile:?}" ;;
- # If the file does not exist, throw an error.
- *) [ -e "${denylistFile:?}" ] || { printError "No such file: ${denylistFile:?}"; exit 1; } ;;
- esac
-
- # Create an empty blocklist file.
- blocklistFile="$(createTemp 'file')"
-
- # If the sources file is not empty, each source is downloaded and appended to the blocklist file.
- if [ -s "${sourcesFile:?}" ]; then
- printInfo 'Downloading sources'
-
- sourcesDlDir="$(createTemp 'dir')"
- sourcesUrlFile="$(createTemp 'file')"
-
- # Read the sources file ignoring comments or empty lines.
- removeComments < "${sourcesFile:?}" > "${sourcesUrlFile:?}"
-
- while IFS= read -r url || [ -n "${url?}" ]; do
- # Wait if the number of running jobs exceeds the concurrency limit.
- if [ "${parallel:?}" -gt '0' ]; then
- while [ "${parallel:?}" -le "$(dirCount "${sourcesDlDir:?}"/*.part)" ]; do
- # POSIX does not specify the "-n" option, wait for the last PID as fallback.
- # shellcheck disable=SC3045
- wait -n 2>/dev/null || wait "${!}"
- done
- fi
-
- # Initialize the download job and send it to the background.
- printList "${url:?}"
- sourceDlFile="${sourcesDlDir:?}"/"$(rand)"
- touch -- "${sourceDlFile:?}.part"
- {
- if fetchUrl "${url:?}" > "${sourceDlFile:?}.part"; then
- if [ -e "${sourceDlFile:?}.part" ]; then
- printf '\n' >> "${sourceDlFile:?}.part"
- mv -- "${sourceDlFile:?}.part" "${sourceDlFile:?}"
- fi
- else
- rm -f -- "${sourceDlFile:?}.part"
- if [ "${continue:?}" = 'true' ]; then
- printWarn "Cannot obtain source: ${url:?}"
- else
- printError "Cannot obtain source: ${url:?}"
- { kill "${$}"; exit 1; } 2>/dev/null
- fi
- fi
- } &
- done < "${sourcesUrlFile:?}"
- wait
-
- # Append downloaded sources to the blocklist file.
- cat -- "${sourcesDlDir:?}"/* >> "${blocklistFile:?}"
- rm -rf -- "${sourcesDlDir:?}"
- fi
-
- # If the denylist file is not empty, it is appended to the blocklist file.
- if [ -s "${denylistFile:?}" ]; then
- printInfo 'Applying denylist'
- cat -- "${denylistFile:?}" >> "${blocklistFile:?}"
- fi
-
- # If the blocklist file is not empty, it is sanitized.
- if [ -s "${blocklistFile:?}" ]; then
- printInfo 'Sanitizing blocklist'
- sanitizeBlocklist "${lenient:?}" < "${blocklistFile:?}" | removeReservedTLDs | sponge "${blocklistFile:?}"
- fi
-
- # If the allowlist file is not empty, the entries on it are removed from the blocklist file.
- if [ -s "${allowlistFile:?}" ]; then
- printInfo 'Applying allowlist'
- allowlistPatternFile="$(createTemp 'file')"
- # Entries are treated as regexes depending on whether the regex option is enabled.
- removeComments < "${allowlistFile:?}" >> "${allowlistPatternFile:?}"
- if [ "${regex:?}" = 'true' ]; then
- grep -vf "${allowlistPatternFile:?}" -- "${blocklistFile:?}" | sponge "${blocklistFile:?}"
- else
- grep -Fxvf "${allowlistPatternFile:?}" -- "${blocklistFile:?}" | sponge "${blocklistFile:?}"
- fi
- rm -f -- "${allowlistPatternFile:?}"
- fi
-
- # If the blocklist file is not empty, it is filtered and sorted.
- if [ -s "${blocklistFile:?}" ]; then
- if [ "${filterSubdomains:?}" = 'true' ]; then
- printInfo 'Filtering redundant subdomains'
- awkReverseScript="$(cat <<-'EOF'
- BEGIN { FS = "." }
- {
- for (i = NF; i > 0; i--) {
- printf("%s%s", $i, (i > 1 ? FS : RS))
- }
- }
- EOF
- )"
- awkFilterScript="$(cat <<-'EOF'
- BEGIN { p = "." }
- {
- if (index($0, p) != 1) {
- print($0); p = $0"."
- }
- }
- EOF
- )"
- awk "${awkReverseScript:?}" < "${blocklistFile:?}" | sort \
- | awk "${awkFilterScript:?}" | awk "${awkReverseScript:?}" \
- | sponge "${blocklistFile:?}"
- fi
-
- printInfo 'Sorting blocklist'
- sort < "${blocklistFile:?}" | uniq | sponge "${blocklistFile:?}"
- fi
-
- # Count blocked domains.
- blocklistCount="$(wc -l < "${blocklistFile:?}" | awk '{print($1)}')"
-
- # If the blocklist file is not empty, the format template is applied.
- if [ -s "${blocklistFile:?}" ]; then
- printInfo 'Applying format template'
- # The number of domains per line is equal to the value of the wrap option.
- if [ "${wrap:?}" -gt '1' ]; then
- awkWrapScript='{ORS=(NR%W?FS:RS)}1;END{if(NR%W){printf(RS)}}'
- awk -v FS=' ' -v RS='\n' -v W="${wrap:?}" "${awkWrapScript:?}" < "${blocklistFile:?}" \
- | sponge "${blocklistFile:?}"
- fi
- # The following awk script replaces in the template the variables starting with a % sign with their value.
- awkTemplateScript="$(cat <<-'EOF'
- BEGIN {
- Tl = length(T); split(T, Ta, "")
- for (i = 1; i <= Tl; i++) {
- if (Ta[i] == "%") {
- i++; if (Ta[i] == "D") { Vn[++Vl] = "D"; Vp[Vl] = i - 1 }
- else if (Ta[i] == "R") { Vn[++Vl] = "R"; Vp[Vl] = i - 1 }
- else if (Ta[i] == "%") { Vn[++Vl] = "%"; Vp[Vl] = i - 1 }
- }
- }
- }
- {
- o = T
- for (i = Vl; i > 0 ; i--) {
- if (Vn[i] == "D") v = $0
- else if (Vn[i] == "R") v = R
- else if (Vn[i] == "%") v = "%"
- else v = ""
- o = substr(o, 1, Vp[i] - 1) v substr(o, Vp[i] + 2)
- }
- print(o)
- }
- EOF
- )"
- awk -v T="${template?}" -v R="${redirection?}" "${awkTemplateScript:?}" < "${blocklistFile:?}" \
- | sponge "${blocklistFile:?}"
- fi
-
- printOutputFile() {
- # Define "C" variable for convenience.
- C="${comment?}"
-
- # Append banner to the output file.
- if [ -n "${C?}" ]; then
- cat <<-EOF
- ${C?} Generated with hBlock ${HBLOCK_VERSION:?} (${HBLOCK_REPOSITORY:?})
- ${C?} Blocked domains: ${blocklistCount:?}
- EOF
- if [ -z "${SOURCE_DATE_EPOCH+x}" ]; then
- cat <<-EOF
- ${C?} Date: $(date)
- EOF
- fi
- fi
-
- # If the header file is not empty, it is appended to the output file.
- if [ -s "${headerFile:?}" ]; then
- [ -z "${C?}" ] || printf '\n%s\n' "${C?} BEGIN HEADER"
- awk 1 < "${headerFile:?}"
- [ -z "${C?}" ] || printf '%s\n' "${C?} END HEADER"
- fi
-
- # If the blocklist file is not empty, it is appended to the output file.
- if [ -s "${blocklistFile:?}" ]; then
- [ -z "${C?}" ] || printf '\n%s\n' "${C?} BEGIN BLOCKLIST"
- awk 1 < "${blocklistFile:?}"
- [ -z "${C?}" ] || printf '%s\n' "${C?} END BLOCKLIST"
- fi
-
- # If the footer file is not empty, it is appended to the output file.
- if [ -s "${footerFile:?}" ]; then
- [ -z "${C?}" ] || printf '\n%s\n' "${C?} BEGIN FOOTER"
- awk 1 < "${footerFile:?}"
- [ -z "${C?}" ] || printf '%s\n' "${C?} END FOOTER"
- fi
- }
-
- # If the file name equals "-", print to stdout.
- if [ "${outputFile:?}" = '-' ]; then
- printOutputFile
- # Try writing the file.
- elif touch -- "${outputFile:?}" >/dev/null 2>&1; then
- printOutputFile > "${outputFile:?}"
- # If writing fails, try with sudo.
- elif exists sudo && exists tee; then
- printOutputFile | sudo tee -- "${outputFile:?}" >/dev/null
- # Throw an error for everything else.
- else
- printError "Cannot write file: ${outputFile:?}"
- exit 1
- fi
-
- printInfo "${blocklistCount:?} blocked domains!"
-}
-
-main "${@-}"
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/protools/hub b/PepDeb64/fusato/config/includes.installer/preseed/protools/hub
deleted file mode 100755
index 87040c9..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/protools/hub
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/bash
-
-python3 ~/.local/share/pmostools/peptools/hub.py
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/protools/kumo b/PepDeb64/fusato/config/includes.installer/preseed/protools/kumo
deleted file mode 100755
index ad867c7..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/protools/kumo
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-python3 ~/.local/share/pmostools/peptools/kumo.py
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/protools/welcome b/PepDeb64/fusato/config/includes.installer/preseed/protools/welcome
deleted file mode 100755
index 092eef9..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/protools/welcome
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-python3 ~/.local/share/pmostools/peptools/welcome.py
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/protools/xDaily b/PepDeb64/fusato/config/includes.installer/preseed/protools/xDaily
deleted file mode 100755
index 1e72619..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/protools/xDaily
+++ /dev/null
@@ -1,211 +0,0 @@
-#!/bin/bash
-
-PROGNAME="xDaily"
-[ "$USER" != "root" ] &&
- echo -e "\t$PROGNAME must be run as root. \n\tOr with \`sudo $PROGNAME\` ." && exit
-
-### Our options are going to be
-# = "full output to the terminal, no stopping."
-# -i = "interactive"
-# -q = "interactive but suppressed output"
-OPTIND="0"
-for i in _quiet _interactive ; do unset -v $i ; done
-
-while getopts 'iq' OPTION; do
- case "$OPTION" in
- i)
- _interactive="yes"
- echo -e " Entering interactive mode\n"
- break
- ;;
-
- q)
- _quiet="yes"
- echo -e " Entering interactive mode, without verbose output.\n"
- break
- ;;
-
- ?)
- echo "Usage: $(basename ${PROGNAME}) [-i = interactive] [-q = suppressed ouput]"
- return 1
- ;;
- esac
-done
-
-[ "$(which nala)" ] && PkgMgr="nala" || PkgMgr="apt"
-
-see_it() {
- [ "$_interactive" = "yes" ] && ( read -n1 -p " $_msg ? \"Y/n\" " answ
- [ -z $answ ] || [ "$answ" = "y" ] || [ "$answ" = "Y" ] && echo &&
- do_it &&
- echo -e " $_msg - Completed.\n" ||
- echo -e "\r $_msg - Skipped.\n" )
-}
-
-no_see() {
- [ "$_quiet" = "yes" ] && ( read -n1 -p " $_msg ? \"Y/n\" " answ
- [ -z $answ ] || [ "$answ" = "y" ] || [ "$answ" = "Y" ] && echo &&
- do_it > /dev/null &&
- echo -e " $_msg - Completed.\n" ||
- echo -e "\r $_msg - Skipped.\n" )
-}
-
-run_it() {
- [ "$_interactive" != "yes" ] && [ "$_quiet" != "yes" ] && (
- echo -e "\n $_msg ." &&
- do_it &&
- echo -e " $_msg - Completed." )
-}
-
-# Begin xDaily command functions
-_update() {
- _msg="Check apt repositories for Updates"
- do_it() {
- [ "$_quiet" != "yes" ] &&
- $PkgMgr update ||
- $PkgMgr update 2>&1 >/dev/null
-}
- see_it
- no_see
- run_it
-}
-
-_upgradable() {
- _msg="See upgradable packages"
- do_it() {
- [ "$_quiet" != "yes" ] &&
- $PkgMgr list --upgradable ||
- $PkgMgr list --upgradable 2>&1 >/dev/null
-}
- see_it
-# no_see
-# run_it
-}
-
-_upgrade() {
- _msg="Install available updated packages"
- do_it() {
- [ "$_quiet" != "yes" ] &&
- $PkgMgr upgrade ||
- $PkgMgr upgrade 2>&1 >/dev/null
-}
- see_it
- no_see
- run_it
-}
-
-_apt_clean() {
- _msg="Remove unneccessary packages from APT cache"
- do_it() {
- [ "$_quiet" != "yes" ] &&
- $PkgMgr clean ||
- $PkgMgr clean 2>&1 >/dev/null
-}
- see_it
- no_see
- run_it
-}
-
-_autoclean () {
- _msg="Remove unavailable entries from APT cache"
- do_it() {
- [ "$_quiet" != "yes" ] &&
- $PkgMgr autoclean ||
- $PkgMgr autoclean 2>&1 >/dev/null
-}
- see_it
- no_see
- run_it
-}
-
-_autoremove() {
- _msg="Remove old dependencies not required by the system"
- do_it() {
- [ "$_quiet" != "yes" ] &&
- $PkgMgr autoremove ||
- $PkgMgr autoremove 2>&1 >/dev/null
-}
- see_it
- no_see
- run_it
-}
-
-_clear_thumbnails() {
- _msg="Clear browser thumbnail caches"
- do_it() {
- for i in ".thumbnails" ".cache/thumbnails" ; do
- for j in "*/*.png" "*/*/*.png" ; do
- [ "$_quiet" != "yes" ] &&
- rm -v /home/${SUDO_USER}/${i}/${j} 2>/dev/null ||
- rm /home/${SUDO_USER}/${i}/${j} 2>/dev/null
- done
- done ; true
- }
- see_it
- no_see
- run_it
-}
-
-_clear_recents() {
- _msg="Clear the \"Recently Used\" list in FireFox"
- do_it() {
- dd bs=1 count=1 status=none if=/dev/null of=/home/${SUDO_USER}/.local/share/recently-used.xbel
- chown ${SUDO_USER} /home/${SUDO_USER}/.local/share/recently-used.xbel
-}
- see_it
- no_see
- run_it
-}
-
-_rbranding() {
- _msg="Reconfirm Peppermint Branding in os-release"
- do_it() {
- diff -q /opt/pepconf/os-release /usr/lib/os-release || cp /opt/pepconf/os-release /usr/lib/os-release
- diff -q /opt/pepconf/os-release /etc/os-release || cp /opt/pepconf/os-release /etc/os-release
- }
- see_it
- no_see
- run_it
-}
-
-_ssd_trimfs() {
- _msg="For SSDs: trim eligible ext2/3/4 filesystems"
- do_it() {
- for mnt in $(grep -E "(ext2|ext3|ext4)" /etc/mtab | cut -f2 -d" ")
- do fstrim ${mnt} &>/dev/null &&
- echo -e " Completed fstrim for \"${mnt}\"" ||
- echo -e " No fstrim required for \"${mnt}\""
- done
- }
- see_it
- no_see
- run_it
-}
-
-
-_udcache() {
- _msg="Caching icons at /usr/share/icons/"
- do_it() { update-icon-caches /usr/share/icons/* ;}
- see_it
- no_see
- run_it
-}
-
-
-_update
-_upgradable
-_upgrade
-_apt_clean
-if [ "$PkgMgr" = "apt" ]; then _autoclean ; fi
-_autoremove
-_clear_thumbnails
-_clear_recents
-_udcache
-_rbranding
-_ssd_trimfs
-_ptools
-
-[ "$_interactive" = "yes" ] &&
- read -n1 -p " Press any key to continue ... " answ
-echo
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/protools/xd.png b/PepDeb64/fusato/config/includes.installer/preseed/protools/xd.png
deleted file mode 100644
index fe74207..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/protools/xd.png and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/INSTALLER b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/INSTALLER
deleted file mode 100644
index a1b589e..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/INSTALLER
+++ /dev/null
@@ -1 +0,0 @@
-pip
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/LICENSE.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/LICENSE.txt
deleted file mode 100644
index 0496023..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/LICENSE.txt
+++ /dev/null
@@ -1,48 +0,0 @@
-PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
---------------------------------------------
-
-1. This LICENSE AGREEMENT is between the Python Software Foundation
-("PSF"), and the Individual or Organization ("Licensee") accessing and
-otherwise using this software ("Python") in source or binary form and
-its associated documentation.
-
-2. Subject to the terms and conditions of this License Agreement, PSF
-hereby grants Licensee a nonexclusive, royalty-free, world-wide
-license to reproduce, analyze, test, perform and/or display publicly,
-prepare derivative works, distribute, and otherwise use Python
-alone or in any derivative version, provided, however, that PSF's
-License Agreement and PSF's notice of copyright, i.e., "Copyright (c)
-2001, 2002, 2003, 2004 Python Software Foundation; All Rights Reserved"
-are retained in Python alone or in any derivative version prepared
-by Licensee.
-
-3. In the event Licensee prepares a derivative work that is based on
-or incorporates Python or any part thereof, and wants to make
-the derivative work available to others as provided herein, then
-Licensee hereby agrees to include in any such work a brief summary of
-the changes made to Python.
-
-4. PSF is making Python available to Licensee on an "AS IS"
-basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
-IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND
-DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
-FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT
-INFRINGE ANY THIRD PARTY RIGHTS.
-
-5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
-FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
-A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON,
-OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
-
-6. This License Agreement will automatically terminate upon a material
-breach of its terms and conditions.
-
-7. Nothing in this License Agreement shall be deemed to create any
-relationship of agency, partnership, or joint venture between PSF and
-Licensee. This License Agreement does not grant permission to use PSF
-trademarks or trade name in a trademark sense to endorse or promote
-products or services of Licensee, or any third party.
-
-8. By copying, installing or otherwise using Python, Licensee
-agrees to be bound by the terms and conditions of this License
-Agreement.
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/METADATA b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/METADATA
deleted file mode 100644
index a4ce7d6..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/METADATA
+++ /dev/null
@@ -1,70 +0,0 @@
-Metadata-Version: 2.1
-Name: tendo
-Version: 0.3.0
-Summary: A Python library that extends some core functionality
-Home-page: https://github.com/pycontribs/tendo
-Author: Sorin Sbarnea
-Author-email: sorin.sbarnea@gmail.com
-Maintainer: Sorin Sbarnea
-Maintainer-email: sorin.sbarnea@gmail.com
-Keywords: tendo,tee,unicode,colorer,singleton
-Classifier: Development Status :: 5 - Production/Stable
-Classifier: Environment :: Other Environment
-Classifier: Intended Audience :: Developers
-Classifier: Intended Audience :: Information Technology
-Classifier: License :: OSI Approved :: Python Software Foundation License
-Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.6
-Classifier: Programming Language :: Python :: 3.7
-Classifier: Programming Language :: Python :: 3.8
-Classifier: Programming Language :: Python :: 3.9
-Classifier: Programming Language :: Python :: 3.10
-Classifier: Programming Language :: Python :: 3.11
-Classifier: Topic :: Software Development :: Libraries :: Python Modules
-Classifier: Topic :: Internet :: WWW/HTTP
-Requires-Python: >=3.6
-Description-Content-Type: text/markdown
-License-File: LICENSE.txt
-Requires-Dist: six
-Provides-Extra: docs
-Requires-Dist: Sphinx (~=5.2.1) ; extra == 'docs'
-Requires-Dist: docutils (~=0.19) ; extra == 'docs'
-Requires-Dist: MarkupSafe (~=2.1.1) ; extra == 'docs'
-Provides-Extra: test
-Requires-Dist: coverage[toml] (>=6.5.0) ; extra == 'test'
-Requires-Dist: coveralls (~=3.3.1) ; extra == 'test'
-Requires-Dist: pre-commit (~=2.20.0) ; extra == 'test'
-Requires-Dist: pytest-cache (~=1.0) ; extra == 'test'
-Requires-Dist: pytest-cov (~=3.0.0) ; extra == 'test'
-Requires-Dist: pytest-html (~=3.1.1) ; extra == 'test'
-Requires-Dist: pytest-instafail (~=0.4.2) ; extra == 'test'
-Requires-Dist: pytest-xdist (~=2.5.0) ; extra == 'test'
-Requires-Dist: pytest (~=7.1.3) ; extra == 'test'
-Requires-Dist: wheel (~=0.37.1) ; extra == 'test'
-
-[![](https://img.shields.io/pypi/v/tendo.svg?colorB=green)](https://pypi.python.org/pypi/tendo/)
-[![](https://img.shields.io/codecov/c/github/pycontribs/tendo/main.svg)](https://codecov.io/gh/pycontribs/tendo)
-[![](https://readthedocs.org/projects/tendo/badge/?version=latest)](http://tendo.readthedocs.io)
-
-# tendo
-
-Tendo is a python module that adds basic functionality that is
-not provided by Python. Read the [documentation](https://tendo.readthedocs.org/en/latest/) for more info.
-
-- [transparent Unicode support for text file operations (BOM detection)](https://tendo.readthedocs.org/en/latest/#module-tendo.singleton)
-- [console logging coloring](https://tendo.readthedocs.org/en/latest/#module-tendo.colorer)
-- enable you to use symlinks under windows
-- [python tee implementation](https://tendo.readthedocs.org/en/latest/#module-tendo.colorer) for executing external programs and redirecting their output to both console/file
-- [improved execfile](https://tendo.readthedocs.org/en/latest/#module-tendo.execfile2)
-
-## Requirements and compatibility
-
-- python 3.6 or newer
-- tox for running tests
-
-## Related projects and packages
-
-- jaraco - http://pypi.python.org/pypi/jaraco.util
-- pexpect (maybe)
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/RECORD b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/RECORD
deleted file mode 100644
index ffe7090..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/RECORD
+++ /dev/null
@@ -1,45 +0,0 @@
-tendo-0.3.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
-tendo-0.3.0.dist-info/LICENSE.txt,sha256=OxeG9HHdLhJfWm6Hf6fUu2LVhQIKMdkOI7aD8NDwnGk,2382
-tendo-0.3.0.dist-info/METADATA,sha256=3ND7DyJNzL42x9jdLXg65BuaiJe2bkSdWy-R0E3MJF8,3222
-tendo-0.3.0.dist-info/RECORD,,
-tendo-0.3.0.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
-tendo-0.3.0.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
-tendo-0.3.0.dist-info/top_level.txt,sha256=mmQBS5KFPLIkGpS8uCmFiJxGLhsSSAInN47ST1KPjmc,6
-tendo/__init__.py,sha256=LiZKhNQTguXDtwYRvv3wOPrlXQ3tFXd17Mqc_uxaISU,569
-tendo/__pycache__/__init__.cpython-39.pyc,,
-tendo/__pycache__/_version.cpython-39.pyc,,
-tendo/__pycache__/ansiterm.cpython-39.pyc,,
-tendo/__pycache__/colorer.cpython-39.pyc,,
-tendo/__pycache__/execfile2.cpython-39.pyc,,
-tendo/__pycache__/singleton.cpython-39.pyc,,
-tendo/__pycache__/tee.cpython-39.pyc,,
-tendo/__pycache__/unicode.cpython-39.pyc,,
-tendo/_version.py,sha256=_UJonOENX4r-qwHEWuAPWP39KNmboa9_GnJ2v2Bb0P8,176
-tendo/ansiterm.py,sha256=SDX3yhayfzAWDU3n992kdAYKiFS8gRzTpINyjdv9q30,10910
-tendo/colorer.py,sha256=jsl_BEMwPND5fwPHPK3-Wdkx8TpvrtkLorK5iwIQDLY,5438
-tendo/execfile2.py,sha256=r1RWOnTwUGf7G009sXz1LdXp6VQ2fWJlGncajqkMPYM,1917
-tendo/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
-tendo/singleton.py,sha256=uth-bsBUymT8UseXVSZ9iUrdaY7U5Qac-2-h9HBYE38,3265
-tendo/tee.py,sha256=gJYRskfTJCrYpNqWuONKAns5etVmbtl-z-rktN5e03E,8754
-tendo/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
-tendo/tests/__pycache__/__init__.cpython-39.pyc,,
-tendo/tests/__pycache__/test_colorer.cpython-39.pyc,,
-tendo/tests/__pycache__/test_execfile2.cpython-39.pyc,,
-tendo/tests/__pycache__/test_singleton.cpython-39.pyc,,
-tendo/tests/__pycache__/test_tee.cpython-39.pyc,,
-tendo/tests/__pycache__/test_unicode.cpython-39.pyc,,
-tendo/tests/assets/full_sample_utf8_bom.txt,sha256=KkNqDwebtlS3xhAfplqf3tHcOObMmouytKn_4MroI0Q,49
-tendo/tests/assets/sample_ucs2_be.txt,sha256=__3Aog-FfxCuKo6NKHunfeRXGSpuUlXnARO3UBVP4VA,86
-tendo/tests/assets/sample_ucs2_le.txt,sha256=uJwfDIb4NO1UWXuwG02bCmcvB-4UIM4Z7VhOfKaEN-w,86
-tendo/tests/assets/sample_utf8.txt,sha256=C6RMLCgPWRPxEugZTJy3l4LTUVPq6nmR-cOt6aBvC9Q,9
-tendo/tests/assets/sample_utf8_bom.txt,sha256=1wfcaw-EIPdBGFtm8UFbI9WrzVbq0sXN8JQXauJIUEI,57
-tendo/tests/assets/utf8-after-append.txt,sha256=cpkiZTGrK8QbpxjMn2YZ1vhzhs4wLN5iyqXAuLKuZ78,79
-tendo/tests/assets/utf8-invalid.txt,sha256=2RYQGQO5gNv5DuyEk4huGwQ6tzxjT-Gz_3NcbyOXufQ,20334
-tendo/tests/assets/utf8.txt,sha256=EBPTlbkWEzl0touJx-LcPMYwApkP432FqDxX-6YOmdU,17
-tendo/tests/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
-tendo/tests/test_colorer.py,sha256=qWk_-ntdZtL3bLV_Q1tWUuK3-UwTGgL7DdUwEpdG2i0,1170
-tendo/tests/test_execfile2.py,sha256=SXYLMnOX-HB_5pjpd_0D_HOnbn6E-yBqURup8CB0Zn4,1171
-tendo/tests/test_singleton.py,sha256=8d8ujn7JMxzSsDImJS2MGNMPXcdS_BMpR2GZK4s5BeU,1624
-tendo/tests/test_tee.py,sha256=RFVdrFXYqQuE8VXRxLunjnhoXYc2zd0lxuqz4L1MhpI,1283
-tendo/tests/test_unicode.py,sha256=96ZV5MkMgXu8qw7ojQ20zUWD6bIJb_akyLGXoZ-5hQs,1373
-tendo/unicode.py,sha256=oxBES0O3NmqkSJ9_nPI_dxCw3a9lR95-EjrTBRNBavs,3124
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/REQUESTED b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/REQUESTED
deleted file mode 100644
index e69de29..0000000
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/WHEEL b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/WHEEL
deleted file mode 100644
index becc9a6..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/WHEEL
+++ /dev/null
@@ -1,5 +0,0 @@
-Wheel-Version: 1.0
-Generator: bdist_wheel (0.37.1)
-Root-Is-Purelib: true
-Tag: py3-none-any
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/top_level.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/top_level.txt
deleted file mode 100644
index e187ff8..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo-0.3.0.dist-info/top_level.txt
+++ /dev/null
@@ -1 +0,0 @@
-tendo
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__init__.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__init__.py
deleted file mode 100644
index 60d03ed..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__init__.py
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/env python
-# Licensed to PSF under a Contributor Agreement.
-# See http://www.python.org/psf/license for licensing details.
-from __future__ import absolute_import
-import sys
-
-from ._version import __version__
-
-__author__ = "Sorin Sbarnea"
-__copyright__ = "Copyright 2010-2022, Sorin Sbarnea"
-__email__ = "sorin.sbarnea@gmail.com"
-__status__ = "Production"
-__all__ = ('tee', 'colorer', 'unicode',
- 'execfile2', 'singleton', 'ansiterm', '__version__')
-
-
-if sys.hexversion < 0x02050000:
- sys.exit("Python 2.5 or newer is required by tendo module.")
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/__init__.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/__init__.cpython-39.pyc
deleted file mode 100644
index 68d1322..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/__init__.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/_version.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/_version.cpython-39.pyc
deleted file mode 100644
index f74798c..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/_version.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/ansiterm.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/ansiterm.cpython-39.pyc
deleted file mode 100644
index b605117..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/ansiterm.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/colorer.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/colorer.cpython-39.pyc
deleted file mode 100644
index 1d58f00..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/colorer.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/execfile2.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/execfile2.cpython-39.pyc
deleted file mode 100644
index bc63166..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/execfile2.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/singleton.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/singleton.cpython-39.pyc
deleted file mode 100644
index 199d3b0..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/singleton.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/tee.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/tee.cpython-39.pyc
deleted file mode 100644
index 9a0d052..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/tee.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/unicode.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/unicode.cpython-39.pyc
deleted file mode 100644
index 1695e92..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/__pycache__/unicode.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/_version.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/_version.py
deleted file mode 100644
index 8b0af9c..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/_version.py
+++ /dev/null
@@ -1,5 +0,0 @@
-# coding: utf-8
-# file generated by setuptools_scm
-# don't change, don't track in version control
-__version__ = version = '0.3.0'
-__version_tuple__ = version_tuple = (0, 3, 0)
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/ansiterm.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/ansiterm.py
deleted file mode 100644
index b0647b4..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/ansiterm.py
+++ /dev/null
@@ -1,273 +0,0 @@
-#!/usr/bin/env python
-# Originally from http://waf.googlecode.com/svn/trunk/waflib/ansiterm.py
-import os
-import sys
-
-
-try:
- if (not sys.stderr.isatty()) or (not sys.stdout.isatty()):
- raise ValueError('not a tty')
-
- import ctypes
- from ctypes import byref
- from ctypes import c_char
- from ctypes import c_int
- from ctypes import c_short
- from ctypes import windll
-
- class COORD(ctypes.Structure):
- _fields_ = [("X", c_short), ("Y", c_short)]
-
- class SMALL_RECT(ctypes.Structure):
- _fields_ = [("Left", c_short), ("Top", c_short),
- ("Right", c_short), ("Bottom", c_short)]
-
- class CONSOLE_SCREEN_BUFFER_INFO(ctypes.Structure):
- _fields_ = [("Size", COORD), ("CursorPosition", COORD), ("Attributes",
- c_short), ("Window", SMALL_RECT), ("MaximumWindowSize", COORD)]
-
- class CONSOLE_CURSOR_INFO(ctypes.Structure):
- _fields_ = [('dwSize', ctypes.c_ulong), ('bVisible', c_int)]
-
- sbinfo = CONSOLE_SCREEN_BUFFER_INFO()
- csinfo = CONSOLE_CURSOR_INFO()
- hconsole = windll.kernel32.GetStdHandle(-11)
- windll.kernel32.GetConsoleScreenBufferInfo(hconsole, byref(sbinfo))
- if sbinfo.Size.X < 10 or sbinfo.Size.Y < 10:
- raise Exception('small console')
- windll.kernel32.GetConsoleCursorInfo(hconsole, byref(csinfo))
-except Exception:
- pass
-else:
- import re
- import threading
-
- from six import text_type
-
- def to_int(number, default):
- return number and int(number) or default
- wlock = threading.Lock()
-
- STD_OUTPUT_HANDLE = -11
- STD_ERROR_HANDLE = -12
-
- class AnsiTerm(object):
-
- def __init__(self):
- self.encoding = sys.stdout.encoding
- self.hconsole = windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)
- self.cursor_history = []
- self.orig_sbinfo = CONSOLE_SCREEN_BUFFER_INFO()
- self.orig_csinfo = CONSOLE_CURSOR_INFO()
- windll.kernel32.GetConsoleScreenBufferInfo(
- self.hconsole, byref(self.orig_sbinfo))
- windll.kernel32.GetConsoleCursorInfo(
- hconsole, byref(self.orig_csinfo))
-
- def screen_buffer_info(self):
- sbinfo = CONSOLE_SCREEN_BUFFER_INFO()
- windll.kernel32.GetConsoleScreenBufferInfo(
- self.hconsole, byref(sbinfo))
- return sbinfo
-
- def clear_line(self, param):
- mode = param and int(param) or 0
- sbinfo = self.screen_buffer_info()
- if mode == 1: # Clear from begining of line to cursor position
- line_start = COORD(0, sbinfo.CursorPosition.Y)
- line_length = sbinfo.Size.X
- elif mode == 2: # Clear entire line
- line_start = COORD(
- sbinfo.CursorPosition.X, sbinfo.CursorPosition.Y)
- line_length = sbinfo.Size.X - sbinfo.CursorPosition.X
- else: # Clear from cursor position to end of line
- line_start = sbinfo.CursorPosition
- line_length = sbinfo.Size.X - sbinfo.CursorPosition.X
- chars_written = c_int()
- windll.kernel32.FillConsoleOutputCharacterA(
- self.hconsole, c_char(' '), line_length, line_start, byref(chars_written))
- windll.kernel32.FillConsoleOutputAttribute(
- self.hconsole, sbinfo.Attributes, line_length, line_start, byref(chars_written))
-
- def clear_screen(self, param):
- mode = to_int(param, 0)
- sbinfo = self.screen_buffer_info()
- if mode == 1: # Clear from begining of screen to cursor position
- clear_start = COORD(0, 0)
- clear_length = sbinfo.CursorPosition.X * \
- sbinfo.CursorPosition.Y
- elif mode == 2: # Clear entire screen and return cursor to home
- clear_start = COORD(0, 0)
- clear_length = sbinfo.Size.X * sbinfo.Size.Y
- windll.kernel32.SetConsoleCursorPosition(
- self.hconsole, clear_start)
- else: # Clear from cursor position to end of screen
- clear_start = sbinfo.CursorPosition
- clear_length = sbinfo.Size.X - sbinfo.CursorPosition.X + \
- sbinfo.Size.X * (sbinfo.Size.Y - sbinfo.CursorPosition.Y)
- chars_written = c_int()
- windll.kernel32.FillConsoleOutputCharacterA(
- self.hconsole, c_char(' '), clear_length, clear_start, byref(chars_written))
- windll.kernel32.FillConsoleOutputAttribute(
- self.hconsole, sbinfo.Attributes, clear_length, clear_start, byref(chars_written))
-
- def push_cursor(self, param):
- sbinfo = self.screen_buffer_info()
- self.cursor_history.push(sbinfo.CursorPosition)
-
- def pop_cursor(self, param):
- if self.cursor_history:
- old_pos = self.cursor_history.pop()
- windll.kernel32.SetConsoleCursorPosition(
- self.hconsole, old_pos)
-
- def set_cursor(self, param):
- x, sep, y = param.partition(';')
- x = to_int(x, 1) - 1
- y = to_int(y, 1) - 1
- sbinfo = self.screen_buffer_info()
- new_pos = COORD(
- min(max(0, x), sbinfo.Size.X),
- min(max(0, y), sbinfo.Size.Y)
- )
- windll.kernel32.SetConsoleCursorPosition(self.hconsole, new_pos)
-
- def set_column(self, param):
- x = to_int(param, 1) - 1
- sbinfo = self.screen_buffer_info()
- new_pos = COORD(
- min(max(0, x), sbinfo.Size.X),
- sbinfo.CursorPosition.Y
- )
- windll.kernel32.SetConsoleCursorPosition(self.hconsole, new_pos)
-
- def move_cursor(self, x_offset=0, y_offset=0):
- sbinfo = self.screen_buffer_info()
- new_pos = COORD(
- min(max(0, sbinfo.CursorPosition.X + x_offset), sbinfo.Size.X),
- min(max(0, sbinfo.CursorPosition.Y + y_offset), sbinfo.Size.Y)
- )
- windll.kernel32.SetConsoleCursorPosition(self.hconsole, new_pos)
-
- def move_up(self, param):
- self.move_cursor(y_offset=-to_int(param, 1))
-
- def move_down(self, param):
- self.move_cursor(y_offset=to_int(param, 1))
-
- def move_left(self, param):
- self.move_cursor(x_offset=-to_int(param, 1))
-
- def move_right(self, param):
- self.move_cursor(x_offset=to_int(param, 1))
-
- def next_line(self, param):
- sbinfo = self.screen_buffer_info()
- self.move_cursor(
- x_offset=-sbinfo.CursorPosition.X,
- y_offset=to_int(param, 1)
- )
-
- def prev_line(self, param):
- sbinfo = self.screen_buffer_info()
- self.move_cursor(
- x_offset=-sbinfo.CursorPosition.X,
- y_offset=-to_int(param, 1)
- )
-
- escape_to_color = {(0, 30): 0x0, # black
- (0, 31): 0x4, # red
- (0, 32): 0x2, # green
- (0, 33): 0x4 + 0x2, # dark yellow
- (0, 34): 0x1, # blue
- (0, 35): 0x1 + 0x4, # purple
- (0, 36): 0x2 + 0x4, # cyan
- (0, 37): 0x1 + 0x2 + 0x4, # grey
- (1, 30): 0x1 + 0x2 + 0x4, # dark gray
- (1, 31): 0x4 + 0x8, # red
- (1, 32): 0x2 + 0x8, # light green
- (1, 33): 0x4 + 0x2 + 0x8, # yellow
- (1, 34): 0x1 + 0x8, # light blue
- (1, 35): 0x1 + 0x4 + 0x8, # light purple
- (1, 36): 0x1 + 0x2 + 0x8, # light cyan
- (1, 37): 0x1 + 0x2 + 0x4 + 0x8, # white
- }
-
- def set_color(self, param):
- cols = param.split(';')
- attr = self.orig_sbinfo.Attributes
- for c in cols:
- c = to_int(c, 0)
- if c in range(30, 38):
- attr = (attr & 0xf0) | (
- self.escape_to_color.get((0, c), 0x7))
- elif c in range(40, 48):
- attr = (attr & 0x0f) | (
- self.escape_to_color.get((0, c), 0x7) << 8)
- elif c in range(90, 98):
- attr = (attr & 0xf0) | (
- self.escape_to_color.get((1, c - 60), 0x7))
- elif c in range(100, 108):
- attr = (attr & 0x0f) | (
- self.escape_to_color.get((1, c - 60), 0x7) << 8)
- elif c == 1:
- attr |= 0x08
- windll.kernel32.SetConsoleTextAttribute(self.hconsole, attr)
-
- def show_cursor(self, param):
- csinfo.bVisible = 1
- windll.kernel32.SetConsoleCursorInfo(self.hconsole, byref(csinfo))
-
- def hide_cursor(self, param):
- csinfo.bVisible = 0
- windll.kernel32.SetConsoleCursorInfo(self.hconsole, byref(csinfo))
-
- ansi_command_table = {
- 'A': move_up,
- 'B': move_down,
- 'C': move_right,
- 'D': move_left,
- 'E': next_line,
- 'F': prev_line,
- 'G': set_column,
- 'H': set_cursor,
- 'f': set_cursor,
- 'J': clear_screen,
- 'K': clear_line,
- 'h': show_cursor,
- 'l': hide_cursor,
- 'm': set_color,
- 's': push_cursor,
- 'u': pop_cursor,
- }
- # Match either the escape sequence or text not containing escape
- # sequence
- ansi_tokans = re.compile(r'(?:\x1b\[([0-9?;]*)([a-zA-Z])|([^\x1b]+))')
-
- def write(self, text):
- try:
- wlock.acquire()
- for param, cmd, txt in self.ansi_tokans.findall(text):
- if cmd:
- cmd_func = self.ansi_command_table.get(cmd)
- if cmd_func:
- cmd_func(self, param)
- else:
- chars_written = c_int()
- if isinstance(txt, text_type):
- windll.kernel32.WriteConsoleW(
- self.hconsole, txt, len(txt), byref(chars_written), None)
- else:
- windll.kernel32.WriteConsoleA(
- self.hconsole, txt, len(txt), byref(chars_written), None)
- finally:
- wlock.release()
-
- def flush(self):
- pass
-
- def isatty(self):
- return True
-
- sys.stderr = sys.stdout = AnsiTerm()
- os.environ['TERM'] = 'vt100'
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/colorer.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/colorer.py
deleted file mode 100644
index 7a3f23b..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/colorer.py
+++ /dev/null
@@ -1,142 +0,0 @@
-#!/usr/bin/env python
-# encoding: utf-8
-
-"""
-Colorer does enable colored logging messages by using `ANSI escape sequences `_.
-
-Under Windows, where the escapes are not supported it does use the Windows API.
-
-The colored output is generated only when the console is a terminal supporting it, so if you redirect the output to a log file you will not see the escape codes in the file.
-
->>> import colorer, logging
-... logging.error("red line")
-... logging.warn("yellow line")
-... logging.info("gray line")
-... logging.debug("magenta line")
-"""
-import copy
-import logging
-import os
-import six
-import sys
-
-
-if (hasattr(sys.stderr, "isatty") and sys.stderr.isatty()) or \
- ('TERM' in os.environ.keys() and os.environ['TERM'] in ['linux']) or \
- ('PYCHARM_HOSTED' in os.environ.keys()):
-
- # Why stderr and not stdout? - because python logging module does output to stderr by default and not stdout.
- # now we patch Python code to add color support to logging.StreamHandler
- def add_coloring_to_emit_windows(fn):
- # add methods we need to the class
- def _out_handle(self):
- import ctypes
- return ctypes.windll.kernel32.GetStdHandle(self.STD_OUTPUT_HANDLE)
-
- def _set_color(self, code):
- import ctypes
- # Constants from the Windows API
- self.STD_OUTPUT_HANDLE = -11
- hdl = ctypes.windll.kernel32.GetStdHandle(self.STD_OUTPUT_HANDLE)
- ctypes.windll.kernel32.SetConsoleTextAttribute(hdl, code)
-
- setattr(logging.StreamHandler, '_set_color', _set_color)
-
- def new(*args):
- FOREGROUND_BLUE = 0x0001 # text color contains blue.
- FOREGROUND_GREEN = 0x0002 # text color contains green.
- FOREGROUND_RED = 0x0004 # text color contains red.
- FOREGROUND_INTENSITY = 0x0008 # text color is intensified.
- FOREGROUND_WHITE = FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED
- # winbase.h
- # STD_INPUT_HANDLE = -10
- # STD_OUTPUT_HANDLE = -11
- # STD_ERROR_HANDLE = -12
-
- # wincon.h
- # FOREGROUND_BLACK = 0x0000
- FOREGROUND_BLUE = 0x0001
- FOREGROUND_GREEN = 0x0002
- # FOREGROUND_CYAN = 0x0003
- FOREGROUND_RED = 0x0004
- FOREGROUND_MAGENTA = 0x0005
- FOREGROUND_YELLOW = 0x0006
- # FOREGROUND_GREY = 0x0007
- FOREGROUND_INTENSITY = 0x0008 # foreground color is intensified.
-
- # BACKGROUND_BLACK = 0x0000
- # BACKGROUND_BLUE = 0x0010
- # BACKGROUND_GREEN = 0x0020
- # BACKGROUND_CYAN = 0x0030
- # BACKGROUND_RED = 0x0040
- # BACKGROUND_MAGENTA = 0x0050
- BACKGROUND_YELLOW = 0x0060
- # BACKGROUND_GREY = 0x0070
- BACKGROUND_INTENSITY = 0x0080 # background color is intensified.
-
- levelno = args[1].levelno
- if levelno >= 50:
- color = BACKGROUND_YELLOW | FOREGROUND_RED | FOREGROUND_INTENSITY | BACKGROUND_INTENSITY
- elif levelno >= 40:
- color = FOREGROUND_RED | FOREGROUND_INTENSITY
- elif levelno >= 30:
- color = FOREGROUND_YELLOW | FOREGROUND_INTENSITY
- elif levelno >= 20:
- color = FOREGROUND_GREEN
- elif levelno >= 10:
- color = FOREGROUND_MAGENTA
- else:
- color = FOREGROUND_WHITE
- args[0]._set_color(color)
-
- ret = fn(*args)
- args[0]._set_color(FOREGROUND_WHITE)
- # print "after"
- return ret
- return new
-
- def add_coloring_to_emit_ansi(fn):
- # add methods we need to the class
- def new(*args):
- # new_args = args
- if len(args) == 2:
- new_args = (args[0], copy.copy(args[1]))
- else:
- new_args = (args[0], copy.copy(args[1]), args[2:])
- if hasattr(args[0], 'baseFilename'):
- return fn(*args)
- levelno = new_args[1].levelno
- if levelno >= 50:
- color = '\x1b[31m' # red
- elif levelno >= 40:
- color = '\x1b[31m' # red
- elif levelno >= 30:
- color = '\x1b[33m' # yellow
- elif levelno >= 20:
- color = '\x1b[32m' # green
- elif levelno >= 10:
- color = '\x1b[35m' # pink
- else:
- color = '\x1b[0m' # normal
- try:
- new_args[
- 1].msg = color + six.text_type(new_args[1].msg) + '\x1b[0m' # normal
- except Exception as e:
- raise e
- return fn(*new_args)
- return new
-
- import platform
- if platform.system() == 'Windows':
- # Windows does not support ANSI escapes and we are using API calls to
- # set the console color
- logging.StreamHandler.emit = add_coloring_to_emit_windows(
- logging.StreamHandler.emit)
- else:
- # all non-Windows platforms are supporting ANSI escapes so we use them
- logging.StreamHandler.emit = add_coloring_to_emit_ansi(
- logging.StreamHandler.emit)
- # log = logging.getLogger()
- # log.addFilter(log_filter())
- # //hdlr = logging.StreamHandler()
- # //hdlr.setFormatter(formatter())
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/execfile2.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/execfile2.py
deleted file mode 100644
index bd413fa..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/execfile2.py
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/bin/env python
-import shlex
-import sys
-
-if sys.hexversion > 0x03000000:
- def execfile(file, globals=globals(), locals=locals()):
- fh = open(file, "r")
- if not fh:
- raise Exception("Unable to open %s." % file)
- exec(fh.read() + "\n", globals, locals)
-
-
-def execfile2(filename, _globals=dict(), _locals=dict(), cmd=None, quiet=False):
- """Execute a Python script using :py:func:`execfile`.
-
- In addition to Python :py:func:`execfile` this method can temporary change the argv params.
-
- This enables you to call an external python script that requires
- command line arguments without leaving current python interpretor.
-
- `cmd` can be a string with command line arguments or a list or arguments
-
- The return value is a numeric exit code similar to the one used for command line tools:
-
- - 0 - if succesfull; this applies if script receives SystemExit with error code 0
- - 1 - if SystemExit does not contain an error code or if other Exception is received.
- - x - the SystemExit error code (if present)
- """
- _globals['__name__'] = '__main__'
- saved_argv = sys.argv # we save sys.argv
- if cmd:
- sys.argv = list([filename])
- if isinstance(cmd, list):
- sys.argv.append(cmd)
- else:
- sys.argv.extend(shlex.split(cmd))
- exit_code = 0
- try:
- exec(
- compile(open(filename).read(), filename, 'exec'), _globals, _locals)
-
- except SystemExit:
- type, e, tb = sys.exc_info()
- if isinstance(e.code, int):
- exit_code = e.code # this could be 0 if you do sys.exit(0)
- else:
- exit_code = 1
- except Exception:
- if not quiet:
- import traceback
- traceback.print_exc(file=sys.stderr)
- exit_code = 1
- finally:
- if cmd:
- sys.argv = saved_argv # we restore sys.argv
- return exit_code
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/py.typed b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/py.typed
deleted file mode 100644
index e69de29..0000000
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/singleton.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/singleton.py
deleted file mode 100644
index 7668ced..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/singleton.py
+++ /dev/null
@@ -1,92 +0,0 @@
-#! /usr/bin/env python
-
-import logging
-import os
-import sys
-import tempfile
-
-
-if sys.platform != "win32":
- import fcntl
-
-
-class SingleInstanceException(BaseException):
- pass
-
-
-class SingleInstance(object):
-
- """Class that can be instantiated only once per machine.
-
- If you want to prevent your script from running in parallel just instantiate SingleInstance() class. If is there another instance already running it will throw a `SingleInstanceException`.
-
- >>> import tendo
- ... me = SingleInstance()
-
- This option is very useful if you have scripts executed by crontab at small amounts of time.
-
- Remember that this works by creating a lock file with a filename based on the full path to the script file.
-
- Providing a flavor_id will augment the filename with the provided flavor_id, allowing you to create multiple singleton instances from the same file. This is particularly useful if you want specific functions to have their own singleton instances.
- """
-
- def __init__(self, flavor_id="", lockfile=""):
- self.initialized = False
- if lockfile:
- self.lockfile = lockfile
- else:
- basename = os.path.splitext(os.path.abspath(sys.argv[0]))[0].replace(
- "/", "-").replace(":", "").replace("\\", "-") + '-%s' % flavor_id + '.lock'
- self.lockfile = os.path.normpath(
- tempfile.gettempdir() + '/' + basename)
-
- logger.debug("SingleInstance lockfile: " + self.lockfile)
- if sys.platform == 'win32':
- try:
- # file already exists, we try to remove (in case previous
- # execution was interrupted)
- if os.path.exists(self.lockfile):
- os.unlink(self.lockfile)
- self.fd = os.open(
- self.lockfile, os.O_CREAT | os.O_EXCL | os.O_RDWR)
- except OSError:
- type, e, tb = sys.exc_info()
- if e.errno == 13:
- logger.error(
- "Another instance is already running, quitting.")
- raise SingleInstanceException()
- print(e.errno)
- raise
- else: # non Windows
- self.fp = open(self.lockfile, 'w')
- self.fp.flush()
- try:
- fcntl.lockf(self.fp, fcntl.LOCK_EX | fcntl.LOCK_NB)
- except IOError:
- logger.warning(
- "Another instance is already running, quitting.")
- raise SingleInstanceException()
- self.initialized = True
-
- def __del__(self):
- if not self.initialized:
- return
- try:
- if sys.platform == 'win32':
- if hasattr(self, 'fd'):
- os.close(self.fd)
- os.unlink(self.lockfile)
- else:
- fcntl.lockf(self.fp, fcntl.LOCK_UN)
- # os.close(self.fp)
- if os.path.isfile(self.lockfile):
- os.unlink(self.lockfile)
- except Exception as e:
- if logger:
- logger.warning(e)
- else:
- print("Unloggable error: %s" % e)
- sys.exit(-1)
-
-
-logger = logging.getLogger("tendo.singleton")
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tee.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tee.py
deleted file mode 100644
index 6660f8c..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tee.py
+++ /dev/null
@@ -1,277 +0,0 @@
-#!/usr/bin/env python
-# encoding: utf-8
-import codecs
-import logging
-import os
-import pipes
-from six import string_types
-import subprocess
-import sys
-import time
-import types
-import unittest
-
-global logger
-global stdout
-global stderr
-global timing
-global log_command
-
-logger = None
-stdout = False
-stderr = False
-# print execution time of each command in the log, just after the return code
-timing = True
-# outputs the command being executed to the log (before command output)
-log_command = True
-_sentinel = object()
-
-
-def quote_command(cmd):
- """This function does assure that the command line is entirely quoted.
-
- This is required in order to prevent getting "The input line is too long" error message.
- """
- if not (os.name == "nt" or os.name == "dos"):
- # the escaping is required only on Windows platforms, in fact it will
- # break cmd line on others
- return cmd
- if '"' in cmd[1:-1]:
- cmd = '"' + cmd + '"'
- return cmd
-
-
-def system2(cmd, cwd=None, logger=_sentinel, stdout=_sentinel, log_command=_sentinel, timing=_sentinel):
- # def tee(cmd, cwd=None, logger=tee_logger, console=tee_console):
- """Works exactly like :func:`system` but it returns both the exit code and the output as a list of lines.
-
- This method returns a tuple: (return_code, output_lines_as_list). The return code of 0 means success.
- """
- # if isinstance(cmd, collections.Iterable): # -- this line was replaced
- # because collections.Iterable seems to be missing on Debian Python 2.5.5
- # (but not on OS X 10.8 with Python 2.5.6)
- if hasattr(cmd, '__iter__'):
- cmd = " ".join(pipes.quote(s) for s in cmd)
-
- t = time.process_time()
- output = []
- if log_command is _sentinel:
- log_command = globals().get('log_command')
- if timing is _sentinel:
- timing = globals().get('timing')
-
- # default to python native logger if logger parameter is not used
- if logger is _sentinel:
- logger = globals().get('logger')
- if stdout is _sentinel:
- stdout = globals().get('stdout')
-
- # logging.debug("logger=%s stdout=%s" % (logger, stdout))
-
- f = sys.stdout
- if not f.encoding or f.encoding == 'ascii':
- # `ascii` is not a valid encoding by our standards, it's better to output to UTF-8 because it can encoding any Unicode text
- encoding = 'utf_8'
- else:
- encoding = f.encoding
-
- def filelogger(msg):
- try:
- # we'll use the same endline on all platforms, you like it or not
- msg += '\n'
- try:
- f.write(msg)
- except TypeError:
- f.write(msg.encode("utf-8"))
- except Exception:
- sys.exc_info()[1]
- import traceback
- print(' ****** ERROR: Exception: %s\nencoding = %s' %
- (e, encoding))
- traceback.print_exc(file=sys.stderr)
- sys.exit(-1)
- pass
-
- def nop(msg):
- pass
-
- if not logger:
- mylogger = nop
- elif isinstance(logger, string_types):
- f = codecs.open(logger, "a+b", 'utf_8')
- mylogger = filelogger
- elif isinstance(logger, (types.FunctionType, types.MethodType, types.BuiltinFunctionType)):
- mylogger = logger
- else:
- method_write = getattr(logger, "write", None)
- # if we can call write() we'll aceppt it :D
- # this should work for filehandles
- if hasattr(method_write, '__call__'):
- f = logger
- mylogger = filelogger
- else:
- sys.exit("tee() does not support this type of logger=%s" %
- type(logger))
-
- if cwd is not None and not os.path.isdir(cwd):
- os.makedirs(cwd) # this throws exception if fails
-
- cmd = quote_command(cmd) # to prevent _popen() bug
- p = subprocess.Popen(
- cmd, cwd=cwd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
- if log_command:
- mylogger("Running: %s" % cmd)
- while True:
- line = ""
- try:
- line = p.stdout.readline()
- line = line.decode(encoding)
- except Exception:
- e = sys.exc_info()[1]
- logging.error(e)
- logging.error("The output of the command could not be decoded as %s\ncmd: %s\n line ignored: %s" %
- (encoding, cmd, repr(line)))
- pass
-
- output.append(line)
- if not line:
- break
- line = line.rstrip('\n\r')
- mylogger(line) # they are added by logging anyway
- if stdout:
- print(line)
- returncode = p.wait()
- if log_command:
- if timing:
- def secondsToStr(t):
- return time.strftime('%H:%M:%S', time.gmtime(t))
- mylogger("Returned: %d (execution time %s)\n" %
- (returncode, secondsToStr(time.process_time() - t)))
- else:
- mylogger("Returned: %d\n" % returncode)
-
- # running a tool that returns non-zero? this deserves a warning
- if not returncode == 0:
- logging.warning("Returned: %d from: %s\nOutput %s" %
- (returncode, cmd, '\n'.join(output)))
-
- return returncode, output
-
-
-def system(cmd, cwd=None, logger=None, stdout=None, log_command=_sentinel, timing=_sentinel):
- """This works similar to :py:func:`os.system` but add some useful optional parameters.
-
- * ``cmd`` - command to be executed
- * ``cwd`` - optional working directory to be set before running cmd
- * ``logger`` - None, a filename, handle or a function like print or :py:meth:`logging.Logger.warning`
-
- Returns the exit code reported by the execution of the command, 0 means success.
-
- >>> import os, logging
- ... import tendo.tee
- ... tee.system("echo test", logger=logging.error) # output using python logging
- ... tee.system("echo test", logger="log.txt") # output to a file
- ... f = open("log.txt", "w")
- ... tee.system("echo test", logger=f) # output to a filehandle
- ... tee.system("echo test", logger=print) # use the print() function for output
- """
- (returncode, output) = system2(cmd, cwd=cwd, logger=logger,
- stdout=stdout, log_command=log_command, timing=timing)
- return returncode
-
-
-class testTee(unittest.TestCase):
-
- def test_1(self):
- """No CMD os.system()
-
- 1 sort /? ok ok
- 2 "sort" /? ok ok
- 3 sort "/?" ok ok
- 4 "sort" "/?" ok [bad]
- 5 ""sort /?"" ok [bad]
- 6 "sort /?" [bad] ok
- 7 "sort "/?"" [bad] ok
- 8 ""sort" "/?"" [bad] ok
- """
-
- quotes = {
- 'dir >nul': 'dir >nul',
- 'cd /D "C:\\Program Files\\"': '"cd /D "C:\\Program Files\\""',
- 'python -c "import os" dummy': '"python -c "import os" dummy"',
- 'sort': 'sort',
- }
-
- # we fake the os name because we want to run the test on any platform
- save = os.name
- os.name = 'nt'
-
- for key, value in quotes.items():
- resulted_value = quote_command(key)
- self.assertEqual(
- value, resulted_value, "Returned <%s>, expected <%s>" % (resulted_value, value))
- # ret = os.system(resulted_value)
- # if not ret==0:
- # print("failed")
- os.name = save
-
- def test_2(self):
- self.assertEqual(system(['python', '-V']), 0)
-
- def test_3(self):
- self.assertEqual(system2(['python', '-V'])[0], 0)
-
- def test_4(self):
- self.assertEqual(system(['python', '-c', "print('c c')"]), 0)
-
-
-if __name__ == '__main__':
-
- # unittest.main()
- import pytest
- pytest.main([__file__])
-
- # import pytest
- # pytest.main(['--pyargs', __name__])
- """
- import colorer
- import tempfile, os
-
- logging.basicConfig(level=logging.NOTSET,
- format='%(message)s')
-
- # default (stdout)
- print("#1")
- system("python --version")
-
- # function/method
- print("#2")
- system("python --version", logger=logging.error)
-
- # function (this is the same as default)
- print("#3")
- system("python --version", logger=print)
-
- # handler
- print("#4")
- f = tempfile.NamedTemporaryFile()
- system("python --version", logger=f)
- f.close()
-
- # test with string (filename)
- print("#5")
- (f, fname) = tempfile.mkstemp()
- system("python --version", logger=fname)
- os.close(f)
- os.unlink(fname)
-
- print("#6")
- stdout = False
- logger = None
- system("echo test")
-
- print("#7")
- stdout = True
- system("echo test2")
-
-"""
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__init__.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/__init__.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/__init__.cpython-39.pyc
deleted file mode 100644
index 3ca146d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/__init__.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_colorer.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_colorer.cpython-39.pyc
deleted file mode 100644
index 3dc2a9a..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_colorer.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_execfile2.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_execfile2.cpython-39.pyc
deleted file mode 100644
index 59701b4..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_execfile2.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_singleton.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_singleton.cpython-39.pyc
deleted file mode 100644
index f384871..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_singleton.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_tee.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_tee.cpython-39.pyc
deleted file mode 100644
index 58e10cb..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_tee.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_unicode.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_unicode.cpython-39.pyc
deleted file mode 100644
index a30ef23..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/__pycache__/test_unicode.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/full_sample_utf8_bom.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/full_sample_utf8_bom.txt
deleted file mode 100644
index 73dc094..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/full_sample_utf8_bom.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-NFD aaâaa
-NFC aaâaa
-NFKD aaâaa
-NFKC aaâaa
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_ucs2_be.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_ucs2_be.txt
deleted file mode 100644
index 1443f60..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_ucs2_be.txt and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_ucs2_le.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_ucs2_le.txt
deleted file mode 100644
index 94badbc..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_ucs2_le.txt and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_utf8.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_utf8.txt
deleted file mode 100644
index 9e4f93e..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_utf8.txt
+++ /dev/null
@@ -1 +0,0 @@
-țăpusă
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_utf8_bom.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_utf8_bom.txt
deleted file mode 100644
index 37c898a..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/sample_utf8_bom.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-aăâ sș aă #1
-aăâ sș aă #2
-aăâ sș aă #3
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8-after-append.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8-after-append.txt
deleted file mode 100644
index a18824a..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8-after-append.txt
+++ /dev/null
@@ -1 +0,0 @@
-This is a testabcșț_ṩṩṩ_бдж_αβώ_وت_אסל_永𪚥麵𠀀
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8-invalid.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8-invalid.txt
deleted file mode 100644
index abd16f7..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8-invalid.txt and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8.txt
deleted file mode 100644
index 996259b..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/assets/utf8.txt
+++ /dev/null
@@ -1 +0,0 @@
-This is a test
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/py.typed b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/py.typed
deleted file mode 100644
index e69de29..0000000
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_colorer.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_colorer.py
deleted file mode 100644
index c5208c5..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_colorer.py
+++ /dev/null
@@ -1,37 +0,0 @@
-import logging
-import sys
-import tempfile
-
-
-def test_colorer():
- isatty = None
- if hasattr(sys.stderr, "isatty"):
- isatty = sys.stderr.isatty()
- print("sys.stderr.isatty = %s" % isatty)
-
- isatty = None
- if hasattr(sys.stdout, "isatty"):
- isatty = sys.stdout.isatty()
- print("sys.stdout.isatty = %s" % isatty)
-
- logging.getLogger().setLevel(logging.NOTSET)
- tmp_file = tempfile.NamedTemporaryFile(suffix='_colorer.log').name
- fh = logging.FileHandler(tmp_file)
- fh.setLevel(logging.NOTSET)
- ch = logging.StreamHandler()
- ch.setLevel(logging.NOTSET)
- formatter = logging.Formatter('%(levelname)s: %(message)s')
- fh.setFormatter(formatter)
- ch.setFormatter(formatter)
- logging.getLogger().addHandler(ch)
- logging.getLogger().addHandler(fh)
-
- logging.warning("a warning")
- logging.error("some error")
- logging.info("some info")
- logging.debug("some info")
- expected_lines = ['WARNING: a warning\n', 'ERROR: some error\n', 'INFO: some info\n', 'DEBUG: some info\n']
- line_no = 0
- for line in open(tmp_file).readlines():
- assert(line == expected_lines[line_no])
- line_no += 1
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_execfile2.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_execfile2.py
deleted file mode 100644
index 20e6412..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_execfile2.py
+++ /dev/null
@@ -1,52 +0,0 @@
-
-import os
-import tempfile
-
-from tendo.execfile2 import execfile2
-
-
-def exec_py_code(code, cmd=None):
- (ftmp, fname_tmp) = tempfile.mkstemp()
- f = open(fname_tmp, "w") # encoding not specified, should use utf-8
- f.write(code)
- f.close()
- exit_code = execfile2(fname_tmp, cmd=cmd, quiet=True)
- os.close(ftmp)
- os.unlink(fname_tmp)
- return exit_code
-
-
-def test_normal_execution():
- exit_code = exec_py_code("")
- assert exit_code == 0
-
-
-def test_bad_code():
- exit_code = exec_py_code("bleah")
- assert exit_code == 1
-
-
-def test_sys_exit_0():
- exit_code = exec_py_code("import sys; sys.exit(0)")
- assert exit_code == 0
-
-
-def test_sys_exit_5():
- exit_code = exec_py_code("import sys; sys.exit(5)")
- assert exit_code == 5
-
-
-def test_sys_exit_text():
- exit_code = exec_py_code("import sys; sys.exit('bleah')")
- assert exit_code == 1
-
-
-def test_raised_exception():
- exit_code = exec_py_code("raise Exception('bleah')")
- assert exit_code == 1
-
-
-def test_command_line():
- exit_code = exec_py_code(
- "import sys\nif len(sys.argv)==2 and sys.argv[1]=='doh!': sys.exit(-1)", cmd="doh!")
- assert exit_code == -1
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_singleton.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_singleton.py
deleted file mode 100644
index 6423482..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_singleton.py
+++ /dev/null
@@ -1,58 +0,0 @@
-import logging
-from multiprocessing import Process
-import sys
-
-from tendo.singleton import SingleInstance, SingleInstanceException
-
-logger = logging.getLogger("tendo.singleton.test")
-logger.addHandler(logging.StreamHandler())
-logger.setLevel(logging.DEBUG)
-
-
-def f(name):
- tmp = logger.level
- logger.setLevel(logging.CRITICAL) # we do not want to see the warning
- try:
- me2 = SingleInstance(flavor_id=name) # noqa
- except SingleInstanceException:
- sys.exit(-1)
- logger.setLevel(tmp)
- pass
-
-
-def test_1():
- me = SingleInstance(flavor_id="test-1")
- del me # now the lock should be removed
- assert True
-
-
-def test_2():
- p = Process(target=f, args=("test-2",))
- p.start()
- p.join()
- # the called function should succeed
- assert p.exitcode == 0, "%s != 0" % p.exitcode
-
-
-def test_3():
- me = SingleInstance(flavor_id="test-3") # noqa -- me should still kept
- p = Process(target=f, args=("test-3",))
- p.start()
- p.join()
- # the called function should fail because we already have another
- # instance running
- assert p.exitcode != 0, "%s != 0 (2nd execution)" % p.exitcode
- # note, we return -1 but this translates to 255 meanwhile we'll
- # consider that anything different from 0 is good
- p = Process(target=f, args=("test-3",))
- p.start()
- p.join()
- # the called function should fail because we already have another
- # instance running
- assert p.exitcode != 0, "%s != 0 (3rd execution)" % p.exitcode
-
-
-def test_4():
- lockfile = '/tmp/foo.lock'
- me = SingleInstance(lockfile=lockfile)
- assert me.lockfile == lockfile
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_tee.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_tee.py
deleted file mode 100644
index f1ad9de..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_tee.py
+++ /dev/null
@@ -1,48 +0,0 @@
-
-import os
-from tendo.tee import quote_command, system, system2
-
-
-def test_1():
- """No CMD os.system()
-
- 1 sort /? ok ok
- 2 "sort" /? ok ok
- 3 sort "/?" ok ok
- 4 "sort" "/?" ok [bad]
- 5 ""sort /?"" ok [bad]
- 6 "sort /?" [bad] ok
- 7 "sort "/?"" [bad] ok
- 8 ""sort" "/?"" [bad] ok
- """
-
- quotes = {
- 'dir >nul': 'dir >nul',
- 'cd /D "C:\\Program Files\\"': '"cd /D "C:\\Program Files\\""',
- 'python -c "import os" dummy': '"python -c "import os" dummy"',
- 'sort': 'sort',
- }
-
- # we fake the os name because we want to run the test on any platform
- save = os.name
- os.name = 'nt'
-
- for key, value in quotes.items():
- resulted_value = quote_command(key)
- assert value == resulted_value
- # ret = os.system(resulted_value)
- # if not ret==0:
- # print("failed")
- os.name = save
-
-
-def test_2():
- assert system(['python', '-V']) == 0
-
-
-def test_3():
- assert system2(['python', '-V'])[0] == 0
-
-
-def test_4():
- assert system(['python', '-c', "print('c c')"]) == 0
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_unicode.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_unicode.py
deleted file mode 100644
index 12ce1be..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/tests/test_unicode.py
+++ /dev/null
@@ -1,49 +0,0 @@
-import inspect
-import pytest
-import tempfile
-import six
-import os
-import filecmp
-import shutil
-
-
-@pytest.fixture
-def dir():
- os.chdir(os.path.dirname(os.path.abspath(__file__)))
- return os.path.dirname(inspect.getfile(inspect.currentframe()))
-
-
-def test_read_utf8(dir):
- if six.PY2:
- mode = "rU"
- else:
- mode = "r"
- f = open(os.path.join(dir, "assets/utf8.txt"), mode)
- f.readlines()
- f.close()
- assert True
-
-
-def test_read_invalid_utf8(dir):
- with pytest.raises(UnicodeDecodeError):
- if six.PY2:
- mode = "rU"
- else:
- mode = "r"
- f = open(os.path.join(dir, "assets/utf8-invalid.txt"), mode)
- f.readlines()
- f.close()
-
-
-def test_write_on_existing_utf8(dir):
- (ftmp, fname_tmp) = tempfile.mkstemp()
- shutil.copyfile(os.path.join(dir, "assets/utf8.txt"), fname_tmp)
- f = open(fname_tmp, "a") # encoding not specified, should use utf-8
- f.write(six.u(
- "\u0061\u0062\u0063\u0219\u021B\u005F\u1E69\u0073\u0323\u0307\u0073\u0307\u0323\u005F\u0431\u0434\u0436\u005F\u03B1\u03B2\u03CE\u005F\u0648\u062A\u005F\u05D0\u05E1\u05DC\u005F\u6C38\U0002A6A5\u9EB5\U00020000"))
- f.close()
- passed = filecmp.cmp(
- os.path.join(dir, "assets/utf8-after-append.txt"), fname_tmp, shallow=False)
- assert passed is True
- os.close(ftmp)
- os.unlink(fname_tmp)
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/unicode.py b/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/unicode.py
deleted file mode 100644
index 8c21df1..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/tendo/unicode.py
+++ /dev/null
@@ -1,81 +0,0 @@
-#!/usr/bin/python
-import codecs
-import logging
-import sys
-
-import six
-"""
-Author: Sorin Sbarnea
-
-This file does add some additional Unicode support to Python, like:
-* auto-detect BOM on text-file open: open(file, "r") and open(file, "rU")
-
-"""
-# we save the file function handler because we want to override it
-open_old = open
-
-
-def open(filename, mode='r', bufsize=-1, fallback_encoding='utf_8'):
- """This replaces Python original function with an improved version that is Unicode aware.
-
- The new `open()` does change behaviour only for text files, not binary.
-
- * mode is by default 'r' if not specified and text mode
- * negative bufsize makes it use the default system one (same as not specified)
-
- >>> import tendo.unicode
- ... f = open("file-with-unicode-content.txt")
- ... content = f.read() # Unicode content of the file, without BOM
-
- Shortly by importing unicode, you will repair code that previously was broken when the input files were Unicode.
-
- This will not change the behavior of code that reads the files as binary, it has an effect on text file operations.
-
- Files with BOM will be read properly as Unicode and the BOM will not be part of the text.
-
- If you do not specify the fallback_encoding, files without BOM will be read as `UTF-8` instead of `ascii`.
- """
- # Do not assign None to bufsize or mode because calling original open will
- # fail
-
- # we read the first 4 bytes just to be sure we use the right encoding
- # we are interested of detecting the mode only for read text
- if "r" in mode or "a" in mode:
- try:
- f = open_old(filename, "rb")
- aBuf = bytes(f.read(4))
- f.close()
- except Exception:
- aBuf = six.b('')
- if six.binary_type(aBuf[:3]) == six.b('\xEF\xBB\xBF'):
- f = codecs.open(filename, mode, "utf_8")
- f.seek(3, 0)
- f.BOM = codecs.BOM_UTF8
- elif six.binary_type(aBuf[:2]) == six.b('\xFF\xFE'):
- f = codecs.open(filename, mode, "utf_16_le")
- f.seek(2, 0)
- f.BOM = codecs.BOM_UTF16_LE
- elif six.binary_type(aBuf[:2]) == six.b('\xFE\xFF'):
- f = codecs.open(filename, mode, "utf_16_be")
- f.seek(2, 0)
- f.BOM = codecs.BOM_UTF16_BE
- elif six.binary_type(aBuf[:4]) == six.b('\xFF\xFE\x00\x00'):
- f = codecs.open(filename, mode, "utf_32_le")
- f.seek(4, 0)
- f.BOM = codecs.BOM_UTF32_LE
- elif six.binary_type(aBuf[:4]) == six.b('\x00\x00\xFE\xFF'):
- f = codecs.open(filename, mode, "utf_32_be")
- f.seek(4, 0)
- f.BOM = codecs.BOM_UTF32_BE
- else: # we assume that if there is no BOM, the encoding is UTF-8
- f = codecs.open(filename, mode, fallback_encoding)
- f.seek(0)
- f.BOM = None
- return f
- else:
- import traceback
- logging.warning(
- "Calling unicode.open(%s,%s,%s) that may be wrong." % (filename, mode, bufsize))
- traceback.print_exc(file=sys.stderr)
-
- return open_old(filename, mode, bufsize)
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/INSTALLER b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/INSTALLER
deleted file mode 100644
index a1b589e..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/INSTALLER
+++ /dev/null
@@ -1 +0,0 @@
-pip
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/LICENSE b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/LICENSE
deleted file mode 100644
index 8b4db1f..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2021 Israel Dryer
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/METADATA b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/METADATA
deleted file mode 100644
index 1f6dba1..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/METADATA
+++ /dev/null
@@ -1,81 +0,0 @@
-Metadata-Version: 2.1
-Name: ttkbootstrap
-Version: 1.10.1
-Summary: A supercharged theme extension for tkinter that enables on-demand modern flat style themes inspired by Bootstrap.
-Home-page: https://github.com/israel-dryer/ttkbootstrap
-Author: Israel Dryer
-Author-email: israel.dryer@gmail.com
-Classifier: Programming Language :: Python :: 3
-Classifier: License :: OSI Approved :: MIT License
-Classifier: Operating System :: OS Independent
-Requires-Python: >=3.7
-Description-Content-Type: text/markdown
-License-File: LICENSE
-Requires-Dist: pillow (>=8.2.0)
-
-
-![](https://img.shields.io/github/release/israel-dryer/ttkbootstrap.svg)
-[![Downloads](https://pepy.tech/badge/ttkbootstrap)](https://pepy.tech/project/ttkbootstrap)
-[![Downloads](https://pepy.tech/badge/ttkbootstrap/month)](https://pepy.tech/project/ttkbootstrap)
-![](https://img.shields.io/github/issues/israel-dryer/ttkbootstrap.svg)
-![](https://img.shields.io/github/issues-closed/israel-dryer/ttkbootstrap.svg)
-![](https://img.shields.io/github/license/israel-dryer/ttkbootstrap.svg)
-![](https://img.shields.io/github/stars/israel-dryer/ttkbootstrap.svg)
-![](https://img.shields.io/github/forks/israel-dryer/ttkbootstrap.svg)
-
-A supercharged theme extension for tkinter that enables on-demand modern flat style themes inspired by Bootstrap.
-
-👀 Check out the [documentation](https://ttkbootstrap.readthedocs.io/en/latest/).
-
-![](https://raw.githubusercontent.com/israel-dryer/ttkbootstrap/master/docs/assets/themes/themes.gif)
-
-## Features
-
-✔️ [**Built-in Themes**](https://ttkbootstrap.readthedocs.io/en/latest/themes/)
-Over a dozen curated dark and light themes.
-
-✔️ [**Pre-defined Styles:**](https://ttkbootstrap.readthedocs.io/en/latest/styleguide/)
-Loads of beautiful pre-defined widget styles such as **outline** and **round toggle** buttons.
-
-✔️ [**Simple keyword API:**](https://ttkbootstrap.readthedocs.io/en/latest/gettingstarted/tutorial/#use-themed-widgets)
-Apply colors and types using simple keywords such as **primary** and **striped** instead of the legacy approach of **primary.Striped.Horizontal.TProgressbar**. If you've used Bootstrap for web development, you are already familiar with this approach using css classes.
-
-✔️ [**Lots of new Widgets:**](https://ttkbootstrap.readthedocs.io/en/latest/api/widgets/dateentry/)
-ttkbootstrap comes with several new beautifully designed widgets such as **Meter**, **DateEntry**, and **Floodgauge**. Additionally, **dialogs** are now themed and fully customizable.
-
-✔️ [**Built-in Theme Creator:**](https://ttkbootstrap.readthedocs.io/en/latest/themes/themecreator/)
-Want to create your own theme? Easy! ttkboostrap includes a built-in **theme creator** that enables you to easily build, load, expore, and apply your own custom themes.
-
-## Installation
-
-```python
-python -m pip install ttkbootstrap
-```
-
-## Simple Usage
-Instead of using long, complicated ttk style classes, you can use simple keywords with the "bootstyle" parameter.
-
-```python
-import ttkbootstrap as ttk
-from ttkbootstrap.constants import *
-
-root = ttk.Window(themename="superhero")
-
-b1 = ttk.Button(root, text="Submit", bootstyle="success")
-b1.pack(side=LEFT, padx=5, pady=10)
-
-b2 = ttk.Button(root, text="Submit", bootstyle="info-outline")
-b2.pack(side=LEFT, padx=5, pady=10)
-
-root.mainloop()
-```
-
-The new keyword API is very flexible. The following examples all produce the same result:
-- `bootstyle="info-outline"`
-- `bootstyle="info outline"`
-- `bootstyle=("info", "outline")`
-- `bootstyle=(INFO, OUTLINE)`
-
-## Links
-- **Documentation:** https://ttkbootstrap.readthedocs.io/en/latest/
-- **GitHub:** https://github.com/israel-dryer/ttkbootstrap
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/RECORD b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/RECORD
deleted file mode 100644
index 38d39c1..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/RECORD
+++ /dev/null
@@ -1,61 +0,0 @@
-ttkbootstrap-1.10.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
-ttkbootstrap-1.10.1.dist-info/LICENSE,sha256=5GxHfz2ouGVSpF_de2vLpQ334PjztTwgUXTzB6YrQRk,1090
-ttkbootstrap-1.10.1.dist-info/METADATA,sha256=01CDyDVcyPAdh5gNebxKlumHGh1OFOaOt2pJ5vfGdGc,3757
-ttkbootstrap-1.10.1.dist-info/RECORD,,
-ttkbootstrap-1.10.1.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
-ttkbootstrap-1.10.1.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
-ttkbootstrap-1.10.1.dist-info/top_level.txt,sha256=kiB4so53dBImGejI1oNn1TsM0rRR9MF-okIQV-tgGWc,24
-ttkbootstrap/__init__.py,sha256=XKPis2k-N7nVBjtKmQf0iH7n8_mDJOQt7jLYi4JP7cM,396
-ttkbootstrap/__main__.py,sha256=LvK6Wp_GlZhCFXny5Hm-NFpKIklqLW6fyc_cKpOUL48,8926
-ttkbootstrap/__pycache__/__init__.cpython-39.pyc,,
-ttkbootstrap/__pycache__/__main__.cpython-39.pyc,,
-ttkbootstrap/__pycache__/colorutils.cpython-39.pyc,,
-ttkbootstrap/__pycache__/constants.cpython-39.pyc,,
-ttkbootstrap/__pycache__/icons.cpython-39.pyc,,
-ttkbootstrap/__pycache__/publisher.cpython-39.pyc,,
-ttkbootstrap/__pycache__/scrolled.cpython-39.pyc,,
-ttkbootstrap/__pycache__/style.cpython-39.pyc,,
-ttkbootstrap/__pycache__/tableview.cpython-39.pyc,,
-ttkbootstrap/__pycache__/toast.cpython-39.pyc,,
-ttkbootstrap/__pycache__/tooltip.cpython-39.pyc,,
-ttkbootstrap/__pycache__/utility.cpython-39.pyc,,
-ttkbootstrap/__pycache__/validation.cpython-39.pyc,,
-ttkbootstrap/__pycache__/widgets.cpython-39.pyc,,
-ttkbootstrap/__pycache__/window.cpython-39.pyc,,
-ttkbootstrap/colorutils.py,sha256=8BLNwPi5Y3hnIJLYWedT7f4qOrpuuZ8hudoEkb6RqQ8,5255
-ttkbootstrap/constants.py,sha256=d1GutsvjEDbuAe079R-4r4hsRpXCjAz0T9fk5vNT2QA,775
-ttkbootstrap/dialogs/__init__.py,sha256=j_U9tYIjdQNmakvsvJT_OZRu5VYA-bazR7Ut2WcZJjI,42
-ttkbootstrap/dialogs/__pycache__/__init__.cpython-39.pyc,,
-ttkbootstrap/dialogs/__pycache__/colorchooser.cpython-39.pyc,,
-ttkbootstrap/dialogs/__pycache__/colordropper.cpython-39.pyc,,
-ttkbootstrap/dialogs/__pycache__/dialogs.cpython-39.pyc,,
-ttkbootstrap/dialogs/colorchooser.py,sha256=NPC94V9bYdlYepAt7cYhpGxmu-nRa-zqTg3W09tB3n4,22700
-ttkbootstrap/dialogs/colordropper.py,sha256=1hVj3iqA8OA1bM5bBp5mMNaIjY04hhDEixbRQh9qiyA,6885
-ttkbootstrap/dialogs/dialogs.py,sha256=O6bD4RogB2Sj7BmqlsdZCCKW80EvtHxXaxz8rqZ3wQk,64245
-ttkbootstrap/icons.py,sha256=dA2NB413LgENzuhBQ3JLSRS98ZGY4yTVVfrQomnvfM0,118811
-ttkbootstrap/localization/__init__.py,sha256=QvDooxyknlC7Iw7sAlRAGbXM9UC6FxJf3UT4iGYdiew,675
-ttkbootstrap/localization/__pycache__/__init__.cpython-39.pyc,,
-ttkbootstrap/localization/__pycache__/msgcat.cpython-39.pyc,,
-ttkbootstrap/localization/__pycache__/msgs.cpython-39.pyc,,
-ttkbootstrap/localization/msgcat.py,sha256=BEEXbDOm-WdvRGXMA4g7kgQXMus-t3_ibEoXv1wudI4,5594
-ttkbootstrap/localization/msgs.py,sha256=Pc5dKO4JdNKqaP6tUOXItXAITliXgVPdus_PjjnIzdg,15106
-ttkbootstrap/publisher.py,sha256=NAiNAwOMSqa8nymObagYXhQf7vHBX2lGzOimh7seinw,2879
-ttkbootstrap/scrolled.py,sha256=sQCxqXDuT3ddyozNfrG5x7UnlIz3naAhHbQgWBeaPus,15839
-ttkbootstrap/style.py,sha256=YCC661XblVvHSxukSqoZm8lPfrjMckGjbg3E2rYUF64,172335
-ttkbootstrap/tableview.py,sha256=OHYxxBmtsslAPn4zOKLI3NKo6YIT49sZct48HZ-p1Gw,92575
-ttkbootstrap/themes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
-ttkbootstrap/themes/__pycache__/__init__.cpython-39.pyc,,
-ttkbootstrap/themes/__pycache__/standard.cpython-39.pyc,,
-ttkbootstrap/themes/__pycache__/user.cpython-39.pyc,,
-ttkbootstrap/themes/standard.py,sha256=4Uv-FuiG_dbo46_AaTvyXUE22BO-KZzN6Yh_eg6Uk18,11286
-ttkbootstrap/themes/user.py,sha256=G7lg2FIAc8oijPHic6BwWH0jq1dXCKPCqMbb7hxPViA,14
-ttkbootstrap/toast.py,sha256=K1uzggaf61YHK6VNTVq-hVSULsYuooHfIuUTFmGKPvk,8389
-ttkbootstrap/tooltip.py,sha256=6YOndpT6GwwvTkThCFQk3nxQZZFXBscbDpvTz6Oj19Q,5139
-ttkbootstrap/utility.py,sha256=oQlyHG1_XNgcqzWybEqdPmKvoHmxlHGhITTbY6ViE_o,3555
-ttkbootstrap/validation.py,sha256=go7iVecKNJdaPelf6Mkx7CjLhfVhO2B-CGHJdAMi5ts,10200
-ttkbootstrap/widgets.py,sha256=FhfJVQBL1jAWgi_Tks0hRSs2ZEa8PfPqm3SyVgQwvrc,40690
-ttkbootstrap/window.py,sha256=nOaFAj5PX1l8Oo3d-HpAw7w42qGObpRGqGzc5FjfYuw,18186
-ttkcreator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
-ttkcreator/__main__.py,sha256=DUPwQng17rIssQzyudFpgmo-Kt77W7yxtE7SxyU5K10,17276
-ttkcreator/__pycache__/__init__.cpython-39.pyc,,
-ttkcreator/__pycache__/__main__.cpython-39.pyc,,
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/REQUESTED b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/REQUESTED
deleted file mode 100644
index e69de29..0000000
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/WHEEL b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/WHEEL
deleted file mode 100644
index 57e3d84..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/WHEEL
+++ /dev/null
@@ -1,5 +0,0 @@
-Wheel-Version: 1.0
-Generator: bdist_wheel (0.38.4)
-Root-Is-Purelib: true
-Tag: py3-none-any
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/top_level.txt b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/top_level.txt
deleted file mode 100644
index fc93cf8..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap-1.10.1.dist-info/top_level.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-ttkbootstrap
-ttkcreator
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__init__.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__init__.py
deleted file mode 100644
index 90f1d87..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__init__.py
+++ /dev/null
@@ -1,11 +0,0 @@
-from ttkbootstrap.style import Style
-from ttkbootstrap.style import Bootstyle
-from ttkbootstrap.widgets import *
-from ttkbootstrap.window import Window, Toplevel
-
-from tkinter.scrolledtext import ScrolledText
-from tkinter import Variable, StringVar, IntVar, BooleanVar, DoubleVar
-from tkinter import Canvas, Menu, Text
-from tkinter import PhotoImage
-
-Bootstyle.setup_ttkbootstap_api()
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__main__.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__main__.py
deleted file mode 100644
index 4859986..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__main__.py
+++ /dev/null
@@ -1,301 +0,0 @@
-"""
- ttkbootstrap demo
-
- ISSUES:
- - the legacy tk widgets do not update after DateDialog is used.
-"""
-import ttkbootstrap as ttk
-from ttkbootstrap.constants import *
-from ttkbootstrap.dialogs import Messagebox
-from ttkbootstrap.scrolled import ScrolledText
-
-
-def setup_demo(master):
-
- ZEN = """Beautiful is better than ugly.
-Explicit is better than implicit.
-Simple is better than complex.
-Complex is better than complicated.
-Flat is better than nested.
-Sparse is better than dense.
-Readability counts.
-Special cases aren't special enough to break the rules.
-Although practicality beats purity.
-Errors should never pass silently.
-Unless explicitly silenced.
-In the face of ambiguity, refuse the temptation to guess.
-There should be one-- and preferably only one --obvious way to do it.
-Although that way may not be obvious at first unless you're Dutch.
-Now is better than never.
-Although never is often better than *right* now.
-If the implementation is hard to explain, it's a bad idea.
-If the implementation is easy to explain, it may be a good idea.
-Namespaces are one honking great idea -- let's do more of those!"""
-
- root = ttk.Frame(master, padding=10)
- style = ttk.Style()
- theme_names = style.theme_names()
-
- theme_selection = ttk.Frame(root, padding=(10, 10, 10, 0))
- theme_selection.pack(fill=X, expand=YES)
-
- theme_selected = ttk.Label(
- master=theme_selection, text="litera", font="-size 24 -weight bold"
- )
- theme_selected.pack(side=LEFT)
-
- lbl = ttk.Label(theme_selection, text="Select a theme:")
- theme_cbo = ttk.Combobox(
- master=theme_selection,
- text=style.theme.name,
- values=theme_names,
- )
- theme_cbo.pack(padx=10, side=RIGHT)
- theme_cbo.current(theme_names.index(style.theme.name))
- lbl.pack(side=RIGHT)
-
- ttk.Separator(root).pack(fill=X, pady=10, padx=10)
-
- def change_theme(e):
- t = cbo.get()
- style.theme_use(t)
- theme_selected.configure(text=t)
- theme_cbo.selection_clear()
- default.focus_set()
-
- theme_cbo.bind("<>", change_theme)
-
- lframe = ttk.Frame(root, padding=5)
- lframe.pack(side=LEFT, fill=BOTH, expand=YES)
-
- rframe = ttk.Frame(root, padding=5)
- rframe.pack(side=RIGHT, fill=BOTH, expand=YES)
-
- color_group = ttk.Labelframe(
- master=lframe, text="Theme color options", padding=10
- )
- color_group.pack(fill=X, side=TOP)
-
- for color in style.colors:
- cb = ttk.Button(color_group, text=color, bootstyle=color)
- cb.pack(side=LEFT, expand=YES, padx=5, fill=X)
-
- rb_group = ttk.Labelframe(
- lframe, text="Checkbuttons & radiobuttons", padding=10
- )
- rb_group.pack(fill=X, pady=10, side=TOP)
-
- check1 = ttk.Checkbutton(rb_group, text="selected")
- check1.pack(side=LEFT, expand=YES, padx=5)
- check1.invoke()
-
- check2 = ttk.Checkbutton(rb_group, text="alternate")
- check2.pack(side=LEFT, expand=YES, padx=5)
-
- check4 = ttk.Checkbutton(rb_group, text="deselected")
- check4.pack(side=LEFT, expand=YES, padx=5)
- check4.invoke()
- check4.invoke()
-
- check3 = ttk.Checkbutton(rb_group, text="disabled", state=DISABLED)
- check3.pack(side=LEFT, expand=YES, padx=5)
-
- radio1 = ttk.Radiobutton(rb_group, text="selected", value=1)
- radio1.pack(side=LEFT, expand=YES, padx=5)
- radio1.invoke()
-
- radio2 = ttk.Radiobutton(rb_group, text="deselected", value=2)
- radio2.pack(side=LEFT, expand=YES, padx=5)
-
- radio3 = ttk.Radiobutton(
- master=rb_group, text="disabled", value=3, state=DISABLED
- )
- radio3.pack(side=LEFT, expand=YES, padx=5)
-
- ttframe = ttk.Frame(lframe)
- ttframe.pack(pady=5, fill=X, side=TOP)
-
- table_data = [
- ("South Island, New Zealand", 1),
- ("Paris", 2),
- ("Bora Bora", 3),
- ("Maui", 4),
- ("Tahiti", 5),
- ]
-
- tv = ttk.Treeview(master=ttframe, columns=[0, 1], show=HEADINGS, height=5)
- for row in table_data:
- tv.insert("", END, values=row)
-
- tv.selection_set("I001")
- tv.heading(0, text="City")
- tv.heading(1, text="Rank")
- tv.column(0, width=300)
- tv.column(1, width=70, anchor=CENTER)
- tv.pack(side=LEFT, anchor=NE, fill=X)
-
- # # notebook with table and text tabs
- nb = ttk.Notebook(ttframe)
- nb.pack(side=LEFT, padx=(10, 0), expand=YES, fill=BOTH)
- nb_text = "This is a notebook tab.\nYou can put any widget you want here."
- nb.add(ttk.Label(nb, text=nb_text), text="Tab 1", sticky=NW)
- nb.add(
- child=ttk.Label(nb, text="A notebook tab."), text="Tab 2", sticky=NW
- )
- nb.add(ttk.Frame(nb), text="Tab 3")
- nb.add(ttk.Frame(nb), text="Tab 4")
- nb.add(ttk.Frame(nb), text="Tab 5")
-
- # text widget
- txt = ScrolledText(master=lframe, height=5, width=50, autohide=True)
- txt.insert(END, ZEN)
- txt.pack(side=LEFT, anchor=NW, pady=5, fill=BOTH, expand=YES)
- lframe_inner = ttk.Frame(lframe)
- lframe_inner.pack(fill=BOTH, expand=YES, padx=10)
- s1 = ttk.Scale(
- master=lframe_inner, orient=HORIZONTAL, value=75, from_=100, to=0
- )
- s1.pack(fill=X, pady=5, expand=YES)
-
- ttk.Progressbar(
- master=lframe_inner,
- orient=HORIZONTAL,
- value=50,
- ).pack(fill=X, pady=5, expand=YES)
-
- ttk.Progressbar(
- master=lframe_inner,
- orient=HORIZONTAL,
- value=75,
- bootstyle=(SUCCESS, STRIPED),
- ).pack(fill=X, pady=5, expand=YES)
-
- m = ttk.Meter(
- master=lframe_inner,
- metersize=150,
- amountused=45,
- subtext="meter widget",
- bootstyle=INFO,
- interactive=True,
- )
- m.pack(pady=10)
-
- sb = ttk.Scrollbar(
- master=lframe_inner,
- orient=HORIZONTAL,
- )
- sb.set(0.1, 0.9)
- sb.pack(fill=X, pady=5, expand=YES)
-
- sb = ttk.Scrollbar(
- master=lframe_inner, orient=HORIZONTAL, bootstyle=(DANGER, ROUND)
- )
- sb.set(0.1, 0.9)
- sb.pack(fill=X, pady=5, expand=YES)
-
- btn_group = ttk.Labelframe(master=rframe, text="Buttons", padding=(10, 5))
- btn_group.pack(fill=X)
-
- menu = ttk.Menu(root)
- for i, t in enumerate(style.theme_names()):
- menu.add_radiobutton(label=t, value=i)
-
- default = ttk.Button(master=btn_group, text="solid button")
- default.pack(fill=X, pady=5)
- default.focus_set()
-
- mb = ttk.Menubutton(
- master=btn_group,
- text="solid menubutton",
- bootstyle=SECONDARY,
- menu=menu,
- )
- mb.pack(fill=X, pady=5)
-
- cb = ttk.Checkbutton(
- master=btn_group,
- text="solid toolbutton",
- bootstyle=(SUCCESS, TOOLBUTTON),
- )
- cb.invoke()
- cb.pack(fill=X, pady=5)
-
- ob = ttk.Button(
- master=btn_group,
- text="outline button",
- bootstyle=(INFO, OUTLINE),
- command=lambda: Messagebox.ok("You pushed an outline button"),
- )
- ob.pack(fill=X, pady=5)
-
- mb = ttk.Menubutton(
- master=btn_group,
- text="outline menubutton",
- bootstyle=(WARNING, OUTLINE),
- menu=menu,
- )
- mb.pack(fill=X, pady=5)
-
- cb = ttk.Checkbutton(
- master=btn_group,
- text="outline toolbutton",
- bootstyle=(SUCCESS, OUTLINE, TOOLBUTTON),
- )
- cb.pack(fill=X, pady=5)
-
- lb = ttk.Button(master=btn_group, text="link button", bootstyle=LINK)
- lb.pack(fill=X, pady=5)
-
- cb1 = ttk.Checkbutton(
- master=btn_group,
- text="rounded toggle",
- bootstyle=(SUCCESS, ROUND, TOGGLE),
- )
- cb1.invoke()
- cb1.pack(fill=X, pady=5)
-
- cb2 = ttk.Checkbutton(
- master=btn_group, text="squared toggle", bootstyle=(SQUARE, TOGGLE)
- )
- cb2.pack(fill=X, pady=5)
- cb2.invoke()
-
- input_group = ttk.Labelframe(
- master=rframe, text="Other input widgets", padding=10
- )
- input_group.pack(fill=BOTH, pady=(10, 5), expand=YES)
- entry = ttk.Entry(input_group)
- entry.pack(fill=X)
- entry.insert(END, "entry widget")
-
- password = ttk.Entry(master=input_group, show="•")
- password.pack(fill=X, pady=5)
- password.insert(END, "password")
-
- spinbox = ttk.Spinbox(master=input_group, from_=0, to=100)
- spinbox.pack(fill=X)
- spinbox.set(45)
-
- cbo = ttk.Combobox(
- master=input_group,
- text=style.theme.name,
- values=theme_names,
- exportselection=False,
- )
- cbo.pack(fill=X, pady=5)
- cbo.current(theme_names.index(style.theme.name))
-
- de = ttk.DateEntry(input_group)
- de.pack(fill=X)
-
- return root
-
-
-if __name__ == "__main__":
-
- app = ttk.Window("ttkbootstrap widget demo")
-
- bagel = setup_demo(app)
- bagel.pack(fill=BOTH, expand=YES)
-
- app.mainloop()
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/__init__.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/__init__.cpython-39.pyc
deleted file mode 100644
index b47dd14..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/__init__.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/__main__.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/__main__.cpython-39.pyc
deleted file mode 100644
index c7ac73a..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/__main__.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/colorutils.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/colorutils.cpython-39.pyc
deleted file mode 100644
index 373376a..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/colorutils.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/constants.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/constants.cpython-39.pyc
deleted file mode 100644
index 1cb2af1..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/constants.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/icons.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/icons.cpython-39.pyc
deleted file mode 100644
index d1b7487..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/icons.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/publisher.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/publisher.cpython-39.pyc
deleted file mode 100644
index 39b22e1..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/publisher.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/scrolled.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/scrolled.cpython-39.pyc
deleted file mode 100644
index 25e976a..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/scrolled.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/style.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/style.cpython-39.pyc
deleted file mode 100644
index 79d13bf..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/style.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/tableview.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/tableview.cpython-39.pyc
deleted file mode 100644
index 397dcc9..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/tableview.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/toast.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/toast.cpython-39.pyc
deleted file mode 100644
index 2f231fd..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/toast.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/tooltip.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/tooltip.cpython-39.pyc
deleted file mode 100644
index ea5f64f..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/tooltip.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/utility.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/utility.cpython-39.pyc
deleted file mode 100644
index 95bb702..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/utility.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/validation.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/validation.cpython-39.pyc
deleted file mode 100644
index e620a33..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/validation.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/widgets.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/widgets.cpython-39.pyc
deleted file mode 100644
index 17c2b15..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/widgets.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/window.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/window.cpython-39.pyc
deleted file mode 100644
index 5364f46..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/__pycache__/window.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/colorutils.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/colorutils.py
deleted file mode 100644
index b878b0b..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/colorutils.py
+++ /dev/null
@@ -1,204 +0,0 @@
-from PIL import ImageColor
-from colorsys import rgb_to_hls
-
-RGB = 'rgb'
-HSL = 'hsl'
-HEX = 'hex'
-NAME = 'name'
-
-HUE = 360
-SAT = 100
-LUM = 100
-
-
-def color_to_rgb(color, model=HEX):
- """Convert color value to rgb.
-
- The color and model parameters represent the color to be converted.
- The value is expected to be a string for "name" and "hex" models and
- a Tuple or List for "rgb" and "hsl" models.
-
- Parameters:
-
- color (Any):
- The color values for the model being converted.
-
- model (str):
- The color model being converted.
-
- Returns:
-
- Tuple[int, int, int]:
- The rgb color values.
- """
- color_ = conform_color_model(color, model)
- try:
- return ImageColor.getrgb(color_)
- except:
- print('this')
-
-def color_to_hex(color, model=RGB):
- """Convert color value to hex.
-
- The color and model parameters represent the color to be converted.
- The value is expected to be a string for "name" and "hex" models and
- a Tuple or List for "rgb" and "hsl" models.
-
- Parameters:
-
- color (Any):
- The color values for the model being converted.
-
- model (str):
- The color model being converted.
-
- Returns:
-
- str:
- The hexadecimal color value.
- """
- r, g, b = color_to_rgb(color, model)
- return f'#{r:02x}{g:02x}{b:02x}'
-
-def color_to_hsl(color, model=HEX):
- """Convert color value to hsl.
-
- The color and model parameters represent the color to be converted.
- The value is expected to be a string for "name" and "hex" models and
- a Tuple or List for "rgb" and "hsl" models.
-
- Parameters:
-
- color (Any):
- The color values for the model being converted.
-
- model (str):
- The color model being converted.
-
- Returns:
-
- Tuple[int, int, int]:
- The hsl color values.
- """
- r, g, b = color_to_rgb(color, model)
- hls = rgb_to_hls(r/255, g/255, b/255)
- h = int(hls[0]*HUE)
- l = int(hls[1]*LUM)
- s = int(hls[2]*SAT)
- return h, s, l
-
-def update_hsl_value(color, hue=None, sat=None, lum=None, inmodel=HSL, outmodel=HSL):
- """Change hue, saturation, or lumenosity of the color based on the
- hue, sat, lum parameters provided.
-
- Parameters:
-
- color (Any):
- The color
-
- hue (int):
- A number between 0 and 360.
-
- sat (int):
- A number between 0 and 100.
-
- lum (int):
- A number between 0 and 100.
-
- inmodel (str):
- The color model used by the color to be changed. One of
- hsl, rgb, hex, name.
-
- outmodel (str):
- The color value model to be returned when the color is
- changed. One of hsl, rgb, hex.
-
- Returns:
-
- Union[Tuple[int, int, int], str]:
- The color value based on the selected color model.
- """
- h, s, l = color_to_hsl(color, inmodel)
- if hue is not None:
- h = hue
- if sat is not None:
- s = sat
- if lum is not None:
- l = lum
- if outmodel == RGB:
- return color_to_rgb([h, s, l], HSL)
- elif outmodel == HEX:
- return color_to_hex([h, s, l], HSL)
- else:
- return h, s, l
-
-
-"""
-https://stackoverflow.com/questions/1855884/determine-font-color-based-on-background-color
-
-"""
-
-def contrast_color(color, model=RGB, darkcolor='#000', lightcolor='#fff'):
- """Returns the best matching contrasting light or dark color for
- the given color.
-
- Parameters:
-
- color (Any):
- The color value to evaluate.
-
- model (str):
- The model of the color value to be evaluated. 'rgb' by
- default.
-
- darkcolor (Any):
- The color value to be returned when the constrasting color
- should be dark.
-
- lightcolor (Any):
- The color value to be returned when the constrasting color
- should be light.
-
- Returns:
-
- str:
- The matching color value.
- """
- if model != RGB:
- r, g, b = color_to_rgb(color, model)
- else:
- r, g, b = color
-
- luminance = ((0.299 * r) + (0.587 * g) + (0.114 * b))/255
- if luminance > 0.5:
- return darkcolor
- else:
- return lightcolor
-
-
-def conform_color_model(color, model):
- """Conform the color values to a string that can be interpreted
- by the `PIL.ImageColor.getrgb method`.
-
- Parameters:
-
- color (Union[Tuple[int, int, int], str]):
- The color value to conform.
-
- model (str):
- One of 'HSL', 'RGB', or 'HEX'
-
- Returns:
-
- str:
- A color value string that can be used as a parameter in the
- PIL.ImageColor.getrgb method.
- """
- if model == HSL:
- h, s, l = color
- return f'hsl({h},{s}%,{l}%)'
- elif model == RGB:
- r, g, b = color
- return f'rgb({r},{g},{b})'
- else:
- return color
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/constants.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/constants.py
deleted file mode 100644
index d2cd63a..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/constants.py
+++ /dev/null
@@ -1,43 +0,0 @@
-from tkinter.constants import *
-
-DEFAULT = 'default'
-DEFAULT_THEME = 'litera'
-TTK_CLAM = 'clam'
-TTK_ALT = 'alt'
-TTK_DEFAULT = 'default'
-
-# meter constants
-FULL = 'full'
-SEMI = 'semi'
-
-# progressbar constant
-DETERMINATE = 'determinate'
-INDETERMINATE = 'indeterminate'
-
-# bootstyle colors
-PRIMARY = 'primary'
-SECONDARY = 'secondary'
-SUCCESS = 'success'
-DANGER = 'danger'
-WARNING = 'warning'
-INFO = 'info'
-LIGHT = 'light'
-DARK = 'dark'
-
-# bootstyle types
-OUTLINE = 'outline'
-LINK = 'link'
-TOGGLE = 'toggle'
-INVERSE = 'inverse'
-STRIPED = 'striped'
-TOOLBUTTON = 'toolbutton'
-ROUND = 'round'
-SQUARE = 'square'
-
-# treeview constants
-TREE = 'tree'
-HEADINGS = 'headings'
-TREEHEADINGS = 'tree headings'
-
-# state constants
-READONLY = 'readonly'
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__init__.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__init__.py
deleted file mode 100644
index 1edf819..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from ttkbootstrap.dialogs.dialogs import *
\ No newline at end of file
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/__init__.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/__init__.cpython-39.pyc
deleted file mode 100644
index bb97337..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/__init__.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/colorchooser.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/colorchooser.cpython-39.pyc
deleted file mode 100644
index 6625d38..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/colorchooser.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/colordropper.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/colordropper.cpython-39.pyc
deleted file mode 100644
index 465eea6..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/colordropper.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/dialogs.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/dialogs.cpython-39.pyc
deleted file mode 100644
index 0b66204..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/__pycache__/dialogs.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/colorchooser.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/colorchooser.py
deleted file mode 100644
index 01e81e1..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/colorchooser.py
+++ /dev/null
@@ -1,570 +0,0 @@
-import ttkbootstrap as ttk
-from ttkbootstrap.validation import add_range_validation, add_validation, validator
-from ttkbootstrap.constants import *
-from tkinter import Frame as tkFrame
-from tkinter import Label as tkLabel
-from ttkbootstrap import utility
-from collections import namedtuple
-from ttkbootstrap import colorutils
-from ttkbootstrap.colorutils import RGB, HSL, HEX, HUE, SAT, LUM
-from PIL import ImageColor
-from ttkbootstrap.dialogs.colordropper import ColorDropperDialog
-from ttkbootstrap.tooltip import ToolTip
-from ttkbootstrap.localization import MessageCatalog
-
-STD_SHADES = [0.9, 0.8, 0.7, 0.4, 0.3]
-STD_COLORS = [
- '#FF0000', '#FFC000', '#FFFF00', '#00B050',
- '#0070C0', '#7030A0', '#FFFFFF', '#000000'
-]
-
-ColorValues = namedtuple('ColorValues', 'h s l r g b hex')
-ColorChoice = namedtuple('ColorChoice', 'rgb hsl hex')
-
-PEN = '✛'
-
-
-@validator
-def validate_color(event):
- try:
- ImageColor.getrgb(event.postchangetext)
- return True
- except:
- return False
-
-
-class ColorChooser(ttk.Frame):
- """A class which creates a color chooser widget
-
- ![](../../assets/dialogs/querybox-get-color.png)
- """
-
- def __init__(self, master, initialcolor=None, padding=None):
- super().__init__(master, padding=padding)
- self.tframe = ttk.Frame(self, padding=5)
- self.tframe.pack(fill=X)
- self.bframe = ttk.Frame(self, padding=(5, 0, 5, 5))
- self.bframe.pack(fill=X)
-
- self.notebook = ttk.Notebook(self.tframe)
- self.notebook.pack(fill=BOTH)
-
- self.style = ttk.Style.get_instance()
- self.colors = self.style.colors
- self.initialcolor = initialcolor or self.colors.bg
-
- # color variables
- r, g, b = ImageColor.getrgb(self.initialcolor)
- h, s, l = colorutils.color_to_hsl((r, g, b), RGB)
- hx = colorutils.color_to_hex((r, g, b), RGB)
-
- self.hue = ttk.IntVar(value=h)
- self.sat = ttk.IntVar(value=s)
- self.lum = ttk.IntVar(value=l)
- self.red = ttk.IntVar(value=r)
- self.grn = ttk.IntVar(value=g)
- self.blu = ttk.IntVar(value=b)
- self.hex = ttk.StringVar(value=hx)
-
- # widget sizes (adjusted by widget scaling)
- self.spectrum_height = utility.scale_size(self, 240)
- self.spectrum_width = utility.scale_size(self, 530) # looks better on Mac OS
- #self.spectrum_width = utility.scale_size(self, 480)
- self.spectrum_point = utility.scale_size(self, 12)
-
- # build widgets
- spectrum_frame = ttk.Frame(self.notebook)
- self.color_spectrum = self.create_spectrum(spectrum_frame)
- self.color_spectrum.pack(fill=X, side=TOP)
- self.luminance_scale = self.create_luminance_scale(self.tframe)
- self.luminance_scale.pack(fill=X)
- self.notebook.add(spectrum_frame, text=MessageCatalog.translate('Advanced'))
-
- themed_colors = [self.colors.get(c) for c in self.style.colors]
- self.themed_swatches = self.create_swatches(
- self.notebook, themed_colors)
- self.standard_swatches = self.create_swatches(
- self.notebook, STD_COLORS)
- self.notebook.add(self.themed_swatches, text=MessageCatalog.translate('Themed'))
- self.notebook.add(self.standard_swatches, text=MessageCatalog.translate('Standard'))
- preview_frame = self.create_preview(self.bframe)
- preview_frame.pack(side=LEFT, fill=BOTH, expand=YES, padx=(0, 5))
- self.color_entries = self.create_value_inputs(self.bframe)
- self.color_entries.pack(side=RIGHT)
-
- self.create_spectrum_indicator()
- self.create_luminance_indicator()
-
- def create_spectrum(self, master):
- """Create the color spectrum canvas"""
- # canvas and point dimensions
- width = self.spectrum_width
- height = self.spectrum_height
- xf = yf = self.spectrum_point
-
- # create canvas widget and binding
- canvas = ttk.Canvas(master, width=width, height=height, cursor='tcross')
- canvas.bind("", self.on_spectrum_interaction, add="+")
- canvas.bind("", self.on_spectrum_interaction, add="+")
-
- # add color points
- for x, colorx in enumerate(range(0, width, xf)):
- for y, colory in enumerate(range(0, height, yf)):
- values = self.color_from_coords(colorx, colory)
- fill = values.hex
- bbox = [x*xf, y*yf, (x*xf)+xf, (y*yf)+yf]
- canvas.create_rectangle(*bbox, fill=fill, width=0)
- return canvas
-
- def create_spectrum_indicator(self):
- """Create a square indicator that displays in the position of
- the selected color"""
- s = utility.scale_size(self, 10)
- width = utility.scale_size(self, 2)
- values = self.get_variables()
- x1, y1 = self.coords_from_color(values.hex)
- colorutils.contrast_color(values.hex, 'hex')
- tag = ['spectrum-indicator']
- self.color_spectrum.create_rectangle(
- x1, y1, x1+s, y1+s, width=width, tags=[tag])
- self.color_spectrum.tag_lower('spectrum-indicator')
-
- # widget builder methods
- def create_swatches(self, master, colors):
- """Create a grid of color swatches"""
- boxpadx = 2
- boxpady = 0
- padxtotal = (boxpadx*15)
- boxwidth = int((self.spectrum_width-padxtotal)) / len(STD_COLORS)
- boxheight = int((self.spectrum_height-boxpady) / (len(STD_SHADES)+1))
- container = ttk.Frame(master)
-
- # create color combinations
- color_rows = [colors]
- lastcol = len(colors)-1
- for l in STD_SHADES:
- lum = int(l*LUM)
- row = []
- for color in colors:
- color = colorutils.update_hsl_value(
- color=color,
- lum=lum,
- inmodel='hex',
- outmodel='hex'
- )
- row.append(color)
- color_rows.append(row)
-
- # themed colors - regular colors
- for row in color_rows:
- rowframe = ttk.Frame(container)
- for j, color in enumerate(row):
- swatch = tkFrame(
- master=rowframe,
- bg=color,
- width=boxwidth,
- height=boxheight,
- autostyle=False
- )
- swatch.bind('', self.on_press_swatch)
- if j == 0:
- swatch.pack(side=LEFT, padx=(0, boxpadx))
- elif j == lastcol:
- swatch.pack(side=LEFT, padx=(boxpadx, 0))
- else:
- swatch.pack(side=LEFT, padx=boxpadx)
- rowframe.pack(fill=X, expand=YES)
-
- return container
-
- def create_preview(self, master):
- """Create the preview frame for original and new colors"""
- nbstyle = self.notebook.cget('style')
- # set the border color to match the notebook border color
- bordercolor = self.style.lookup(nbstyle, 'bordercolor')
- container = ttk.Frame(master)
-
- # the frame and label for the original color (current)
- old = tkFrame(
- master=container,
- relief=FLAT,
- bd=2,
- highlightthickness=1,
- highlightbackground=bordercolor,
- bg=self.initialcolor,
- autostyle=False
- )
- old.pack(side=LEFT, fill=BOTH, expand=YES, padx=(0, 2))
- contrastfg = colorutils.contrast_color(
- color=self.initialcolor,
- model='hex',
- )
- tkLabel(
- master=old,
- text=MessageCatalog.translate('Current'),
- background=self.initialcolor,
- foreground=contrastfg,
- autostyle=False,
- width=7
- ).pack(anchor=NW)
-
- # the frame and label for the new color
- self.preview = tkFrame(
- master=container,
- relief=FLAT,
- bd=2,
- highlightthickness=1,
- highlightbackground=bordercolor,
- bg=self.initialcolor,
- autostyle=False
- )
- self.preview.pack(side=LEFT, fill=BOTH, expand=YES, padx=(2, 0))
- self.preview_lbl = tkLabel(
- master=self.preview,
- text=MessageCatalog.translate('New'),
- background=self.initialcolor,
- foreground=contrastfg,
- autostyle=False,
- width=7
- )
- self.preview_lbl.pack(anchor=NW)
-
- return container
-
- def create_value_inputs(self, master):
- """Create color value input widgets"""
- container = ttk.Frame(master)
- for x in range(4):
- container.columnconfigure(x, weight=1)
-
- # value labels
- lbl_cnf = {'master': container, 'anchor': E}
- ttk.Label(**lbl_cnf, text=f'''{MessageCatalog.translate('Hue')}:''').grid(row=0, column=0, sticky=E)
- ttk.Label(**lbl_cnf, text=f'''{MessageCatalog.translate('Sat')}:''').grid(row=1, column=0, sticky=E)
- ttk.Label(**lbl_cnf, text=f'''{MessageCatalog.translate('Lum')}:''').grid(row=2, column=0, sticky=E)
- ttk.Label(**lbl_cnf, text=f'''{MessageCatalog.translate('Hex')}:''').grid(row=3, column=0, sticky=E)
- ttk.Label(**lbl_cnf, text=f'''{MessageCatalog.translate('Red')}:''').grid(row=0, column=2, sticky=E)
- ttk.Label(**lbl_cnf, text=f'''{MessageCatalog.translate('Green')}:''').grid(row=1, column=2, sticky=E)
- ttk.Label(**lbl_cnf, text=f'''{MessageCatalog.translate('Blue')}:''').grid(row=2, column=2, sticky=E)
-
- # value spinners and entry widgets
- rgb_cnf = {'master': container, 'from_': 0, 'to': 255, 'width': 3}
- sl_cnf = {'master': container, 'from_': 0, 'to': 100, 'width': 3}
- hue_cnf = {'master': container, 'from_': 0, 'to': 360, 'width': 3}
- sb_hue = ttk.Spinbox(**hue_cnf, textvariable=self.hue)
- sb_hue.grid(row=0, column=1, padx=4, pady=2, sticky=EW)
- sb_sat = ttk.Spinbox(**sl_cnf, textvariable=self.sat)
- sb_sat.grid(row=1, column=1, padx=4, pady=2, sticky=EW)
- sb_lum = ttk.Spinbox(**sl_cnf, textvariable=self.lum)
- sb_lum.grid(row=2, column=1, padx=4, pady=2, sticky=EW)
- sb_red = ttk.Spinbox(**rgb_cnf, textvariable=self.red)
- sb_red.grid(row=0, column=3, padx=4, pady=2, sticky=EW)
- sb_grn = ttk.Spinbox(**rgb_cnf, textvariable=self.grn)
- sb_grn.grid(row=1, column=3, padx=4, pady=2, sticky=EW)
- sb_blu = ttk.Spinbox(**rgb_cnf, textvariable=self.blu)
- sb_blu.grid(row=2, column=3, padx=4, pady=2, sticky=EW)
- ent_hex = ttk.Entry(container, textvariable=self.hex)
- ent_hex.grid(row=3, column=1, padx=4, columnspan=3, pady=2, sticky=EW)
-
- # add input validation
- add_validation(ent_hex, validate_color)
- add_range_validation(sb_hue, 0, 360)
- for sb in [sb_sat, sb_lum]:
- add_range_validation(sb, 0, 100)
- for sb in [sb_red, sb_grn, sb_blu]:
- add_range_validation(sb, 0, 255)
-
- # event binding for updating colors on value change
- for sb in [sb_hue, sb_sat, sb_lum]:
- for sequence in ['<>', '<>', '', '']:
- sb.bind(
- sequence=sequence,
- func=lambda _, w=sb: self.on_entry_value_change(
- w, HSL),
- add="+"
- )
- for sb in [sb_red, sb_grn, sb_blu]:
- for sequence in ['<>', '<>', '', '']:
- sb.bind(
- sequence=sequence,
- func=lambda _, w=sb: self.on_entry_value_change(
- w, RGB),
- add="+"
- )
- for sequence in ['', '']:
- ent_hex.bind(
- sequence=sequence,
- func=lambda _, w=ent_hex: self.on_entry_value_change(
- w, HEX),
- add="+"
- )
-
- return container
-
- def create_luminance_scale(self, master):
- """Create the color luminance canvas"""
- # widget dimensions
- height = xf = self.spectrum_point
- width = self.spectrum_width
-
- values = self.get_variables()
- canvas = ttk.Canvas(master, height=height, width=width)
-
- # add color points to scale
- for x, l in enumerate(range(0, width, xf)):
- lum = l/width*LUM
- fill = colorutils.update_hsl_value(
- color=values.hex,
- lum=lum,
- inmodel='hex',
- outmodel='hex'
- )
- bbox = [x*xf, 0, (x*xf)+xf, height]
- tag = f'color{x}'
- canvas.create_rectangle(*bbox, fill=fill, width=0, tags=[tag])
- canvas.bind("", self.on_luminance_interaction, add="+")
- canvas.bind("", self.on_luminance_interaction, add="+")
- return canvas
-
- def create_luminance_indicator(self):
- """Create an indicator that displays in the position of the
- luminance value"""
- lum = 50
- x1 = int(lum / LUM * self.spectrum_width) - \
- ((self.spectrum_point - 2)//2)
- y1 = 0
- x2 = x1 + self.spectrum_point
- y2 = self.spectrum_point - 3
- tag = 'luminance-indicator'
- bbox = [x1, y1, x2, y2]
- self.luminance_scale.create_rectangle(
- *bbox, fill='white', outline='black', tags=[tag])
- self.luminance_scale.tag_lower(tag)
-
- def coords_from_color(self, hexcolor):
- """Get the coordinates on the color spectrum from the color
- value"""
- h, s, _ = colorutils.color_to_hsl(hexcolor)
- x = (h / HUE) * self.spectrum_width
- y = (1-(s / SAT)) * self.spectrum_height
- return x, y
-
- def color_from_coords(self, x, y):
- """Get the color value from the mouse position in the color
- spectrum"""
- HEIGHT = self.spectrum_height
- WIDTH = self.spectrum_width
- h = int(min(HUE, max(0, (HUE/WIDTH) * x)))
- s = int(min(SAT, max(0, SAT - ((SAT/HEIGHT) * y))))
- l = 50
- hx = colorutils.color_to_hex([h, s, l], 'hsl')
- r, g, b = colorutils.color_to_rgb(hx)
- return ColorValues(h, s, l, r, g, b, hx)
-
- def set_variables(self, h, s, l, r, g, b, hx):
- """Update the color value variables"""
- self.hue.set(h)
- self.sat.set(s)
- self.lum.set(l)
- self.red.set(r)
- self.grn.set(g)
- self.blu.set(b)
- self.hex.set(hx)
-
- def get_variables(self):
- """Get the values of all color models and return a
- tuple of color values"""
- h = self.hue.get()
- s = self.sat.get()
- l = self.lum.get()
- r = self.red.get()
- g = self.grn.get()
- b = self.blu.get()
- hx = self.hex.get()
- return ColorValues(h, s, l, r, g, b, hx)
-
- def update_preview(self):
- """Update the color in the preview frame"""
- hx = self.hex.get()
- fg = colorutils.contrast_color(
- color=hx,
- model='hex',
- )
- self.preview.configure(bg=hx)
- self.preview_lbl.configure(bg=hx, fg=fg)
-
- def update_luminance_scale(self):
- """Update the luminance scale with the change in hue and saturation"""
- values = self.get_variables()
- width = self.spectrum_width
- xf = self.spectrum_point
- for x, l in enumerate(range(0, width, xf)):
- lum = l/width*LUM
- fill = colorutils.update_hsl_value(
- color=values.hex,
- lum=lum,
- inmodel='hex',
- outmodel='hex'
- )
- tag = f'color{x}'
- self.luminance_scale.itemconfig(tag, fill=fill)
-
- def update_luminance_indicator(self):
- """Update the position of the luminance indicator"""
- lum = self.lum.get()
- x = int(lum / LUM * self.spectrum_width) - \
- ((self.spectrum_point - 2)//2)
- self.luminance_scale.moveto('luminance-indicator', x, 0)
- self.luminance_scale.tag_raise('luminance-indicator')
-
- def update_spectrum_indicator(self):
- """Move the spectrum indicator to a new location"""
- values = self.get_variables()
- x, y = self.coords_from_color(values.hex)
- # move to the new color location
- self.color_spectrum.moveto('spectrum-indicator', x, y)
- self.color_spectrum.tag_raise('spectrum-indicator')
- # adjust the outline color based on contrast of background
- color = colorutils.contrast_color(values.hex, 'hex')
- self.color_spectrum.itemconfig('spectrum-indicator', outline=color)
-
- # color events
- def sync_color_values(self, model):
- """Callback for when a color value changes. A change in one
- value will automatically update the other values so that all
- color models remain in sync."""
- values = self.get_variables()
- if model == HEX:
- hx = values.hex
- r, g, b = colorutils.color_to_rgb(hx)
- h, s, l = colorutils.color_to_hsl(hx)
- elif model == RGB:
- r, g, b = values.r, values.g, values.b
- h, s, l = colorutils.color_to_hsl([r, g, b], 'rgb')
- hx = colorutils.color_to_hex([r, g, b])
- elif model == HSL:
- h, s, l = values.h, values.s, values.l
- r, g, b = colorutils.color_to_rgb([h, s, l], 'hsl')
- hx = colorutils.color_to_hex([h, s, l], 'hsl')
- self.set_variables(h, s, l, r, g, b, hx)
- self.update_preview()
- self.update_luminance_indicator()
-
- def on_entry_value_change(self, widget: ttk.Spinbox, model):
- """Update the widget colors when the color value input is
- changed"""
- is_valid = widget.validate()
- if is_valid:
- self.sync_color_values(model)
- self.update_luminance_scale()
- self.update_spectrum_indicator()
-
- def on_press_swatch(self, event):
- """Update the widget colors when a color swatch is clicked."""
- button: tkFrame = self.nametowidget(event.widget)
- color = button.cget('background')
- self.hex.set(color)
- self.sync_color_values(HEX)
- self.update_luminance_scale()
- self.update_spectrum_indicator()
-
- def on_spectrum_interaction(self, event):
- """Update the widget colors when the color spectrum canvas is
- pressed"""
- values = self.color_from_coords(event.x, event.y)
- self.hue.set(values.h)
- self.sat.set(values.s)
- self.lum.set(values.l)
- self.sync_color_values(HSL)
- self.update_luminance_scale()
- self.update_spectrum_indicator()
-
- def on_luminance_interaction(self, event):
- """Update the widget colors when the color luminance scale is
- pressed"""
- l = max(0, min(LUM, int((event.x / self.spectrum_width) * LUM)))
- self.lum.set(l)
- self.sync_color_values(HSL)
-
-
-from ttkbootstrap.dialogs import Dialog
-
-class ColorChooserDialog(Dialog):
- """A class which displays a color chooser dialog. When a color
- option is selected and the "OK" button is pressed, the dialog will
- return a namedtuple that contains the color values for rgb, hsl, and
- hex. These values can be accessed by indexing the tuple or by using
- the named fields.
-
- ![](../../assets/dialogs/querybox-get-color.png)
-
- Examples:
-
- ```python
- >>> cd = ColorChooserDialog()
- >>> cd.show()
- >>> colors = cd.result
- >>> colors.hex
- '#5fb04f'
- >>> colors[2]
- '#5fb04f
- >>> colors.rgb
- (95, 176, 79)
- >>> colors[0]
- (95, 176, 79)
- ```
- """
-
- def __init__(self, parent=None, title="Color Chooser", initialcolor=None):
- title = MessageCatalog.translate(title)
- super().__init__(parent=parent, title=title)
- self.initialcolor = initialcolor
- self.dropper = ColorDropperDialog()
- self.dropper.result.trace_add('write', self.trace_dropper_color)
-
- def create_body(self, master):
- self.colorchooser = ColorChooser(master, self.initialcolor)
- self.colorchooser.pack(fill=BOTH, expand=YES)
-
- def create_buttonbox(self, master):
- frame = ttk.Frame(master, padding=(5, 5))
-
- # OK button
- ok = ttk.Button(frame, bootstyle=PRIMARY, width=6, text=MessageCatalog.translate('OK'))
- ok.bind("", lambda _: ok.invoke())
- ok.configure(command=lambda b=ok: self.on_button_press(b))
- ok.pack(padx=2, side=RIGHT)
-
- # Cancel button
- cancel = ttk.Button(frame, bootstyle=SECONDARY, width=6, text=MessageCatalog.translate('Cancel'))
- cancel.bind("", lambda _: cancel.invoke())
- cancel.configure(command=lambda b=cancel: self.on_button_press(b))
- cancel.pack(padx=2, side=RIGHT)
-
- # color dropper (not supported on Mac OS)
- if self._toplevel.winsys != 'aqua':
- dropper = ttk.Label(frame, text=PEN, font=('-size 16'))
- ToolTip(dropper, MessageCatalog.translate('color dropper')) # add tooltip
- dropper.pack(side=RIGHT, padx=2)
- dropper.bind("", self.on_show_colordropper)
-
- frame.pack(side=BOTTOM, fill=X, anchor=S)
-
- def on_show_colordropper(self, event):
- self.dropper.show()
-
- def trace_dropper_color(self, *_):
- values = self.dropper.result.get()
- self.colorchooser.hex.set(values[2])
- self.colorchooser.sync_color_values('hex')
-
- def on_button_press(self, button):
- if button.cget('text') == 'OK':
- values = self.colorchooser.get_variables()
- self._result = ColorChoice(
- rgb=(values.r, values.g, values.b),
- hsl=(values.h, values.s, values.l),
- hex=values.hex
- )
- self._toplevel.destroy()
- self._toplevel.destroy()
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/colordropper.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/colordropper.py
deleted file mode 100644
index 67e137f..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/colordropper.py
+++ /dev/null
@@ -1,170 +0,0 @@
-"""
- NOTE: https://stackoverflow.com/questions/25467288/pils-imagegrab-is-capturing-at-the-wrong-resolution
-
- !! This widget is not currently supported on Mac OS
-"""
-import tkinter as tk
-import ttkbootstrap as ttk
-from ttkbootstrap.constants import *
-from ttkbootstrap import colorutils, utility
-from PIL import ImageGrab, ImageTk, Image
-from collections import namedtuple
-
-ColorChoice = namedtuple('ColorChoice', 'rgb hsl hex')
-
-
-class ColorDropperDialog:
- """A widget that displays an indicator and a zoom window for
- selecting a color on the screen.
-
- Left-click the mouse button to select a color. The result is
- stored in the `result` property as a `ColorChoice` tuple which
- contains named fields for rgb, hsl, and hex color models.
-
- Zoom in and out on the zoom window by using the mouse wheel.
-
- This widget is implemented for **Windows** and **Linux** only.
-
- ![](../../assets/dialogs/color-dropper.png)
-
- !!! warning "high resolution displays"
- This widget may not function properly on high resolution
- displays if you are not using the application in high
- resolution mode. This is enabled automatically on Windows.
- """
-
- def __init__(self):
- self.toplevel: ttk.Toplevel = None
- self.result = ttk.Variable()
-
- def build_screenshot_canvas(self):
- """Build the screenshot canvas"""
- self.screenshot_canvas = ttk.Canvas(
- self.toplevel, cursor='tcross', autostyle=False)
- self.screenshot_data = ImageGrab.grab()
- self.screenshot_image = ImageTk.PhotoImage(self.screenshot_data)
- self.screenshot_canvas.create_image(
- 0, 0, image=self.screenshot_image, anchor=NW)
- self.screenshot_canvas.pack(fill=BOTH, expand=YES)
-
- def build_zoom_toplevel(self, master):
- """Build the toplevel widget that shows the zoomed version of
- the pixels underneath the mouse cursor."""
- height = utility.scale_size(self.toplevel, 100)
- width = utility.scale_size(self.toplevel, 100)
- text_xoffset = utility.scale_size(self.toplevel, 50)
- text_yoffset = utility.scale_size(self.toplevel, 50)
- toplevel = ttk.Toplevel(master)
- toplevel.transient(master)
- if self.toplevel.winsys == 'x11':
- toplevel.attributes('-type', 'tooltip')
- else:
- toplevel.overrideredirect(True)
- toplevel.geometry(f'{width}x{height}')
- toplevel.lift()
- self.zoom_canvas = ttk.Canvas(
- toplevel, borderwidth=1, height=self.zoom_height, width=self.zoom_width)
- self.zoom_canvas.create_image(0, 0, tags=['image'], anchor=NW)
- self.zoom_canvas.create_text(
- text_xoffset, text_yoffset, text="+", fill="white", tags=['indicator'])
- self.zoom_canvas.pack(fill=BOTH, expand=YES)
- self.zoom_toplevel = toplevel
-
- def on_mouse_wheel(self, event: tk.Event):
- """Zoom in and out on the image underneath the mouse
- TODO Cross platform testing needed
- """
- if self.toplevel.winsys.lower() == 'win32':
- delta = -int(event.delta / 120)
- elif self.toplevel.winsys.lower() == 'aqua':
- delta = -event.delta
- elif event.num == 4:
- delta = -1
- elif event.num == 5:
- delta = 1
- self.zoom_level += delta
- self.on_mouse_motion()
-
- def on_left_click(self, _):
- """Capture the color underneath the mouse cursor and destroy
- the toplevel widget"""
- # add logic here to capture the image color
- hx = self.get_hover_color()
- hsl = colorutils.color_to_hsl(hx)
- rgb = colorutils.color_to_rgb(hx)
- self.result.set(ColorChoice(rgb, hsl, hx))
- self.toplevel.destroy()
- self.zoom_toplevel.destroy()
- self.toplevel.grab_release()
- return self.result.get()
-
- def on_right_click(self, _):
- """Close the color dropper without saving any color information"""
- self.zoom_toplevel.destroy()
- self.toplevel.grab_release()
- self.toplevel.destroy()
-
- def on_mouse_motion(self, event=None):
- """Callback for mouse motion"""
- if event is None:
- x, y = self.toplevel.winfo_pointerxy()
- else:
- x = event.x
- y = event.y
- # move snip window
- self.zoom_toplevel.geometry(
- f'+{x+self.zoom_xoffset}+{y+self.zoom_yoffset}')
- # update the snip image
- bbox = (x-self.zoom_level, y-self.zoom_level,
- x+self.zoom_level+1, y+self.zoom_level+1)
- size = (self.zoom_width, self.zoom_height)
- self.zoom_data = self.screenshot_data.crop(
- bbox).resize(size, Image.BOX)
- self.zoom_image = ImageTk.PhotoImage(self.zoom_data)
- self.zoom_canvas.itemconfig('image', image=self.zoom_image)
- hover_color = self.get_hover_color()
- contrast_color = colorutils.contrast_color(hover_color, 'hex')
- self.zoom_canvas.itemconfig('indicator', fill=contrast_color)
-
- def get_hover_color(self):
- """Get the color that is hovered over by the mouse cursor."""
- x1, y1, x2, y2 = self.zoom_canvas.bbox('indicator')
- x = x1 + (x2-x1)//2
- y = y1 + (y2-y2)//2
- r, g, b = self.zoom_data.getpixel((x, y))
- hx = colorutils.color_to_hex((r, g, b))
- return hx
-
- def show(self):
- """Show the toplevel window"""
- self.toplevel = ttk.Toplevel(alpha=1)
- self.toplevel.wm_attributes('-fullscreen', True)
- self.build_screenshot_canvas()
-
- # event binding
- self.toplevel.bind("", self.on_mouse_motion, "+")
- self.toplevel.bind("", self.on_left_click, "+")
- self.toplevel.bind("", self.on_right_click, "+")
-
- if self.toplevel.winsys.lower() == 'x11':
- self.toplevel.bind("", self.on_mouse_wheel, "+")
- self.toplevel.bind("", self.on_mouse_wheel, "+")
- else:
- self.toplevel.bind("", self.on_mouse_wheel, "+")
-
- # initial snip setup
- self.zoom_level = 2
- self.zoom_toplevel: ttk.Toplevel = None
- self.zoom_data = None
- self.zoom_image = None
- self.zoom_height = utility.scale_size(self.toplevel, 100)
- self.zoom_width = utility.scale_size(self.toplevel, 100)
- self.zoom_xoffset = utility.scale_size(self.toplevel, 10)
- self.zoom_yoffset = utility.scale_size(self.toplevel, 10)
-
- self.build_zoom_toplevel(self.toplevel)
- self.toplevel.grab_set()
- self.toplevel.lift('.')
- self.zoom_toplevel.lift(self.toplevel)
-
- self.on_mouse_motion()
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/dialogs.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/dialogs.py
deleted file mode 100644
index 6f6999e..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/dialogs/dialogs.py
+++ /dev/null
@@ -1,1879 +0,0 @@
-"""
- This module contains various base dialog base classes that can be
- used to create custom dialogs for the end user.
-
- These classes serve as the basis for the pre-defined static helper
- methods in the `Messagebox`, and `Querybox` container classes.
-"""
-
-import calendar
-import textwrap
-import locale
-from datetime import datetime
-from tkinter import font
-import ttkbootstrap as ttk
-from ttkbootstrap import utility
-from ttkbootstrap.icons import Icon
-from ttkbootstrap.constants import *
-from tkinter import BaseWidget
-from ttkbootstrap.localization import MessageCatalog
-
-
-class Dialog(BaseWidget):
- """A simple dialog base class."""
-
- def __init__(self, parent=None, title="", alert=False):
- """
- Parameters:
-
- parent (Widget):
- Makes the window the logical parent of the message box.
- The messagebox is displayed on top of its parent window.
-
- title (str):
- The string displayed as the title of the message box.
- This option is ignored on Mac OS X, where platform
- guidelines forbid the use of a title on this kind of
- dialog.
-
- alert (bool):
- Ring the display's bell when the dialog is shown.
- """
- BaseWidget._setup(self, parent, {})
- self._winsys = self.master.tk.call("tk", "windowingsystem")
- self._parent = parent
- self._toplevel = None
- self._title = title or " "
- self._result = None
- self._alert = alert
- self._initial_focus = None
-
- def _locate(self):
- toplevel = self._toplevel
- if self._parent is None:
- master = toplevel.master
- else:
- master = self._parent
- x = master.winfo_rootx()
- y = master.winfo_rooty()
- toplevel.geometry(f"+{x}+{y}")
-
- def show(self, position=None):
- """Show the popup dialog
- Parameters:
-
- position: Tuple[int, int]
- The x and y coordinates used to position the dialog. By
- default the dialog will anchor at the NW corner of the
- parent window.
- """
- self._result = None
- self.build()
-
- if position is None:
- self._locate()
- else:
- try:
- x, y = position
- self._toplevel.geometry(f'+{x}+{y}')
- except:
- self._locate()
-
- self._toplevel.deiconify()
- if self._alert:
- self._toplevel.bell()
-
- if self._initial_focus:
- self._initial_focus.focus_force()
-
- self._toplevel.grab_set()
- self._toplevel.wait_window()
-
- def create_body(self, master):
- """Create the dialog body.
-
- This method should be overridden and is called by the `build`
- method. Set the `self._initial_focus` for the widget that
- should receive the initial focus.
-
- Parameters:
-
- master (Widget):
- The parent widget.
- """
- raise NotImplementedError
-
- def create_buttonbox(self, master):
- """Create the dialog button box.
-
- This method should be overridden and is called by the `build`
- method. Set the `self._initial_focus` for the button that
- should receive the intial focus.
-
- Parameters:
-
- master (Widget):
- The parent widget.
- """
- raise NotImplementedError
-
- def build(self):
- """Build the dialog from settings"""
-
- # setup toplevel based on widowing system
- if self._winsys == "win32":
- self._toplevel = ttk.Toplevel(
- transient=self.master,
- title=self._title,
- resizable=(0, 0),
- minsize=(250, 15),
- iconify=True,
- )
- else:
- self._toplevel = ttk.Toplevel(
- transient=self.master,
- title=self._title,
- resizable=(0, 0),
- windowtype="dialog",
- iconify=True,
- )
-
- self._toplevel.withdraw() # reset the iconify state
-
- # bind event to window close
- self._toplevel.bind("", lambda _: self._toplevel.destroy())
-
- # set position of popup from parent window
- # self._locate()
-
- # create widgets
- self.create_body(self._toplevel)
- self.create_buttonbox(self._toplevel)
-
- # update the window before showing
- self._toplevel.update_idletasks()
-
- @property
- def result(self):
- """Returns the result of the dialog."""
- return self._result
-
-
-class MessageDialog(Dialog):
- """A simple modal dialog class that can be used to build simple
- message dialogs.
-
- Displays a message and a set of buttons. Each of the buttons in the
- message window is identified by a unique symbolic name. After the
- message window is popped up, the message box awaits for the user to
- select one of the buttons. Then it returns the symbolic name of the
- selected button. Use a `Toplevel` widget for more advanced modal
- dialog designs.
- """
-
- def __init__(
- self,
- message,
- title=" ",
- buttons=None,
- command=None,
- width=50,
- parent=None,
- alert=False,
- default=None,
- padding=(20, 20),
- icon=None,
- **kwargs,
- ):
- """
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the message box.
- This option is ignored on Mac OS X, where platform
- guidelines forbid the use of a title on this kind of
- dialog.
-
- buttons (List[str]):
- A list of buttons to appear at the bottom of the popup
- messagebox. The buttons can be a list of strings which
- will define the symbolic name and the button text.
- `['OK', 'Cancel']`. Alternatively, you can assign a
- bootstyle to each button by using the colon to separate the
- button text and the bootstyle. If no colon is found, then
- the style is set to 'primary' by default.
- `['OK:success','Cancel:danger']`.
-
- command (Tuple[Callable, str]):
- The function to invoke when the user closes the dialog.
- The actual command is a tuple that consists of the
- function to call and the symbolic name of the button that
- closes the dialog.
-
- width (int):
- The maximum number of characters per line in the message.
- If the text stretches beyond the limit, the line will break
- at the word.
-
- parent (Widget):
- Makes the window the logical parent of the message box.
- The messagebox is displayed on top of its parent window.
-
- alert (bool):
- Ring the display's bell when the dialog is shown.
-
- default (str):
- The symbolic name of the default button. The default
- button is invoked when the the key is pressed.
- If no default is provided, the right-most button in the
- button list will be set as the default.,
-
- padding (Union[int, Tuple[int]]):
- The amount of space between the border and the widget
- contents.
-
- icon (str):
- An image path, path-like object or image data to be
- displayed to the left of the text.
-
- **kwargs (Dict):
- Other optional keyword arguments.
-
- Example:
-
- ```python
- root = tk.Tk()
-
- md = MessageDialog("Displays a message with buttons.")
- md.show()
- ```
- """
- super().__init__(parent, title, alert)
- self._message = message
- self._command = command
- self._width = width
- self._alert = alert
- self._default = (default,)
- self._padding = padding
- self._icon = icon
- self._localize = kwargs.get("localize")
-
- if buttons is None:
- self._buttons = [
- f"{MessageCatalog.translate('Cancel')}:secondary",
- f"{MessageCatalog.translate('OK')}:primary",
- ]
- else:
- self._buttons = buttons
-
- def create_body(self, master):
- """Overrides the parent method; adds the message section."""
- container = ttk.Frame(master, padding=self._padding)
- if self._icon:
- try:
- # assume this is image data
- self._img = ttk.PhotoImage(data=self._icon)
- icon_lbl = ttk.Label(container, image=self._img)
- icon_lbl.pack(side=LEFT, padx=5)
- except:
- try:
- # assume this is a file path
- self._img = ttk.PhotoImage(file=self._icon)
- icon_lbl = ttk.Label(container, image=self._img)
- icon_lbl.pack(side=LEFT, padx=5)
- except:
- # icon is neither data nor a valid file path
- print("MessageDialog icon is invalid")
-
- if self._message:
- for msg in self._message.split("\n"):
- message = "\n".join(textwrap.wrap(msg, width=self._width))
- message_label = ttk.Label(container, text=message)
- message_label.pack(pady=(0, 3), fill=X, anchor=N)
- container.pack(fill=X, expand=True)
-
- def create_buttonbox(self, master):
- """Overrides the parent method; adds the message buttonbox"""
- frame = ttk.Frame(master, padding=(5, 5))
-
- button_list = []
-
- for i, button in enumerate(self._buttons[::-1]):
- cnf = button.split(":")
- if len(cnf) == 2:
- text, bootstyle = cnf
- else:
- text = cnf[0]
- bootstyle = "secondary"
-
- if self._localize == True:
- text = MessageCatalog.translate(text)
-
- btn = ttk.Button(frame, bootstyle=bootstyle, text=text)
- btn.configure(command=lambda b=btn: self.on_button_press(b))
- btn.pack(padx=2, side=RIGHT)
- btn.lower() # set focus traversal left-to-right
- button_list.append(btn)
-
- if self._default is not None and text == self._default:
- self._initial_focus = btn
- elif self._default is None and i == 0:
- self._initial_focus = btn
-
- # bind default button to return key press and set focus
- self._toplevel.bind("", lambda _, b=btn: b.invoke())
- self._toplevel.bind("", lambda _, b=btn: b.invoke())
-
- ttk.Separator(self._toplevel).pack(fill=X)
- frame.pack(side=BOTTOM, fill=X, anchor=S)
-
- if not self._initial_focus:
- self._initial_focus = button_list[0]
-
- def on_button_press(self, button):
- """Save result, destroy the toplevel, and execute command."""
- self._result = button["text"]
- command = self._command
- if command is not None:
- command()
- self._toplevel.destroy()
-
- def show(self, position=None):
- """Create and display the popup messagebox."""
- super().show(position)
-
-
-class QueryDialog(Dialog):
- """A simple modal dialog class that can be used to build simple
- data input dialogs. Displays a prompt, and input box, and a set of
- buttons. Additional data manipulation can be performed on the
- user input post-hoc by overriding the `apply` method.
-
- Use a `Toplevel` widget for more advanced modal dialog designs.
- """
-
- def __init__(
- self,
- prompt,
- title=" ",
- initialvalue="",
- minvalue=None,
- maxvalue=None,
- width=65,
- datatype=str,
- padding=(20, 20),
- parent=None,
- ):
- """
- Parameters:
-
- prompt (str):
- A message to display in the message box above the entry
- widget.
-
- title (str):
- The string displayed as the title of the message box.
- This option is ignored on Mac OS X, where platform
- guidelines forbid the use of a title on this kind of
- dialog.
-
- initialvalue (Any):
- The initial value in the entry widget.
-
- minvalue (Any):
- The minimum allowed value. Only valid for int and float
- data types.
-
- maxvalue (Any):
- The maximum allowed value. Only valid for int and float
- data types.
-
- width (int):
- The maximum number of characters per line in the
- message. If the text stretches beyond the limit, the
- line will break at the word.
-
- parent (Widget):
- Makes the window the logical parent of the message box.
- The messagebox is displayed on top of its parent
- window.
-
- padding (Union[int, Tuple[int]]):
- The amount of space between the border and the widget
- contents.
-
- datatype (Union[int, str, float]):
- The data type used to validate the entry value.
- """
- super().__init__(parent, title)
- self._prompt = prompt
- self._initialvalue = initialvalue
- self._minvalue = minvalue
- self._maxvalue = maxvalue
- self._width = width
- self._datatype = datatype
- self._padding = padding
- self._result = None
-
- def create_body(self, master):
- """Overrides the parent method; adds the message and input
- section."""
- frame = ttk.Frame(master, padding=self._padding)
- if self._prompt:
- for p in self._prompt.split("\n"):
- prompt = "\n".join(textwrap.wrap(p, width=self._width))
- prompt_label = ttk.Label(frame, text=prompt)
- prompt_label.pack(pady=(0, 5), fill=X, anchor=N)
-
- entry = ttk.Entry(master=frame)
- entry.insert(END, self._initialvalue)
- entry.pack(pady=(0, 5), fill=X)
- entry.bind("", self.on_submit)
- entry.bind("", self.on_submit)
- entry.bind("", self.on_cancel)
- frame.pack(fill=X, expand=True)
- self._initial_focus = entry
-
- def create_buttonbox(self, master):
- """Overrides the parent method; adds the message buttonbox"""
- frame = ttk.Frame(master, padding=(5, 10))
-
- submit = ttk.Button(
- master=frame,
- bootstyle="primary",
- text=MessageCatalog.translate("Submit"),
- command=self.on_submit,
- )
- submit.pack(padx=5, side=RIGHT)
- submit.lower() # set focus traversal left-to-right
-
- cancel = ttk.Button(
- master=frame,
- bootstyle="secondary",
- text=MessageCatalog.translate("Cancel"),
- command=self.on_cancel,
- )
- cancel.pack(padx=5, side=RIGHT)
- cancel.lower() # set focus traversal left-to-right
-
- ttk.Separator(self._toplevel).pack(fill=X)
- frame.pack(side=BOTTOM, fill=X, anchor=S)
-
- def on_submit(self, *_):
- """Save result, destroy the toplevel, and apply any post-hoc
- data manipulations."""
- self._result = self._initial_focus.get()
- valid_result = self.validate()
- if not valid_result:
- return # keep toplevel open for valid response
- self._toplevel.destroy()
- self.apply()
-
- def on_cancel(self, *_):
- """Close the toplevel and return empty."""
- self._toplevel.destroy()
- return
-
- def validate(self):
- """Validate the data
-
- This method is called automatically to validate the data before
- the dialog is destroyed. Can be subclassed and overridden.
- """
- # no default checks required for string data types
- if self._datatype not in [float, int, complex]:
- return True
-
- # convert result to appropriate data type
- try:
- self._result = self._datatype(self._result)
- except ValueError:
- msg = MessageCatalog.translate("Should be of data type")
- Messagebox.ok(
- message=f"{msg} `{self._datatype}`",
- title=MessageCatalog.translate("Invalid data type"),
- parent=self._toplevel
- )
- return False
-
- # max value range
- if self._maxvalue is not None:
- if self._result > self._maxvalue:
- msg = MessageCatalog.translate("Number cannot be greater than")
- Messagebox.ok(
- message=f"{msg} {self._maxvalue}",
- title=MessageCatalog.translate("Out of range"),
- parent=self._toplevel
- )
- return False
-
- # min value range
- if self._minvalue is not None:
- if self._result < self._minvalue:
- msg = MessageCatalog.translate("Number cannot be less than")
- Messagebox.ok(
- message=f"{msg} {self._minvalue}",
- title=MessageCatalog.translate("Out of range"),
- parent=self._toplevel
- )
- return False
-
- # valid result
- return True
-
- def apply(self):
- """Process the data.
-
- This method is called automatically to process the data after
- the dialog is destroyed. By default, it does nothing.
- """
- pass # override
-
-
-class DatePickerDialog:
- """A dialog that displays a calendar popup and returns the
- selected date as a datetime object.
-
- The current date is displayed by default unless the `startdate`
- parameter is provided.
-
- The month can be changed by clicking the chevrons to the left
- and right of the month-year title.
-
- Left-click the arrow to move the calendar by one month.
- Right-click the arrow to move the calendar by one year.
- Right-click the title to reset the calendar to the start date.
-
- The starting weekday can be changed with the `firstweekday`
- parameter for geographies that do not start the calendar on
- Sunday, which is the default.
-
- The widget grabs focus and all screen events until released.
- If you want to cancel a date selection, click the 'X' button
- at the top-right corner of the widget.
-
- The bootstyle api may be used to change the style of the widget.
- The available colors include -> primary, secondary, success,
- info, warning, danger, light, dark.
-
- ![](../../assets/dialogs/date-picker-dialog.png)
-
- """
-
- locale.setlocale(locale.LC_ALL, locale.setlocale(locale.LC_TIME, ""))
-
- def __init__(
- self,
- parent=None,
- title=" ",
- firstweekday=6,
- startdate=None,
- bootstyle=PRIMARY,
- ):
- """
- Parameters:
-
- parent (Widget):
- The parent widget; the popup will appear to the
- bottom-right of the parent widget. If no parent is
- provided, the widget is centered on the screen.
-
- title (str):
- The text that appears on the titlebar.
-
- firstweekday (int):
- Specifies the first day of the week. 0=Monday,
- 1=Tuesday, etc...
-
- startdate (datetime):
- The date to be in focus when the widget is
- displayed.
-
- bootstyle (str):
- The following colors can be used to change the color of
- the title and hover / pressed color -> primary,
- secondary, info, warning, success, danger, light, dark.
- """
- self.parent = parent
- self.root = ttk.Toplevel(
- title=title,
- transient=self.parent,
- resizable=(False, False),
- topmost=True,
- minsize=(226, 1),
- iconify=True,
- )
- self.firstweekday = firstweekday
- self.startdate = startdate or datetime.today().date()
- self.bootstyle = bootstyle or PRIMARY
-
- self.date_selected = self.startdate
- self.date = startdate or self.date_selected
- self.calendar = calendar.Calendar(firstweekday=firstweekday)
-
- self.titlevar = ttk.StringVar()
- self.datevar = ttk.IntVar()
-
- self._setup_calendar()
- self.root.grab_set()
- self.root.wait_window()
-
- def _setup_calendar(self):
- """Setup the calendar widget"""
- # create the widget containers
- self.frm_calendar = ttk.Frame(
- master=self.root, padding=0, borderwidth=0, relief=FLAT
- )
- self.frm_calendar.pack(fill=BOTH, expand=YES)
- self.frm_title = ttk.Frame(self.frm_calendar, padding=(3, 3))
- self.frm_title.pack(fill=X)
- self.frm_header = ttk.Frame(self.frm_calendar, bootstyle=SECONDARY)
- self.frm_header.pack(fill=X)
-
- # setup the toplevel widget
- self.root.withdraw() # reset the iconify state
- self.frm_calendar.update_idletasks() # actualize geometry
-
- # create visual components
- self._draw_titlebar()
- self._draw_calendar()
-
- # make toplevel visible
- self._set_window_position()
- self.root.deiconify()
-
- def _update_widget_bootstyle(self):
- self.frm_title.configure(bootstyle=self.bootstyle)
- self.title.configure(bootstyle=f"{self.bootstyle}-inverse")
- self.prev_period.configure(style=f"Chevron.{self.bootstyle}.TButton")
- self.next_period.configure(style=f"Chevron.{self.bootstyle}.TButton")
-
- def _draw_calendar(self):
- self._update_widget_bootstyle()
- self._set_title()
- self._current_month_days()
- self.frm_dates = ttk.Frame(self.frm_calendar)
- self.frm_dates.pack(fill=BOTH, expand=YES)
-
- for row, weekday_list in enumerate(self.monthdays):
- for col, day in enumerate(weekday_list):
- self.frm_dates.columnconfigure(col, weight=1)
- if day == 0:
- ttk.Label(
- master=self.frm_dates,
- text=self.monthdates[row][col].day,
- anchor=CENTER,
- padding=5,
- bootstyle=SECONDARY,
- ).grid(row=row, column=col, sticky=NSEW)
- else:
- if all(
- [
- day == self.date_selected.day,
- self.date.month == self.date_selected.month,
- self.date.year == self.date_selected.year,
- ]
- ):
- day_style = "secondary-toolbutton"
- else:
- day_style = f"{self.bootstyle}-calendar"
-
- def selected(x=row, y=col):
- self._on_date_selected(x, y)
-
- btn = ttk.Radiobutton(
- master=self.frm_dates,
- variable=self.datevar,
- value=day,
- text=day,
- bootstyle=day_style,
- padding=5,
- command=selected,
- )
- btn.grid(row=row, column=col, sticky=NSEW)
-
- def _draw_titlebar(self):
- """Draw the calendar title bar which includes the month title
- and the buttons that increment and decrement the selected
- month.
-
- In addition to the previous and next MONTH commands that are
- assigned to the button press, a "right-click" event is assigned
- to each button that causes the calendar to move to the previous
- and next YEAR.
- """
- # create and pack the title and action buttons
- self.prev_period = ttk.Button(
- master=self.frm_title, text="«", command=self.on_prev_month
- )
- self.prev_period.pack(side=LEFT)
-
- self.title = ttk.Label(
- master=self.frm_title,
- textvariable=self.titlevar,
- anchor=CENTER,
- font="-weight bold",
- )
- self.title.pack(side=LEFT, fill=X, expand=YES)
-
- self.next_period = ttk.Button(
- master=self.frm_title,
- text="»",
- command=self.on_next_month,
- )
- self.next_period.pack(side=LEFT)
-
- # bind "year" callbacks to action buttons
- self.prev_period.bind("", self.on_prev_year, "+")
- self.next_period.bind("", self.on_next_year, "+")
- self.title.bind("", self.on_reset_date)
-
- # create and pack days of the week header
- for col in self._header_columns():
- ttk.Label(
- master=self.frm_header,
- text=col,
- anchor=CENTER,
- padding=5,
- bootstyle=(SECONDARY, INVERSE),
- ).pack(side=LEFT, fill=X, expand=YES)
-
- def _set_title(self):
- _titledate = f'{self.date.strftime("%B %Y")}'
- self.titlevar.set(value=_titledate.capitalize())
-
- def _current_month_days(self):
- """Fetch the day numbers and dates for all days in the current
- month. `monthdays` is a list of days as integers, and
- `monthdates` is a list of `datetime` objects.
- """
- self.monthdays = self.calendar.monthdayscalendar(
- year=self.date.year, month=self.date.month
- )
- self.monthdates = self.calendar.monthdatescalendar(
- year=self.date.year, month=self.date.month
- )
-
- def _header_columns(self):
- """Create and return a list of weekdays to be used as a header
- in the calendar. The order of the weekdays is based on the
- `firstweekday` property.
-
- Returns:
-
- List[str]:
- A list of weekday column names for the calendar header.
- """
- weekdays = [
- MessageCatalog.translate("Mo"),
- MessageCatalog.translate("Tu"),
- MessageCatalog.translate("We"),
- MessageCatalog.translate("Th"),
- MessageCatalog.translate("Fr"),
- MessageCatalog.translate("Sa"),
- MessageCatalog.translate("Su"),
- ]
- header = weekdays[self.firstweekday :] + weekdays[: self.firstweekday]
- return header
-
- def _on_date_selected(self, row, col):
- """Callback for selecting a date.
-
- An index is assigned to each date button that corresponds to
- the dates in the `monthdates` matrix. When the user clicks a
- button to select a date, the index from this button is used
- to lookup the date value of the button based on the row and
- column index reference. This value is saved in the
- `date_selected` property and the `Toplevel` is destroyed.
-
- Parameters:
-
- index (Tuple[int, int]):
- A row and column index of the date selected; to be
- found in the `monthdates` matrix.
-
- Returns:
-
- datetime:
- The date selected
- """
- self.date_selected = self.monthdates[row][col]
- self.root.destroy()
-
- def _selection_callback(func):
- """Calls the decorated `func` and redraws the calendar."""
-
- def inner(self, *args):
- func(self, *args)
- self.frm_dates.destroy()
- self._draw_calendar()
-
- return inner
-
- @_selection_callback
- def on_next_month(self):
- """Increment the calendar data to the next month"""
- year, month = self._nextmonth(self.date.year, self.date.month)
- self.date = datetime(year=year, month=month, day=1).date()
-
- @_selection_callback
- def on_next_year(self, *_):
- """Increment the calendar data to the next year"""
- year = self.date.year + 1
- month = self.date.month
- self.date = datetime(year=year, month=month, day=1).date()
-
- @_selection_callback
- def on_prev_month(self):
- """Decrement the calendar to the previous year"""
- year, month = self._prevmonth(self.date.year, self.date.month)
- self.date = datetime(year=year, month=month, day=1).date()
-
- @_selection_callback
- def on_prev_year(self, *_):
- year = self.date.year - 1
- month = self.date.month
- self.date = datetime(year=year, month=month, day=1).date()
-
- @_selection_callback
- def on_reset_date(self, *_):
- """Set the calendar to the start date"""
- self.date = self.startdate
-
- def _set_window_position(self):
- """Move the window the to bottom-right of the parent widget, or
- the top-left corner of the master window if no parent is
- provided.
- """
- if self.parent:
- xpos = self.parent.winfo_rootx() + self.parent.winfo_width()
- ypos = self.parent.winfo_rooty() + self.parent.winfo_height()
- self.root.geometry(f"+{xpos}+{ypos}")
- else:
- xpos = self.root.master.winfo_rootx()
- ypos = self.root.master.winfo_rooty()
- self.root.geometry(f"+{xpos}+{ypos}")
-
- @staticmethod
- def _nextmonth(year, month):
- if month == 12:
- return year + 1, 1
- else:
- return year, month + 1
-
- @staticmethod
- def _prevmonth(year, month):
- if month == 1:
- return year - 1, 12
- else:
- return year, month - 1
-
-
-class FontDialog(Dialog):
-
- """A dialog that displays a variety of options for choosing a font.
-
- This dialog constructs and returns a `Font` object based on the
- options selected by the user. The initial font is based on OS
- settings and will vary.
-
- The font object is returned when the **Ok** button is pressed and
- can be passed to any widget that accepts a _font_ configuration
- option.
-
- ![](../../assets/dialogs/querybox-get-font.png)
- """
-
- def __init__(self, title="Font Selector", parent=None):
- title = MessageCatalog.translate(title)
- super().__init__(parent=parent, title=title)
- self._style = ttk.Style()
- self._default = font.nametofont("TkDefaultFont")
- self._actual = self._default.actual()
- self._size = ttk.Variable(value=self._actual["size"])
- self._family = ttk.Variable(value=self._actual["family"])
- self._slant = ttk.Variable(value=self._actual["slant"])
- self._weight = ttk.Variable(value=self._actual["weight"])
- self._overstrike = ttk.Variable(value=self._actual["overstrike"])
- self._underline = ttk.Variable(value=self._actual["underline"])
- self._preview_font = font.Font()
- self._slant.trace_add("write", self._update_font_preview)
- self._weight.trace_add("write", self._update_font_preview)
- self._overstrike.trace_add("write", self._update_font_preview)
- self._underline.trace_add("write", self._update_font_preview)
-
- _headingfont = font.nametofont("TkHeadingFont")
- _headingfont.configure(weight="bold")
-
- self._update_font_preview()
- self._families = set([self._family.get()])
- for f in font.families():
- if all([f, not f.startswith("@"), "emoji" not in f.lower()]):
- self._families.add(f)
-
- def create_body(self, master):
- width = utility.scale_size(master, 600)
- height = utility.scale_size(master, 500)
- self._toplevel.geometry(f"{width}x{height}")
-
- family_size_frame = ttk.Frame(master, padding=10)
- family_size_frame.pack(fill=X, anchor=N)
- self._initial_focus = self._font_families_selector(family_size_frame)
- self._font_size_selector(family_size_frame)
- self._font_options_selectors(master, padding=10)
- self._font_preview(master, padding=10)
-
- def create_buttonbox(self, master):
- container = ttk.Frame(master, padding=(5, 10))
- container.pack(fill=X)
-
- ok_btn = ttk.Button(
- master=container,
- bootstyle="primary",
- text=MessageCatalog.translate("OK"),
- command=self._on_submit,
- )
- ok_btn.pack(side=RIGHT, padx=5)
- ok_btn.bind("", lambda _: ok_btn.invoke())
-
- cancel_btn = ttk.Button(
- master=container,
- bootstyle="secondary",
- text=MessageCatalog.translate("Cancel"),
- command=self._on_cancel,
- )
- cancel_btn.pack(side=RIGHT, padx=5)
- cancel_btn.bind("", lambda _: cancel_btn.invoke())
-
- def _font_families_selector(self, master):
- container = ttk.Frame(master)
- container.pack(fill=BOTH, expand=YES, side=LEFT)
-
- header = ttk.Label(
- container,
- text=MessageCatalog.translate("Family"),
- font="TkHeadingFont",
- )
- header.pack(fill=X, pady=(0, 2), anchor=N)
-
- listbox = ttk.Treeview(
- master=container,
- height=5,
- show="",
- columns=[0],
- )
- listbox.column(0, width=utility.scale_size(listbox, 250))
- listbox.pack(side=LEFT, fill=BOTH, expand=YES)
-
- listbox_vbar = ttk.Scrollbar(
- container,
- command=listbox.yview,
- orient=VERTICAL,
- bootstyle="rounded",
- )
- listbox_vbar.pack(side=RIGHT, fill=Y)
- listbox.configure(yscrollcommand=listbox_vbar.set)
-
- for f in self._families:
- listbox.insert("", iid=f, index=END, tags=[f], values=[f])
- listbox.tag_configure(f, font=(f, self._size.get()))
-
- iid = self._family.get()
- listbox.selection_set(iid) # select default value
- listbox.see(iid) # ensure default is visible
- listbox.bind(
- "<>", lambda e: self._on_select_font_family(e)
- )
- return listbox
-
- def _font_size_selector(self, master):
- container = ttk.Frame(master)
- container.pack(side=LEFT, fill=Y, padx=(10, 0))
-
- header = ttk.Label(
- container,
- text=MessageCatalog.translate("Size"),
- font="TkHeadingFont",
- )
- header.pack(fill=X, pady=(0, 2), anchor=N)
-
- sizes_listbox = ttk.Treeview(container, height=7, columns=[0], show="")
- sizes_listbox.column(0, width=utility.scale_size(sizes_listbox, 24))
-
- sizes = [*range(8, 13), *range(13, 30, 2), 36, 48, 72]
- for s in sizes:
- sizes_listbox.insert("", iid=s, index=END, values=[s])
-
- iid = self._size.get()
- sizes_listbox.selection_set(iid)
- sizes_listbox.see(iid)
- sizes_listbox.bind(
- "<>", lambda e: self._on_select_font_size(e)
- )
-
- sizes_listbox_vbar = ttk.Scrollbar(
- master=container,
- orient=VERTICAL,
- command=sizes_listbox.yview,
- bootstyle="round",
- )
- sizes_listbox.configure(yscrollcommand=sizes_listbox_vbar.set)
- sizes_listbox.pack(side=LEFT, fill=Y, expand=YES, anchor=N)
- sizes_listbox_vbar.pack(side=LEFT, fill=Y, expand=YES)
-
- def _font_options_selectors(self, master, padding: int):
- container = ttk.Frame(master, padding=padding)
- container.pack(fill=X, padx=2, pady=2, anchor=N)
-
- weight_lframe = ttk.Labelframe(
- container, text=MessageCatalog.translate("Weight"), padding=5
- )
- weight_lframe.pack(side=LEFT, fill=X, expand=YES)
- opt_normal = ttk.Radiobutton(
- master=weight_lframe,
- text=MessageCatalog.translate("normal"),
- value="normal",
- variable=self._weight,
- )
- opt_normal.invoke()
- opt_normal.pack(side=LEFT, padx=5, pady=5)
- opt_bold = ttk.Radiobutton(
- master=weight_lframe,
- text=MessageCatalog.translate("bold"),
- value="bold",
- variable=self._weight,
- )
- opt_bold.pack(side=LEFT, padx=5, pady=5)
-
- slant_lframe = ttk.Labelframe(
- container, text=MessageCatalog.translate("Slant"), padding=5
- )
- slant_lframe.pack(side=LEFT, fill=X, padx=10, expand=YES)
- opt_roman = ttk.Radiobutton(
- master=slant_lframe,
- text=MessageCatalog.translate("roman"),
- value="roman",
- variable=self._slant,
- )
- opt_roman.invoke()
- opt_roman.pack(side=LEFT, padx=5, pady=5)
- opt_italic = ttk.Radiobutton(
- master=slant_lframe,
- text=MessageCatalog.translate("italic"),
- value="italic",
- variable=self._slant,
- )
- opt_italic.pack(side=LEFT, padx=5, pady=5)
-
- effects_lframe = ttk.Labelframe(
- container, text=MessageCatalog.translate("Effects"), padding=5
- )
- effects_lframe.pack(side=LEFT, padx=(2, 0), fill=X, expand=YES)
- opt_underline = ttk.Checkbutton(
- master=effects_lframe,
- text=MessageCatalog.translate("underline"),
- variable=self._underline,
- )
- opt_underline.pack(side=LEFT, padx=5, pady=5)
- opt_overstrike = ttk.Checkbutton(
- master=effects_lframe,
- text=MessageCatalog.translate("overstrike"),
- variable=self._overstrike,
- )
- opt_overstrike.pack(side=LEFT, padx=5, pady=5)
-
- def _font_preview(self, master, padding: int):
- container = ttk.Frame(master, padding=padding)
- container.pack(fill=BOTH, expand=YES, anchor=N)
-
- header = ttk.Label(
- container,
- text=MessageCatalog.translate("Preview"),
- font="TkHeadingFont",
- )
- header.pack(fill=X, pady=2, anchor=N)
-
- content = MessageCatalog.translate(
- "The quick brown fox jumps over the lazy dog."
- )
- self._preview_text = ttk.Text(
- master=container,
- height=3,
- font=self._preview_font,
- highlightbackground=self._style.colors.primary,
- )
- self._preview_text.insert(END, content)
- self._preview_text.pack(fill=BOTH, expand=YES)
- container.pack_propagate(False)
-
- def _on_select_font_family(self, e):
- tree: ttk.Treeview = self._toplevel.nametowidget(e.widget)
- fontfamily = tree.selection()[0]
- self._family.set(value=fontfamily)
- self._update_font_preview()
-
- def _on_select_font_size(self, e):
- tree: ttk.Treeview = self._toplevel.nametowidget(e.widget)
- fontsize = tree.selection()[0]
- self._size.set(value=fontsize)
- self._update_font_preview()
-
- def _on_submit(self) -> font.Font:
- self._toplevel.destroy()
- return self.result
-
- def _on_cancel(self):
- self._toplevel.destroy()
-
- def _update_font_preview(self, *_):
- family = self._family.get()
- size = self._size.get()
- slant = self._slant.get()
- overstrike = self._overstrike.get()
- underline = self._underline.get()
-
- self._preview_font.config(
- family=family,
- size=size,
- slant=slant,
- overstrike=overstrike,
- underline=underline,
- )
- try:
- self._preview_text.configure(font=self._preview_font)
- except:
- pass
- self._result = self._preview_font
-
-
-class Messagebox:
- """This class contains various static methods that show popups with
- a message to the end user with various arrangments of buttons
- and alert options."""
-
- @staticmethod
- def show_info(message, title=" ", parent=None, alert=False, **kwargs):
- """Display a modal dialog box with an OK button and an INFO
- icon.
-
- ![](../../assets/dialogs/messagebox-show-info.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- **kwargs (Dict):
- Other optional keyword arguments.
- """
- dialog = MessageDialog(
- message=message,
- title=title,
- alert=alert,
- parent=parent,
- buttons=["OK:primary"],
- icon=Icon.info,
- localize=True,
- **kwargs
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
-
- @staticmethod
- def show_warning(message, title=" ", parent=None, alert=True, **kwargs):
- """Display a modal dialog box with an OK button and a
- warning icon. Also will ring the display bell.
-
- ![](../../assets/dialogs/messagebox-show-warning.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- **kwargs (Dict):
- Other optional keyword arguments.
- """
- dialog = MessageDialog(
- message=message,
- title=title,
- parent=parent,
- buttons=["OK:primary"],
- icon=Icon.warning,
- alert=alert,
- localize=True,
- **kwargs,
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
-
- @staticmethod
- def show_error(message, title=" ", parent=None, alert=True, **kwargs):
- """Display a modal dialog box with an OK button and an
- error icon. Also will ring the display bell.
-
- ![](../../assets/dialogs/messagebox-show-error.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- **kwargs (Dict):
- Other optional keyword arguments.
- """
- dialog = MessageDialog(
- message=message,
- title=title,
- parent=parent,
- buttons=["OK:primary"],
- icon=Icon.error,
- alert=alert,
- localize=True,
- **kwargs,
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
-
- @staticmethod
- def show_question(
- message,
- title=" ",
- parent=None,
- buttons=["No:secondary", "Yes:primary"],
- alert=True,
- **kwargs,
- ):
- """Display a modal dialog box with yes, no buttons and a
- question icon. Also will ring the display bell. You may also
- change the button scheme using the `buttons` parameter.
-
- ![](../../assets/dialogs/messagebox-show-question.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- buttons (List[str]):
- A list of buttons to appear at the bottom of the popup
- messagebox. The buttons can be a list of strings which
- will define the symbolic name and the button text.
- `['OK', 'Cancel']`. Alternatively, you can assign a
- bootstyle to each button by using the colon to separate the
- button text and the bootstyle. If no colon is found, then
- the style is set to 'primary' by default.
- `['Yes:success','No:danger']`.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- **kwargs (Dict):
- Other optional keyword arguments.
-
- Returns:
-
- Union[str, None]:
- The symbolic name of the button pressed, or None if the
- window is closed without pressing a button.
- """
- dialog = MessageDialog(
- message=message,
- title=title,
- parent=parent,
- buttons=buttons,
- icon=Icon.question,
- alert=alert,
- localize=True,
- **kwargs,
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
- return dialog.result
-
- @staticmethod
- def ok(message, title=" ", alert=False, parent=None, **kwargs):
- """Display a modal dialog box with an OK button and and optional
- bell alert.
-
- ![](../../assets/dialogs/messagebox-ok.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- **kwargs (Dict):
- Other optional keyword arguments.
- """
- dialog = MessageDialog(
- title=title,
- message=message,
- parent=parent,
- alert=alert,
- buttons=["OK:primary"],
- localize=True,
- **kwargs,
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
-
- @staticmethod
- def okcancel(message, title=" ", alert=False, parent=None, **kwargs):
- """Displays a modal dialog box with OK and Cancel buttons and
- return the symbolic name of the button pressed.
-
- ![](../../assets/dialogs/messagebox-ok-cancel.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- **kwargs (Dict):
- Other optional keyword arguments.
-
- Returns:
-
- Union[str, None]:
- The symbolic name of the button pressed, or None if the
- window is closed without pressing a button.
- """
- dialog = MessageDialog(
- title=title,
- message=message,
- parent=parent,
- alert=alert,
- localize=True,
- **kwargs,
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
- return dialog.result
-
- @staticmethod
- def yesno(message, title=" ", alert=False, parent=None, **kwargs):
- """Display a modal dialog box with YES and NO buttons and return
- the symbolic name of the button pressed.
-
- ![](../../assets/dialogs/messagebox-yes-no.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- **kwargs (Dict):
- Other optional keyword arguments.
-
- Returns:
-
- Union[str, None]:
- The symbolic name of the button pressed, or None if the
- window is closed without pressing a button.
- """
- dialog = MessageDialog(
- title=title,
- message=message,
- parent=parent,
- buttons=["No", "Yes:primary"],
- alert=alert,
- localize=True,
- **kwargs,
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
- return dialog.result
-
- @staticmethod
- def yesnocancel(message, title=" ", alert=False, parent=None, **kwargs):
- """Display a modal dialog box with YES, NO, and Cancel buttons,
- and return the symbolic name of the button pressed.
-
- ![](../../assets/dialogs/messagebox-yes-no-cancel.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- **kwargs (Dict):
- Optional keyword arguments.
-
- Returns:
-
- Union[str, None]:
- The symbolic name of the button pressed, or None if the
- window is closed without pressing a button.
- """
- dialog = MessageDialog(
- title=title,
- message=message,
- parent=parent,
- alert=alert,
- buttons=["Cancel", "No", "Yes:primary"],
- localize=True,
- **kwargs,
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
- return dialog.result
-
- @staticmethod
- def retrycancel(message, title=" ", alert=False, parent=None, **kwargs):
- """Display a modal dialog box with RETRY and Cancel buttons;
- returns the symbolic name of the button pressed.
-
- ![](../../assets/dialogs/messagebox-retry-cancel.png)
-
- Parameters:
-
- message (str):
- A message to display in the message box.
-
- title (str):
- The string displayed as the title of the messagebox. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- alert (bool):
- Specified whether to ring the display bell.
-
- parent (Union[Window, Toplevel]):
- Makes the window the logical parent of the message box. The
- message box is displayed on top of its parent window.
-
- **kwargs (Dict):
- Other optional keyword arguments.
-
- Returns:
-
- Union[str, None]:
- The symbolic name of the button pressed, or None if the
- window is closed without pressing a button.
- """
- dialog = MessageDialog(
- title=title,
- message=message,
- parent=parent,
- alert=alert,
- buttons=["Cancel", "Retry:primary"],
- localize=True,
- **kwargs,
- )
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
- return dialog.result
-
-
-class Querybox:
- """This class contains various static methods that request data
- from the end user."""
-
- @staticmethod
- def get_color(
- parent=None, title="Color Chooser", initialcolor=None, **kwargs
- ):
- """Show a color picker and return the select color when the
- user pressed OK.
-
- ![](../../assets/dialogs/querybox-get-color.png)
-
- Parameters:
-
- parent (Widget):
- The parent widget.
-
- title (str):
- Optional text that appears on the titlebar.
-
- initialcolor (str):
- The initial color to display in the 'Current' color
- frame.
-
- Returns:
-
- Tuple[rgb, hsl, hex]:
- The selected color in various colors models.
- """
- from ttkbootstrap.dialogs.colorchooser import ColorChooserDialog
-
- dialog = ColorChooserDialog(parent, title, initialcolor)
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog.show(position)
- return dialog.result
-
- @staticmethod
- def get_date(
- parent=None,
- title=" ",
- firstweekday=6,
- startdate=None,
- bootstyle="primary",
- ):
- """Shows a calendar popup and returns the selection.
-
- ![](../../assets/dialogs/querybox-get-date.png)
-
- Parameters:
-
- parent (Widget):
- The parent widget; the popup will appear to the
- bottom-right of the parent widget. If no parent is
- provided, the widget is centered on the screen.
-
- title (str):
- The text that appears on the popup titlebar.
-
- firstweekday (int):
- Specifies the first day of the week. `0` is Monday, `6` is
- Sunday (the default).
-
- startdate (datetime):
- The date to be in focus when the widget is displayed;
-
- bootstyle (str):
- The following colors can be used to change the color of the
- title and hover / pressed color -> primary, secondary, info,
- warning, success, danger, light, dark.
-
- Returns:
-
- datetime:
- The date selected; the current date if no date is selected.
- """
- chooser = DatePickerDialog(
- parent=parent,
- title=title,
- firstweekday=firstweekday,
- startdate=startdate,
- bootstyle=bootstyle,
- )
- return chooser.date_selected
-
- @staticmethod
- def get_string(
- prompt="", title=" ", initialvalue=None, parent=None, **kwargs
- ):
- """Request a string type input from the user.
-
- ![](../../assets/dialogs/querybox-get-string.png)
-
- Parameters:
-
- prompt (str):
- A message to display in the message box above the entry
- widget.
-
- title (str):
- The string displayed as the title of the message box. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- initialvalue (Any):
- The initial value in the entry widget.
-
- parent (Widget):
- Makes the window the logical parent of the message box. The
- messagebox is displayed on top of its parent window.
-
- **kwargs (Dict):
- Other optional keyword arguments.
-
- Returns:
-
- str:
- The string value of the entry widget.
- """
- initialvalue = initialvalue or ""
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog = QueryDialog(
- prompt, title, initialvalue, parent=parent, **kwargs
- )
- dialog.show(position)
- return dialog._result
-
- @staticmethod
- def get_integer(
- prompt="",
- title=" ",
- initialvalue=None,
- minvalue=None,
- maxvalue=None,
- parent=None,
- **kwargs,
- ):
- """Request an integer type input from the user.
-
- ![](../../assets/dialogs/querybox-get-integer.png)
-
- Parameters:
-
- prompt (str):
- A message to display in the message box above the entry
- widget.
-
- title (str):
- The string displayed as the title of the message box. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- initialvalue (int):
- The initial value in the entry widget.
-
- minvalue (int):
- The minimum allowed value.
-
- maxvalue (int):
- The maximum allowed value.
-
- parent (Widget):
- Makes the window the logical parent of the message box. The
- messagebox is displayed on top of its parent window.
-
- **kwargs (Dict):
- Other optional keyword arguments.
-
- Returns:
-
- int:
- The integer value of the entry widget.
- """
- initialvalue = initialvalue or ""
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog = QueryDialog(
- prompt,
- title,
- initialvalue,
- minvalue,
- maxvalue,
- datatype=int,
- parent=parent,
- **kwargs,
- )
- dialog.show(position)
- return dialog._result
-
- @staticmethod
- def get_float(
- prompt="",
- title=" ",
- initialvalue=None,
- minvalue=None,
- maxvalue=None,
- parent=None,
- **kwargs,
- ):
- """Request a float type input from the user.
-
- ![](../../assets/dialogs/querybox-get-float.png)
-
- Parameters:
-
- prompt (str):
- A message to display in the message box above the entry
- widget.
-
- title (str):
- The string displayed as the title of the message box. This
- option is ignored on Mac OS X, where platform guidelines
- forbid the use of a title on this kind of dialog.
-
- initialvalue (float):
- The initial value in the entry widget.
-
- minvalue (float):
- The minimum allowed value.
-
- maxvalue (float):
- The maximum allowed value.
-
- parent (Widget):
- Makes the window the logical parent of the message box. The
- messagebox is displayed on top of its parent window.
-
- **kwargs (Dict):
- Other optional keyword arguments.
-
- Returns:
-
- float:
- The float value of the entry widget.
- """
- initialvalue = initialvalue or ""
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog = QueryDialog(
- prompt,
- title,
- initialvalue,
- minvalue,
- maxvalue,
- datatype=float,
- parent=parent,
- **kwargs,
- )
- dialog.show(position)
- return dialog._result
-
- @staticmethod
- def get_font(parent=None, **kwargs):
- """Request a customized font
-
- ![](../../assets/dialogs/querybox-get-font.png)
-
- Parameters:
-
- parent (Widget):
- Makes the window the logical parent of the dialog box. The
- dialog is displayed on top of its parent window.
-
- **kwargs (Dict):
- Other keyword arguments.
-
- Returns:
-
- Font:
- A font object.
- """
- if "position" in kwargs:
- position = kwargs.pop("position")
- else:
- position = None
- dialog = FontDialog(parent=parent, **kwargs)
- dialog.show(position)
- return dialog.result
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/icons.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/icons.py
deleted file mode 100644
index c1a2f30..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/icons.py
+++ /dev/null
@@ -1,2130 +0,0 @@
-"""
- A module various classes that can be used either in text as `Emoji`
- or in the tkinter.PhotoImage class as in `Icon`.
-"""
-
-
-class Icon:
- """A container class that contains base64 image attributes that can
- be used in the `PhotoImage` class using the `data` parameter.
-
- Attributes:
-
- icon (str): The ttkbootstrap icon.
- error (str): An error image.
- warning (str): A warning image.
- question (str): A question image.
- info (str): An info image.
-
- Examples:
-
- ```python
- img = tk.PhotoImage(data=Icon.warning)
- ```
- """
-
- icon = "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAFxEAABcRAcom8z8AAAT/SURBVFhHzZd9TNR1HMff/O64BwKOp+NRnkIScJI2n7ZqFmqjVhkrHExrrDFZLnPkqmEyW2WtlQ1SQawWPSAYiJLNGvK0VhJOaDgVBDPCw0PwEOUQfsfd/fp+v/cFbt0Bd6yxXvfP5+F79/l+P9+H+3w8wMnO3r40I+P5vOCQ4I1ymVzrQeCu/wSJYDabB/sHbp45XlnzQUnJgcvcBRQUHEjX6/vH6aCFQK/XjxcWHnyBxpbRle/Ysf3n0NAQJTWMmiRUnB/FNy1GNHaNYdwsIS7IE4JdPqxWKxoam3D0aAVq6+rR39+P2NhYKBQKPsJGx3Abyq8dxGldBbrvXkSoVyR8Pf3g7e0tj46O2mQ0Gqs96urqv1u/PmUL/cLfQ2a8/O0t9A2b2Q9MsjpGicOZQfBSeEAURbyZtxstLee410awVovCgk8RGxPD9NLuT1B6dT+TJ/EUFMhL/gwpYZuYXl/fUCbQPaeKVQJyqwwOwSnnekR8VDvM5JIjnzsEpwwMDmL32/mwWCxoHqhzCE6ZsJrw4YWduHGvh+k0tkAPHFXadSZc1k8whzNOtt+DcWwCJ2p+4BZH/urpwfnWNpzs/YpbHJmwivjxehmTaWxh8rTT9M+GSM7CpZ5BjI2NcYtzdH069PEVzsSkn8YWmETQek+JTpER9/3h/pDL5dzinKDAQAQqg7nmHHv/VNRV5KCFaWRcc2RdvBpajRopjz/GLY4EBARgzerVeCKc3TCneJDPxohp/9QEFDIPfJwWwE76v1nkL8fep/yYnLvzNURFRTLZHqVSib35e6BSqfDkokysC32ae6ahwbPidyFRs4JbiK2jo1NKSFjCVaDHYMaRX0fQ3mcikwIeiVMh+2EfaNTTW2Q0jqKsvBxnzzaza5mYmICXXtw6dQUpVslK7n85ztyogkEcQIRXLNKis7BWu4GPADo7rzhOYCGZ9wQmxi249NN19P5xCxaTFdo4XyQ/Gw3fEDUf4RrzmoA4MoFT77RiqNfILTY8VTKk5i1HWJI/t8wNncDsd88JzV93OQSn0Kw0FF5kGXEHtyZgJj/+5283uebI6JAI3QUD11zDrQmIIyZYzLOvcNQgcsk13JqASqOAXDnzY0XxcfMgujUBmVzAkpRwrjmiCfNCxLIArrmG24dwzZbFTk+6mmRnw+vLIJAX1R3m9Q5IpHjo/kWP3jYDOZgW9g4sTY2EyseTj3CN/8VL6PYWMO70A1W7gHeTgfzFwBcZpBpp4U7OuAl4jxQm8ZvJ/pB/0IeygC9P0fKYD7DhfgaGeoFDzwAjA9zAEcjtyDwEPEjqPZFUVqm5QFMbd9rxShpQ9AYT55eBmj2OwSlWC1D9Fln5XaC42nlwSvEJoLGVK+7eApE8wVcauOKEsTtAVxPwfT03zMCxab9AGwUuz834iG2lszF6GzCQLMzGkM1PYwu0XWKaK/iQAlqt4coMhDwAJE0XJk7hfhpboL0a01xBIAXpo9u44oRIUmrFriV1G7kV9q2UPb73AdueYyKNLfNSazpXrlyRTdslZp2LmFXAbR2gn+4tGSHkJmWVkgz5AtGhpOsgT3ItaWBIGzeFnw9QuQ9YHk/bObG4qGgrs9NGkTaMdE9c5trvknR6nyTV5EtS23HS+pq4w46rOkl6v1SSXt0vSQXHJGlwmJltzWkhK42n8pSTk5OUnr5598K055WkPS8hKQT+AVyRrtzM5URAAAAAAElFTkSuQmCC"
- error = "iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAABmJLR0QA/wD/AP+gvaeTAAAEc0lEQVRIDcVXbU8bRxCee7MxkGBTSIJt0UAjRES+tKDKUfoFm5I0UVuFUKr+h/ZTf0Wr/pK2BFlKKkUmqOqHJKC8NFKiJKqJAEGNgRIIAcy97PWZde8EfgGnQcLy7M0+MzvP7e3ezB7REf2UWnnvDAx8qKrqkKZpl1zXPSWECJPrkqppa6Qoi2Tbv1lEYxcymT9ribkvsUukTKZSXyua9pNmGMcj8Xhd04kThh4Mkm4YMr5tWWTv7NDrfN5cXVgwhW2vOY7zfWJ8/BcERwjpVtbAVoZJAIRdrqalA6FQPN7T03istVXiBzWvl5dp4enTN2ahMOdY1hcXJiamK42pSDyZTCZJ19PR7u76lo4OtdLAg7Clly/F4osXW1iSz8+Pj/9OJb8y4nupVD8e7c2Ovr5QrbMsiel3efYz9+9v27Z9CTP/wzdA2UM81d/f4+r65AeJRENDczPM7/7fXF2l7NTUBgnRm8hk/vIiqp6CXaBQMPhz7Ny50GGRcmyOFcOS4W34VXIwCPGJ7w4MfBOsr29/r73dx2A/lH/L6dOaEQp13hscHPECShK+E9zRD21nzzZ6htKrduYMKXV1pbDfV0IhYh8fKFE4tqYoP3qwJL6TSvXhPW061tLi4XuuWlcXGVeuUODaNWKCPUZ0GGMb+7AvoLL/cbyOqmFE7iaTH7FREuua9lUkFqs6HTE7S2JpiRQMDoyMkNLQwGOlsC4x3DT7OPCVhgpNpK0tiDdmmE2SGJ1PMdtiKmK0RFxkJvP6dRL5PCmRCAWGhyW5JGUdGNvYh+BbMtzv4vUM4MkOMqBzg61+ChlKqlUbBOTAgaEhUk+eJJ4l+ypNTfKG2LYfKftig5ErRJR1OWN0Ipx/GdhX/iMXSItMyOJCr4WU4xrYnK7jNLMuiVmpVRQUBxbfn/t68cH5WA2KJFZUdZUrzEH+SmNjcX3DYbnZeDMp0L01P2i8hScGrn/YzyPOW9vb3K8qe0gXF8kcHZUioPsbDjdWNQAM1tYWYSPnoJIkRv28sYZ6ykAlKSMdGyO5kTADE3qt5KjZBdTrG8xRJHbd0fVczmSgkqjRKHkbyUqni6SeI8gZc1dWpA/7eqbS66tcznGEGGVcVidOmVMXL8519PbG8a4xXiacDsX8PLmFQpmNAc5eaixGTjbL3TLhEjn74MHcx7duvc9GOWOwu45tfzf/5MkbnKcYLxMOWI2UnV3sEfZhvVQ45vzjx5s4kXzr2SQxd87fvp22TXNueWZGcP8wZWV62hGOM52YmJDry7F9Yp61ZZqXc8+ebawjNbLxMGQduz6Xza7vOM5nzOHF9IkZwPEE1UBcnX34cHsDGYmxdxG5ro8ebeMkevWTTObv3bFwE7u7RV0e9jRtrK27u661szNQRN+uxWHPzD1/XsD6flnTYc8LfyTHW4/c3XWgV3U9HI5GAyjoRgD12KtmJrLRzuYm4bFanAtQBF4hIf3/A71H7l13fcJcRjWLYpe2sA2fMCv4tFlARrppvcUnDI89EvkXuxHzVm+w/WUAAAAASUVORK5CYII="
- warning = "iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAABmJLR0QA/wD/AP+gvaeTAAADO0lEQVRIDe1V3UtTYRh/P87HPo815+zoNlHb5tzUbTmnQiUU6QZGBN4UBBURIgR1E9TNkkIi8SIw2BKi226iG5cfMKiLoIT+hO4qRSIIg3Tb6TxHtpbbzs4RIogO5znvc37P7/n9zns+3oPQX9rwfnyz8yOWvMl8nyAs7dDtm6MXlrf06jB6G4BfMAtPmhziOEIS2tz42CxjE3Lo2okutkxeWkgcIwTHg9EhPhAd5gmhccDkkq5dl3EymSQMJQu+3n4ToRRROSAHDGp6nHUZDzvfXjJbG0TR3VZ6NyA3WQVxyPXu4h8xXkmdbJBv8aw/PGBBCJd5YNQdjlkYgmeBU1ZQTTXPmLLGaYfTzQkHbRWCgDW1unjCGZNI46bJeDWd8EpYuuLrCRtr6e7WpKvArcUpxzUZE54+6vAFOY7/5Rs7+wxBFMWg1uELcIRn5ouY2ljXeCU9NkopG3N7/VRNCGpubzelDDMIPXCuFqrGa6kjLGGZtD/UbyFElap4AKerL2qBnmxyRHVxUlX7yjZPCgdstqYWlyKs5eBocSLoybnMk2r8msbZ1LgdY3LXH4nJn4+aRGXNHxmwEIzvrT490VhZ3UVqGhd4NCO621mzVdhl6jjKiwwS29pZjIwztdqqGq+kEj3y+n/ucCBkqNVYD1d6C/i8olWFXNWYGuhjT7DPwHJclRZtEPR6gr0GytN0tY4K4+X02GmWMwScHd6KWjUBNczZ4SMszweXFuLje3nliy5afBjnOYH5EB48Ltoc8JvdS9d//mVjHb1/k/20/a3QnriW+VFU+G1WnAXfsDXaBS2mnze/I4iiUK0RtGyNDoG34uvlnJLxy9SoiBG51RUaMJcTquVgODG1iCamMmhdvoBqnHKsKyxrSuQ2eBTxkjFn4GZdnV7WaNbw2UpSsV9++UtpzQQ0nZ0eluP5B0WS8oxX02NRynPZo/EzZsqwxZrqCLMGwiG7CYa6kc/toFeZ51u5XH7k1OXFNWXGhOPmPMGQUaspuIAhBORaArS9gYiRpcwc8BXjQj4fsYutSg7gnwrwyBdyEdBX/iCUkOnXmRfTUqGw/xUD1OoEJmSbEuZOHdr/8j9yB34CUBepV8n7RlcAAAAASUVORK5CYII="
- question = "iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAABmJLR0QA/wD/AP+gvaeTAAAEvElEQVRIDcVX208cVRj/5sxlB1j2Aiyy2lpgEZVaUvXBeIvERCOwC1Qlvhj/gcYnE1PAR1tsU598bOK7sV6A3ZVEX9pqE32yFzDKdlkS6ILslUXYmT0z4zlnmbLtzt76oJPznXO+y+/7zsy5fQPwPz1cvXEnpkMnDZ4/JSA0AobRpem6i2J5hDKAuLiGtTAu4O+C5wM3qLwW1QhscIHp8KTAo88FQXR2dnps7rY2SRIFEAWB+S5gDGoBQzqVVLf+TigYa2kDax/NzQ5/A8AZzMiiqhh47MxiHxKNOZvNdsTn8zncLqcFvFyUTmcgEo3m1Ly6RgY1HvrMHy23IkOyEk58sjDEceL33d3HWr1eL+IqDs8KTWUGbGzEtVhsbdfQtMDcrP8alZZSmcvAVPg1XkTzJ5453upobS3Tl4Jr9bM7OWNpaXkHa7p/4ezwz6X29zk+NRXqB4H/dXDwhMtubym1e+j+7u4u3Lh5K40N/ELw08CK6UgwOwAGB/zi1729PS3VgjpkBENPy3DUXYSupzFc+TMPmT390FVJz263Q09Pt31tNfYVADxHiBXEalKNTYfea25ufryr6xGRsJallQT94GU79BOTJokDSk+Q/vsv2oHqLEFE+KjXK9pkuXd8KvwuYVk5CGxwCAkXen09bG8yjUX1OnlTWeQguo3h0pUcXLqaY30qG3pKtkAcinx9PifiuYumhAUemwk/L0mCgzym3LI91l78vD8u7UN2X4cs+bw/Le8z2+6Ooo4xFpXT4QBRFF1jZ8LPUjULjBA36fF4mqmgGklCcS3m8ofzWdAOzoiDphre0+lpQgI3SW3YMBEnvOFyuyrOLTWkdHExS5v76ORRifFbOY211Sqn0yltxjffJDbT7I3B0L02SSJ8Y8XXKcJLfcW5/S2q1ATLsg3It/JSQxaYHPhuSbJRvm5qa0EwOtgE9FS7HslDLIFrYiXycrqmtVNDFph2GqVX+2Wgc35rXYXrEaUBeHGdsMCI51Oq2ggY4GgbWx5w9a983UEVRQHEoyQFFANzsKWoKuXrJrp3qfG+WsdypoaEFEUFEjBOusCGXcB6MJlIDbjIqqPCeshqhdfCpVKpPFlPQWpHBgCgY3w5kdhu7JUpukHaTmxrBV27TGEscPC8/6amGelMtnyfUiMr6rDzQMlKZyWjCYKO9UTonP821bPAJB8wsI4/jKxEdow6poxuJXpZUHKTbUUdVScDViJ3cpqunTbtDgIDLJwdmVcVNba1tVkwlfW0xc1R3fJufLOgFdTI/Dl/yLRki6vIcIamzg1H76z+Tq6wDrfLVdFn6h8dvryWY7BK9zBTkiqZShmrq7Es0rhRwt4rZc5Z6sNzoYHjA80kwSvT30PW0UlnMsby0h975B55q2rqY/oKzPzwCrmI5rpJ5kCSPYkei6auvtaA9Y14PrZGkj1sTMzPjvzyII57UGDyb38cPgIy+laUpCcfJr3FamEJ5/PvzF8Yv2v6LG0rBjaNAjOhcQEJX/A8cne0t5OE3iXKsgyUqI2i5GF/Lw+pTEZNJhIFklEmyV/F6YXZ0SDVV6KagU2g+Qsj8tyorhmPkROogySIwCM+QVKaDUxOv0Z+YUy//3n7L6y2u/Lkn4gSAAAAAElFTkSuQmCC"
- info = "iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAABmJLR0QA/wD/AP+gvaeTAAADzElEQVRIDcWXzXPbRBTAn7SSrJbEH8Vp4rjFjjPDUCgz0PbMDMwAwRknE4aP4dpe4QSHEigHSDNDp/9C+wfQr6RNTLgxvXGDoaEpxDSJmzYhtpSPUluydpd9InJE4yTqpCYaPe3Te2/fb3dlrZ8A9uiQgnL7TudfVQh/V1LUHuC8gzIWxb5ElpdBkhYcxvISpddGhnt/RvtOsgOYS32D4x8SQs4TRQ23H4zrsQPPqpqqgKoobu6a40DNroFhmvbi4l82pXTZofTTG8PZSwASd4MaXLYED3w+/jwoZFTT1EPd3d0tsVi0QffNJtM0oVC4+9CyrTmxMn0jQ9nC5igxpEbG3Jf5NxSQR1Pp1P5kskPeIqxR13Ubh/n5+2x2pviIQy03MpT7ER47Ns24b3DsdSKT8SMvHtkXdJaP5azf4uxv/zZVoZz1XD/be7PuEMp/wLkzEy8Rzn86+vLRZyLhVuHe/bm6sgq3JifXatw5PjaU+8PLKHsKAJcUCb7LZLr2BYGGdRlQNvo31sKRMKS60vs1Wb2MDC+qDu4/k/9ID+nPJRL4TD134xaBp15rhZNCWsUAGkdtWJOJBAmF9Ez/F99/4FnXwVySgXybyaRbPMe2re8B+dRtu3R1pVokIp/zglxw7vTECaIokWg02CuzWmFw4eYaXBSyWmVerm3bWCwm3k4llhu8cQwDXbCssPfbD7bpaAgqCEQJGo9x7W1tISIr76Hubj+KrL4ppquiIYh81hOph52fWKnrOymRaERbWFh4S8QNujPmnHXoIU3cBzufBObPqOshYJx3os0Fiw0/pmkhvG+qaJoGjPEDCHHBqPzf4oJlQgzbtprOtiwLZCKXEfQvWIJFy7bxvqliWTYI4AOEiBaAOmzMKBlNJxumURW/p7E6GDi7slQqNR28tLREucSu1MEjw9lfsHIwzWW0NUVMwwTKeHn0m95fEeAutfij547DPpmeLjzkfMtqBeNd8W8gft11NrhgzunCn39zyj723L49nksDX/1wK3X48AvJQ8n1AXlhu2uL9+bpvWJx8urXb7+Ck8RsPoDELUqzM7Nza4ZYFnQ+DSmXDSjOFVecqvWOB8W8PjBA/mzvLGN0YOr275Wn8byx9LkzdadCRc7r5/rvI9AT31J7JgAs9sSIrmXSab0zmdDESDecgTQs9h7Yd2dmqhLQ/kDFnpd3T8pbD441Ur2gJyQaj8c1UXmquq4DCsZZVhUqj6qioF+ulcslUdAzc1cFPSb1y8YnjJLljHeKHSiOfvEJU5KJNF+jfPxJPmGw757IPxpVi5HvZ9PZAAAAAElFTkSuQmCC"
-
-
-class EmojiItem:
-
- """A container for an emoji character used by the Emoji class"""
-
- def __init__(self, name, category, subcategory, char):
- """
- Parameters:
-
- name (str):
- The name of the emoji character.
-
- category (str):
- The major category of the emoji character.
-
- subcategory (str):
- The subcategory of the emoji character.
-
- char (str):
- The unicode character.
- """
- self.name = name
- self.category = category
- self.subcategory = subcategory
- self.char = char
-
- def __repr__(self) -> str:
- return self.char
-
-
-class Emoji:
- """A class that contains emoji characters that can be used in the
- `text` parameter in any tkinter widget with the option.
- """
-
- _ITEMS = [
- EmojiItem("KNOT", "activities", "arts & crafts", "🪢"),
- EmojiItem("SEWING NEEDLE", "activities", "arts & crafts", "🪡"),
- EmojiItem("BALL OF YARN", "activities", "arts & crafts", "🧶"),
- EmojiItem("SPOOL OF THREAD", "activities", "arts & crafts", "🧵"),
- EmojiItem("FRAME WITH PICTURE", "activities", "arts & crafts", "🖼"),
- EmojiItem("PERFORMING ARTS", "activities", "arts & crafts", "🎭"),
- EmojiItem("ARTIST PALETTE", "activities", "arts & crafts", "🎨"),
- EmojiItem("THIRD PLACE MEDAL", "activities", "award-medal", "🥉"),
- EmojiItem("SECOND PLACE MEDAL", "activities", "award-medal", "🥈"),
- EmojiItem("FIRST PLACE MEDAL", "activities", "award-medal", "🥇"),
- EmojiItem("TROPHY", "activities", "award-medal", "🏆"),
- EmojiItem("SPORTS MEDAL", "activities", "award-medal", "🏅"),
- EmojiItem("MILITARY MEDAL", "activities", "award-medal", "🎖"),
- EmojiItem("SPARKLES", "activities", "event", "✨"),
- EmojiItem("FIRECRACKER", "activities", "event", "🧨"),
- EmojiItem("RED GIFT ENVELOPE", "activities", "event", "🧧"),
- EmojiItem("TICKET", "activities", "event", "🎫"),
- EmojiItem("ADMISSION TICKETS", "activities", "event", "🎟"),
- EmojiItem("REMINDER RIBBON", "activities", "event", "🎗"),
- EmojiItem("MOON VIEWING CEREMONY", "activities", "event", "🎑"),
- EmojiItem("WIND CHIME", "activities", "event", "🎐"),
- EmojiItem("CARP STREAMER", "activities", "event", "🎏"),
- EmojiItem("JAPANESE DOLLS", "activities", "event", "🎎"),
- EmojiItem("PINE DECORATION", "activities", "event", "🎍"),
- EmojiItem("TANABATA TREE", "activities", "event", "🎋"),
- EmojiItem("CONFETTI BALL", "activities", "event", "🎊"),
- EmojiItem("PARTY POPPER", "activities", "event", "🎉"),
- EmojiItem("BALLOON", "activities", "event", "🎈"),
- EmojiItem("FIREWORK SPARKLER", "activities", "event", "🎇"),
- EmojiItem("FIREWORKS", "activities", "event", "🎆"),
- EmojiItem("CHRISTMAS TREE", "activities", "event", "🎄"),
- EmojiItem("JACK-O-LANTERN", "activities", "event", "🎃"),
- EmojiItem("WRAPPED PRESENT", "activities", "event", "🎁"),
- EmojiItem("RIBBON", "activities", "event", "🎀"),
- EmojiItem("BLACK CHESS PAWN", "activities", "game", "♟"),
- EmojiItem("BLACK DIAMOND SUIT", "activities", "game", "♦"),
- EmojiItem("BLACK HEART SUIT", "activities", "game", "♥"),
- EmojiItem("BLACK CLUB SUIT", "activities", "game", "♣"),
- EmojiItem("BLACK SPADE SUIT", "activities", "game", "♠"),
- EmojiItem("NESTING DOLLS", "activities", "game", "🪆"),
- EmojiItem("PINATA", "activities", "game", "🪅"),
- EmojiItem("MAGIC WAND", "activities", "game", "🪄"),
- EmojiItem("KITE", "activities", "game", "🪁"),
- EmojiItem("YO-YO", "activities", "game", "🪀"),
- EmojiItem("NAZAR AMULET", "activities", "game", "🧿"),
- EmojiItem("TEDDY BEAR", "activities", "game", "🧸"),
- EmojiItem("JIGSAW PUZZLE PIECE", "activities", "game", "🧩"),
- EmojiItem("JOYSTICK", "activities", "game", "🕹"),
- EmojiItem("CRYSTAL BALL", "activities", "game", "🔮"),
- EmojiItem("FLOWER PLAYING CARDS", "activities", "game", "🎴"),
- EmojiItem("GAME DIE", "activities", "game", "🎲"),
- EmojiItem("BILLIARDS", "activities", "game", "🎱"),
- EmojiItem("SLOT MACHINE", "activities", "game", "🎰"),
- EmojiItem("DIRECT HIT", "activities", "game", "🎯"),
- EmojiItem("VIDEO GAME", "activities", "game", "🎮"),
- EmojiItem("PLAYING CARD BLACK JOKER", "activities", "game", "🃏"),
- EmojiItem("MAHJONG TILE RED DRAGON", "activities", "game", "🀄"),
- EmojiItem("ICE SKATE", "activities", "sport", "⛸"),
- EmojiItem("FLAG IN HOLE", "activities", "sport", "⛳"),
- EmojiItem("BASEBALL", "activities", "sport", "⚾"),
- EmojiItem("SOCCER BALL", "activities", "sport", "⚽"),
- EmojiItem("FLYING DISC", "activities", "sport", "🥏"),
- EmojiItem("SOFTBALL", "activities", "sport", "🥎"),
- EmojiItem("LACROSSE STICK AND BALL", "activities", "sport", "🥍"),
- EmojiItem("CURLING STONE", "activities", "sport", "🥌"),
- EmojiItem("MARTIAL ARTS UNIFORM", "activities", "sport", "🥋"),
- EmojiItem("BOXING GLOVE", "activities", "sport", "🥊"),
- EmojiItem("GOAL NET", "activities", "sport", "🥅"),
- EmojiItem("DIVING MASK", "activities", "sport", "🤿"),
- EmojiItem("SLED", "activities", "sport", "🛷"),
- EmojiItem(
- "BADMINTON RACQUET AND SHUTTLECOCK", "activities", "sport", "🏸"
- ),
- EmojiItem("TABLE TENNIS PADDLE AND BALL", "activities", "sport", "🏓"),
- EmojiItem("ICE HOCKEY STICK AND PUCK", "activities", "sport", "🏒"),
- EmojiItem("FIELD HOCKEY STICK AND BALL", "activities", "sport", "🏑"),
- EmojiItem("VOLLEYBALL", "activities", "sport", "🏐"),
- EmojiItem("CRICKET BAT AND BALL", "activities", "sport", "🏏"),
- EmojiItem("RUGBY FOOTBALL", "activities", "sport", "🏉"),
- EmojiItem("AMERICAN FOOTBALL", "activities", "sport", "🏈"),
- EmojiItem("BASKETBALL AND HOOP", "activities", "sport", "🏀"),
- EmojiItem("SKI AND SKI BOOT", "activities", "sport", "🎿"),
- EmojiItem("TENNIS RACQUET AND BALL", "activities", "sport", "🎾"),
- EmojiItem("RUNNING SHIRT WITH SASH", "activities", "sport", "🎽"),
- EmojiItem("BOWLING", "activities", "sport", "🎳"),
- EmojiItem("FISHING POLE AND FISH", "activities", "sport", "🎣"),
- EmojiItem("FROG FACE", "animal-nature", "animal-amphibian", "🐸"),
- EmojiItem("FEATHER", "animal-nature", "animal-bird", "🪶"),
- EmojiItem("FLAMINGO", "animal-nature", "animal-bird", "🦩"),
- EmojiItem("DODO", "animal-nature", "animal-bird", "🦤"),
- EmojiItem("SWAN", "animal-nature", "animal-bird", "🦢"),
- EmojiItem("PARROT", "animal-nature", "animal-bird", "🦜"),
- EmojiItem("PEACOCK", "animal-nature", "animal-bird", "🦚"),
- EmojiItem("OWL", "animal-nature", "animal-bird", "🦉"),
- EmojiItem("DUCK", "animal-nature", "animal-bird", "🦆"),
- EmojiItem("EAGLE", "animal-nature", "animal-bird", "🦅"),
- EmojiItem("TURKEY", "animal-nature", "animal-bird", "🦃"),
- EmojiItem("DOVE OF PEACE", "animal-nature", "animal-bird", "🕊"),
- EmojiItem("PENGUIN", "animal-nature", "animal-bird", "🐧"),
- EmojiItem("BIRD", "animal-nature", "animal-bird", "🐦"),
- EmojiItem(
- "FRONT-FACING BABY CHICK", "animal-nature", "animal-bird", "🐥"
- ),
- EmojiItem("BABY CHICK", "animal-nature", "animal-bird", "🐤"),
- EmojiItem("HATCHING CHICK", "animal-nature", "animal-bird", "🐣"),
- EmojiItem("CHICKEN", "animal-nature", "animal-bird", "🐔"),
- EmojiItem("ROOSTER", "animal-nature", "animal-bird", "🐓"),
- EmojiItem("COCKROACH", "animal-nature", "animal-bug", "🪳"),
- EmojiItem("BEETLE", "animal-nature", "animal-bug", "🪲"),
- EmojiItem("WORM", "animal-nature", "animal-bug", "🪱"),
- EmojiItem("FLY", "animal-nature", "animal-bug", "🪰"),
- EmojiItem("MICROBE", "animal-nature", "animal-bug", "🦠"),
- EmojiItem("MOSQUITO", "animal-nature", "animal-bug", "🦟"),
- EmojiItem("CRICKET", "animal-nature", "animal-bug", "🦗"),
- EmojiItem("BUTTERFLY", "animal-nature", "animal-bug", "🦋"),
- EmojiItem("SCORPION", "animal-nature", "animal-bug", "🦂"),
- EmojiItem("SPIDER WEB", "animal-nature", "animal-bug", "🕸"),
- EmojiItem("SPIDER", "animal-nature", "animal-bug", "🕷"),
- EmojiItem("LADY BEETLE", "animal-nature", "animal-bug", "🐞"),
- EmojiItem("HONEYBEE", "animal-nature", "animal-bug", "🐝"),
- EmojiItem("ANT", "animal-nature", "animal-bug", "🐜"),
- EmojiItem("BUG", "animal-nature", "animal-bug", "🐛"),
- EmojiItem("SNAIL", "animal-nature", "animal-bug", "🐌"),
- EmojiItem("GUIDE DOG", "animal-nature", "animal-mammal", "🦮"),
- EmojiItem("BISON", "animal-nature", "animal-mammal", "🦬"),
- EmojiItem("BEAVER", "animal-nature", "animal-mammal", "🦫"),
- EmojiItem("SKUNK", "animal-nature", "animal-mammal", "🦨"),
- EmojiItem("ORANGUTAN", "animal-nature", "animal-mammal", "🦧"),
- EmojiItem("OTTER", "animal-nature", "animal-mammal", "🦦"),
- EmojiItem("SLOTH", "animal-nature", "animal-mammal", "🦥"),
- EmojiItem("MAMMOTH", "animal-nature", "animal-mammal", "🦣"),
- EmojiItem("BADGER", "animal-nature", "animal-mammal", "🦡"),
- EmojiItem("RACCOON", "animal-nature", "animal-mammal", "🦝"),
- EmojiItem("HIPPOPOTAMUS", "animal-nature", "animal-mammal", "🦛"),
- EmojiItem("LLAMA", "animal-nature", "animal-mammal", "🦙"),
- EmojiItem("KANGAROO", "animal-nature", "animal-mammal", "🦘"),
- EmojiItem("HEDGEHOG", "animal-nature", "animal-mammal", "🦔"),
- EmojiItem("ZEBRA FACE", "animal-nature", "animal-mammal", "🦓"),
- EmojiItem("GIRAFFE FACE", "animal-nature", "animal-mammal", "🦒"),
- EmojiItem("RHINOCEROS", "animal-nature", "animal-mammal", "🦏"),
- EmojiItem("GORILLA", "animal-nature", "animal-mammal", "🦍"),
- EmojiItem("DEER", "animal-nature", "animal-mammal", "🦌"),
- EmojiItem("FOX FACE", "animal-nature", "animal-mammal", "🦊"),
- EmojiItem("BAT", "animal-nature", "animal-mammal", "🦇"),
- EmojiItem("UNICORN FACE", "animal-nature", "animal-mammal", "🦄"),
- EmojiItem("LION FACE", "animal-nature", "animal-mammal", "🦁"),
- EmojiItem("CHIPMUNK", "animal-nature", "animal-mammal", "🐿"),
- EmojiItem("PAW PRINTS", "animal-nature", "animal-mammal", "🐾"),
- EmojiItem("PIG NOSE", "animal-nature", "animal-mammal", "🐽"),
- EmojiItem("PANDA FACE", "animal-nature", "animal-mammal", "🐼"),
- EmojiItem("BEAR FACE", "animal-nature", "animal-mammal", "🐻"),
- EmojiItem("WOLF FACE", "animal-nature", "animal-mammal", "🐺"),
- EmojiItem("HAMSTER FACE", "animal-nature", "animal-mammal", "🐹"),
- EmojiItem("PIG FACE", "animal-nature", "animal-mammal", "🐷"),
- EmojiItem("DOG FACE", "animal-nature", "animal-mammal", "🐶"),
- EmojiItem("MONKEY FACE", "animal-nature", "animal-mammal", "🐵"),
- EmojiItem("HORSE FACE", "animal-nature", "animal-mammal", "🐴"),
- EmojiItem("CAT FACE", "animal-nature", "animal-mammal", "🐱"),
- EmojiItem("RABBIT FACE", "animal-nature", "animal-mammal", "🐰"),
- EmojiItem("TIGER FACE", "animal-nature", "animal-mammal", "🐯"),
- EmojiItem("COW FACE", "animal-nature", "animal-mammal", "🐮"),
- EmojiItem("MOUSE FACE", "animal-nature", "animal-mammal", "🐭"),
- EmojiItem("BACTRIAN CAMEL", "animal-nature", "animal-mammal", "🐫"),
- EmojiItem("DROMEDARY CAMEL", "animal-nature", "animal-mammal", "🐪"),
- EmojiItem("POODLE", "animal-nature", "animal-mammal", "🐩"),
- EmojiItem("KOALA", "animal-nature", "animal-mammal", "🐨"),
- EmojiItem("ELEPHANT", "animal-nature", "animal-mammal", "🐘"),
- EmojiItem("BOAR", "animal-nature", "animal-mammal", "🐗"),
- EmojiItem("PIG", "animal-nature", "animal-mammal", "🐖"),
- EmojiItem("DOG", "animal-nature", "animal-mammal", "🐕"),
- EmojiItem("MONKEY", "animal-nature", "animal-mammal", "🐒"),
- EmojiItem("SHEEP", "animal-nature", "animal-mammal", "🐑"),
- EmojiItem("GOAT", "animal-nature", "animal-mammal", "🐐"),
- EmojiItem("RAM", "animal-nature", "animal-mammal", "🐏"),
- EmojiItem("HORSE", "animal-nature", "animal-mammal", "🐎"),
- EmojiItem("CAT", "animal-nature", "animal-mammal", "🐈"),
- EmojiItem("RABBIT", "animal-nature", "animal-mammal", "🐇"),
- EmojiItem("LEOPARD", "animal-nature", "animal-mammal", "🐆"),
- EmojiItem("TIGER", "animal-nature", "animal-mammal", "🐅"),
- EmojiItem("COW", "animal-nature", "animal-mammal", "🐄"),
- EmojiItem("WATER BUFFALO", "animal-nature", "animal-mammal", "🐃"),
- EmojiItem("OX", "animal-nature", "animal-mammal", "🐂"),
- EmojiItem("MOUSE", "animal-nature", "animal-mammal", "🐁"),
- EmojiItem("RAT", "animal-nature", "animal-mammal", "🐀"),
- EmojiItem("SEAL", "animal-nature", "animal-marine", "🦭"),
- EmojiItem("SHARK", "animal-nature", "animal-marine", "🦈"),
- EmojiItem("SPOUTING WHALE", "animal-nature", "animal-marine", "🐳"),
- EmojiItem("DOLPHIN", "animal-nature", "animal-marine", "🐬"),
- EmojiItem("BLOWFISH", "animal-nature", "animal-marine", "🐡"),
- EmojiItem("TROPICAL FISH", "animal-nature", "animal-marine", "🐠"),
- EmojiItem("FISH", "animal-nature", "animal-marine", "🐟"),
- EmojiItem("SPIRAL SHELL", "animal-nature", "animal-marine", "🐚"),
- EmojiItem("OCTOPUS", "animal-nature", "animal-marine", "🐙"),
- EmojiItem("WHALE", "animal-nature", "animal-marine", "🐋"),
- EmojiItem("T-REX", "animal-nature", "animal-reptile", "🦖"),
- EmojiItem("SAUROPOD", "animal-nature", "animal-reptile", "🦕"),
- EmojiItem("LIZARD", "animal-nature", "animal-reptile", "🦎"),
- EmojiItem("DRAGON FACE", "animal-nature", "animal-reptile", "🐲"),
- EmojiItem("TURTLE", "animal-nature", "animal-reptile", "🐢"),
- EmojiItem("SNAKE", "animal-nature", "animal-reptile", "🐍"),
- EmojiItem("CROCODILE", "animal-nature", "animal-reptile", "🐊"),
- EmojiItem("DRAGON", "animal-nature", "animal-reptile", "🐉"),
- EmojiItem("WILTED FLOWER", "animal-nature", "plant-flower", "🥀"),
- EmojiItem("WHITE FLOWER", "animal-nature", "plant-flower", "💮"),
- EmojiItem("BOUQUET", "animal-nature", "plant-flower", "💐"),
- EmojiItem("ROSETTE", "animal-nature", "plant-flower", "🏵"),
- EmojiItem("BLOSSOM", "animal-nature", "plant-flower", "🌼"),
- EmojiItem("SUNFLOWER", "animal-nature", "plant-flower", "🌻"),
- EmojiItem("HIBISCUS", "animal-nature", "plant-flower", "🌺"),
- EmojiItem("ROSE", "animal-nature", "plant-flower", "🌹"),
- EmojiItem("CHERRY BLOSSOM", "animal-nature", "plant-flower", "🌸"),
- EmojiItem("TULIP", "animal-nature", "plant-flower", "🌷"),
- EmojiItem("SHAMROCK", "animal-nature", "plant-other", "☘"),
- EmojiItem("POTTED PLANT", "animal-nature", "plant-other", "🪴"),
- EmojiItem(
- "LEAF FLUTTERING IN WIND", "animal-nature", "plant-other", "🍃"
- ),
- EmojiItem("FALLEN LEAF", "animal-nature", "plant-other", "🍂"),
- EmojiItem("MAPLE LEAF", "animal-nature", "plant-other", "🍁"),
- EmojiItem("FOUR LEAF CLOVER", "animal-nature", "plant-other", "🍀"),
- EmojiItem("HERB", "animal-nature", "plant-other", "🌿"),
- EmojiItem("EAR OF RICE", "animal-nature", "plant-other", "🌾"),
- EmojiItem("CACTUS", "animal-nature", "plant-other", "🌵"),
- EmojiItem("PALM TREE", "animal-nature", "plant-other", "🌴"),
- EmojiItem("DECIDUOUS TREE", "animal-nature", "plant-other", "🌳"),
- EmojiItem("EVERGREEN TREE", "animal-nature", "plant-other", "🌲"),
- EmojiItem("SEEDLING", "animal-nature", "plant-other", "🌱"),
- EmojiItem(
- "EMOJI COMPONENT WHITE HAIR", "component", "hair-style", "🦳"
- ),
- EmojiItem("EMOJI COMPONENT BALD", "component", "hair-style", "🦲"),
- EmojiItem(
- "EMOJI COMPONENT CURLY HAIR", "component", "hair-style", "🦱"
- ),
- EmojiItem("EMOJI COMPONENT RED HAIR", "component", "hair-style", "🦰"),
- EmojiItem(
- "EMOJI MODIFIER FITZPATRICK TYPE-6", "component", "skin-tone", "🏿"
- ),
- EmojiItem(
- "EMOJI MODIFIER FITZPATRICK TYPE-5", "component", "skin-tone", "🏾"
- ),
- EmojiItem(
- "EMOJI MODIFIER FITZPATRICK TYPE-4", "component", "skin-tone", "🏽"
- ),
- EmojiItem(
- "EMOJI MODIFIER FITZPATRICK TYPE-3", "component", "skin-tone", "🏼"
- ),
- EmojiItem(
- "EMOJI MODIFIER FITZPATRICK TYPE-1-2",
- "component",
- "skin-tone",
- "🏻",
- ),
- EmojiItem("TRIANGULAR FLAG ON POST", "flags", "flag", "🚩"),
- EmojiItem("WAVING BLACK FLAG", "flags", "flag", "🏴"),
- EmojiItem("WAVING WHITE FLAG", "flags", "flag", "🏳"),
- EmojiItem("CHEQUERED FLAG", "flags", "flag", "🏁"),
- EmojiItem("CROSSED FLAGS", "flags", "flag", "🎌"),
- EmojiItem("CHOPSTICKS", "food-drink", "dishware", "🥢"),
- EmojiItem("SPOON", "food-drink", "dishware", "🥄"),
- EmojiItem("HOCHO", "food-drink", "dishware", "🔪"),
- EmojiItem("AMPHORA", "food-drink", "dishware", "🏺"),
- EmojiItem("FORK AND KNIFE WITH PLATE", "food-drink", "dishware", "🍽"),
- EmojiItem("FORK AND KNIFE", "food-drink", "dishware", "🍴"),
- EmojiItem("HOT BEVERAGE", "food-drink", "drink", "☕"),
- EmojiItem("TEAPOT", "food-drink", "drink", "🫖"),
- EmojiItem("BUBBLE TEA", "food-drink", "drink", "🧋"),
- EmojiItem("ICE CUBE", "food-drink", "drink", "🧊"),
- EmojiItem("MATE DRINK", "food-drink", "drink", "🧉"),
- EmojiItem("BEVERAGE BOX", "food-drink", "drink", "🧃"),
- EmojiItem("CUP WITH STRAW", "food-drink", "drink", "🥤"),
- EmojiItem("GLASS OF MILK", "food-drink", "drink", "🥛"),
- EmojiItem("TUMBLER GLASS", "food-drink", "drink", "🥃"),
- EmojiItem("CLINKING GLASSES", "food-drink", "drink", "🥂"),
- EmojiItem("BOTTLE WITH POPPING CORK", "food-drink", "drink", "🍾"),
- EmojiItem("BABY BOTTLE", "food-drink", "drink", "🍼"),
- EmojiItem("CLINKING BEER MUGS", "food-drink", "drink", "🍻"),
- EmojiItem("BEER MUG", "food-drink", "drink", "🍺"),
- EmojiItem("TROPICAL DRINK", "food-drink", "drink", "🍹"),
- EmojiItem("COCKTAIL GLASS", "food-drink", "drink", "🍸"),
- EmojiItem("WINE GLASS", "food-drink", "drink", "🍷"),
- EmojiItem("SAKE BOTTLE AND CUP", "food-drink", "drink", "🍶"),
- EmojiItem("TEACUP WITHOUT HANDLE", "food-drink", "drink", "🍵"),
- EmojiItem("MOON CAKE", "food-drink", "food-asian", "🥮"),
- EmojiItem("TAKEOUT BOX", "food-drink", "food-asian", "🥡"),
- EmojiItem("FORTUNE COOKIE", "food-drink", "food-asian", "🥠"),
- EmojiItem("DUMPLING", "food-drink", "food-asian", "🥟"),
- EmojiItem("BENTO BOX", "food-drink", "food-asian", "🍱"),
- EmojiItem(
- "FISH CAKE WITH SWIRL DESIGN", "food-drink", "food-asian", "🍥"
- ),
- EmojiItem("FRIED SHRIMP", "food-drink", "food-asian", "🍤"),
- EmojiItem("SUSHI", "food-drink", "food-asian", "🍣"),
- EmojiItem("ODEN", "food-drink", "food-asian", "🍢"),
- EmojiItem("DANGO", "food-drink", "food-asian", "🍡"),
- EmojiItem("ROASTED SWEET POTATO", "food-drink", "food-asian", "🍠"),
- EmojiItem("SPAGHETTI", "food-drink", "food-asian", "🍝"),
- EmojiItem("STEAMING BOWL", "food-drink", "food-asian", "🍜"),
- EmojiItem("CURRY AND RICE", "food-drink", "food-asian", "🍛"),
- EmojiItem("COOKED RICE", "food-drink", "food-asian", "🍚"),
- EmojiItem("RICE BALL", "food-drink", "food-asian", "🍙"),
- EmojiItem("RICE CRACKER", "food-drink", "food-asian", "🍘"),
- EmojiItem("OLIVE", "food-drink", "food-fruit", "🫒"),
- EmojiItem("BLUEBERRIES", "food-drink", "food-fruit", "🫐"),
- EmojiItem("MANGO", "food-drink", "food-fruit", "🥭"),
- EmojiItem("COCONUT", "food-drink", "food-fruit", "🥥"),
- EmojiItem("KIWIFRUIT", "food-drink", "food-fruit", "🥝"),
- EmojiItem("STRAWBERRY", "food-drink", "food-fruit", "🍓"),
- EmojiItem("CHERRIES", "food-drink", "food-fruit", "🍒"),
- EmojiItem("PEACH", "food-drink", "food-fruit", "🍑"),
- EmojiItem("PEAR", "food-drink", "food-fruit", "🍐"),
- EmojiItem("GREEN APPLE", "food-drink", "food-fruit", "🍏"),
- EmojiItem("RED APPLE", "food-drink", "food-fruit", "🍎"),
- EmojiItem("PINEAPPLE", "food-drink", "food-fruit", "🍍"),
- EmojiItem("BANANA", "food-drink", "food-fruit", "🍌"),
- EmojiItem("LEMON", "food-drink", "food-fruit", "🍋"),
- EmojiItem("TANGERINE", "food-drink", "food-fruit", "🍊"),
- EmojiItem("WATERMELON", "food-drink", "food-fruit", "🍉"),
- EmojiItem("MELON", "food-drink", "food-fruit", "🍈"),
- EmojiItem("GRAPES", "food-drink", "food-fruit", "🍇"),
- EmojiItem("TOMATO", "food-drink", "food-fruit", "🍅"),
- EmojiItem("OYSTER", "food-drink", "food-marine", "🦪"),
- EmojiItem("LOBSTER", "food-drink", "food-marine", "🦞"),
- EmojiItem("SQUID", "food-drink", "food-marine", "🦑"),
- EmojiItem("SHRIMP", "food-drink", "food-marine", "🦐"),
- EmojiItem("CRAB", "food-drink", "food-marine", "🦀"),
- EmojiItem("FONDUE", "food-drink", "food-prepared", "🫕"),
- EmojiItem("TAMALE", "food-drink", "food-prepared", "🫔"),
- EmojiItem("FLATBREAD", "food-drink", "food-prepared", "🫓"),
- EmojiItem("BUTTER", "food-drink", "food-prepared", "🧈"),
- EmojiItem("WAFFLE", "food-drink", "food-prepared", "🧇"),
- EmojiItem("FALAFEL", "food-drink", "food-prepared", "🧆"),
- EmojiItem("SALT SHAKER", "food-drink", "food-prepared", "🧂"),
- EmojiItem("CHEESE WEDGE", "food-drink", "food-prepared", "🧀"),
- EmojiItem("BAGEL", "food-drink", "food-prepared", "🥯"),
- EmojiItem("CANNED FOOD", "food-drink", "food-prepared", "🥫"),
- EmojiItem("SANDWICH", "food-drink", "food-prepared", "🥪"),
- EmojiItem("CUT OF MEAT", "food-drink", "food-prepared", "🥩"),
- EmojiItem("PRETZEL", "food-drink", "food-prepared", "🥨"),
- EmojiItem("BOWL WITH SPOON", "food-drink", "food-prepared", "🥣"),
- EmojiItem("PANCAKES", "food-drink", "food-prepared", "🥞"),
- EmojiItem("EGG", "food-drink", "food-prepared", "🥚"),
- EmojiItem("STUFFED FLATBREAD", "food-drink", "food-prepared", "🥙"),
- EmojiItem("SHALLOW PAN OF FOOD", "food-drink", "food-prepared", "🥘"),
- EmojiItem("GREEN SALAD", "food-drink", "food-prepared", "🥗"),
- EmojiItem("BAGUETTE BREAD", "food-drink", "food-prepared", "🥖"),
- EmojiItem("BACON", "food-drink", "food-prepared", "🥓"),
- EmojiItem("CROISSANT", "food-drink", "food-prepared", "🥐"),
- EmojiItem("POPCORN", "food-drink", "food-prepared", "🍿"),
- EmojiItem("COOKING", "food-drink", "food-prepared", "🍳"),
- EmojiItem("POT OF FOOD", "food-drink", "food-prepared", "🍲"),
- EmojiItem("FRENCH FRIES", "food-drink", "food-prepared", "🍟"),
- EmojiItem("BREAD", "food-drink", "food-prepared", "🍞"),
- EmojiItem("POULTRY LEG", "food-drink", "food-prepared", "🍗"),
- EmojiItem("MEAT ON BONE", "food-drink", "food-prepared", "🍖"),
- EmojiItem("SLICE OF PIZZA", "food-drink", "food-prepared", "🍕"),
- EmojiItem("HAMBURGER", "food-drink", "food-prepared", "🍔"),
- EmojiItem("BURRITO", "food-drink", "food-prepared", "🌯"),
- EmojiItem("TACO", "food-drink", "food-prepared", "🌮"),
- EmojiItem("HOT DOG", "food-drink", "food-prepared", "🌭"),
- EmojiItem("CUPCAKE", "food-drink", "food-sweet", "🧁"),
- EmojiItem("PIE", "food-drink", "food-sweet", "🥧"),
- EmojiItem("BIRTHDAY CAKE", "food-drink", "food-sweet", "🎂"),
- EmojiItem("SHORTCAKE", "food-drink", "food-sweet", "🍰"),
- EmojiItem("HONEY POT", "food-drink", "food-sweet", "🍯"),
- EmojiItem("CUSTARD", "food-drink", "food-sweet", "🍮"),
- EmojiItem("LOLLIPOP", "food-drink", "food-sweet", "🍭"),
- EmojiItem("CANDY", "food-drink", "food-sweet", "🍬"),
- EmojiItem("CHOCOLATE BAR", "food-drink", "food-sweet", "🍫"),
- EmojiItem("COOKIE", "food-drink", "food-sweet", "🍪"),
- EmojiItem("DOUGHNUT", "food-drink", "food-sweet", "🍩"),
- EmojiItem("ICE CREAM", "food-drink", "food-sweet", "🍨"),
- EmojiItem("SHAVED ICE", "food-drink", "food-sweet", "🍧"),
- EmojiItem("SOFT ICE CREAM", "food-drink", "food-sweet", "🍦"),
- EmojiItem("BELL PEPPER", "food-drink", "food-vegetable", "🫑"),
- EmojiItem("ONION", "food-drink", "food-vegetable", "🧅"),
- EmojiItem("GARLIC", "food-drink", "food-vegetable", "🧄"),
- EmojiItem("LEAFY GREEN", "food-drink", "food-vegetable", "🥬"),
- EmojiItem("BROCCOLI", "food-drink", "food-vegetable", "🥦"),
- EmojiItem("PEANUTS", "food-drink", "food-vegetable", "🥜"),
- EmojiItem("CARROT", "food-drink", "food-vegetable", "🥕"),
- EmojiItem("POTATO", "food-drink", "food-vegetable", "🥔"),
- EmojiItem("CUCUMBER", "food-drink", "food-vegetable", "🥒"),
- EmojiItem("AVOCADO", "food-drink", "food-vegetable", "🥑"),
- EmojiItem("AUBERGINE", "food-drink", "food-vegetable", "🍆"),
- EmojiItem("MUSHROOM", "food-drink", "food-vegetable", "🍄"),
- EmojiItem("EAR OF MAIZE", "food-drink", "food-vegetable", "🌽"),
- EmojiItem("HOT PEPPER", "food-drink", "food-vegetable", "🌶"),
- EmojiItem("CHESTNUT", "food-drink", "food-vegetable", "🌰"),
- EmojiItem("ROLLED-UP NEWSPAPER", "objects", "book-paper", "🗞"),
- EmojiItem("BOOKMARK", "objects", "book-paper", "🔖"),
- EmojiItem("NEWSPAPER", "objects", "book-paper", "📰"),
- EmojiItem("SCROLL", "objects", "book-paper", "📜"),
- EmojiItem("BOOKS", "objects", "book-paper", "📚"),
- EmojiItem("ORANGE BOOK", "objects", "book-paper", "📙"),
- EmojiItem("BLUE BOOK", "objects", "book-paper", "📘"),
- EmojiItem("GREEN BOOK", "objects", "book-paper", "📗"),
- EmojiItem("OPEN BOOK", "objects", "book-paper", "📖"),
- EmojiItem("CLOSED BOOK", "objects", "book-paper", "📕"),
- EmojiItem(
- "NOTEBOOK WITH DECORATIVE COVER", "objects", "book-paper", "📔"
- ),
- EmojiItem("NOTEBOOK", "objects", "book-paper", "📓"),
- EmojiItem("LEDGER", "objects", "book-paper", "📒"),
- EmojiItem("BOOKMARK TABS", "objects", "book-paper", "📑"),
- EmojiItem("PAGE FACING UP", "objects", "book-paper", "📄"),
- EmojiItem("PAGE WITH CURL", "objects", "book-paper", "📃"),
- EmojiItem("LABEL", "objects", "book-paper", "🏷"),
- EmojiItem("HELMET WITH WHITE CROSS", "objects", "clothing", "⛑"),
- EmojiItem("MILITARY HELMET", "objects", "clothing", "🪖"),
- EmojiItem("THONG SANDAL", "objects", "clothing", "🩴"),
- EmojiItem("SHORTS", "objects", "clothing", "🩳"),
- EmojiItem("BRIEFS", "objects", "clothing", "🩲"),
- EmojiItem("ONE-PIECE SWIMSUIT", "objects", "clothing", "🩱"),
- EmojiItem("BALLET SHOES", "objects", "clothing", "🩰"),
- EmojiItem("SOCKS", "objects", "clothing", "🧦"),
- EmojiItem("COAT", "objects", "clothing", "🧥"),
- EmojiItem("GLOVES", "objects", "clothing", "🧤"),
- EmojiItem("SCARF", "objects", "clothing", "🧣"),
- EmojiItem("BILLED CAP", "objects", "clothing", "🧢"),
- EmojiItem("SAFETY VEST", "objects", "clothing", "🦺"),
- EmojiItem("FLAT SHOE", "objects", "clothing", "🥿"),
- EmojiItem("HIKING BOOT", "objects", "clothing", "🥾"),
- EmojiItem("GOGGLES", "objects", "clothing", "🥽"),
- EmojiItem("LAB COAT", "objects", "clothing", "🥼"),
- EmojiItem("SARI", "objects", "clothing", "🥻"),
- EmojiItem("SHOPPING BAGS", "objects", "clothing", "🛍"),
- EmojiItem("DARK SUNGLASSES", "objects", "clothing", "🕶"),
- EmojiItem("PRAYER BEADS", "objects", "clothing", "📿"),
- EmojiItem("GEM STONE", "objects", "clothing", "💎"),
- EmojiItem("RING", "objects", "clothing", "💍"),
- EmojiItem("LIPSTICK", "objects", "clothing", "💄"),
- EmojiItem("WOMANS BOOTS", "objects", "clothing", "👢"),
- EmojiItem("WOMANS SANDAL", "objects", "clothing", "👡"),
- EmojiItem("HIGH-HEELED SHOE", "objects", "clothing", "👠"),
- EmojiItem("ATHLETIC SHOE", "objects", "clothing", "👟"),
- EmojiItem("MANS SHOE", "objects", "clothing", "👞"),
- EmojiItem("POUCH", "objects", "clothing", "👝"),
- EmojiItem("HANDBAG", "objects", "clothing", "👜"),
- EmojiItem("PURSE", "objects", "clothing", "👛"),
- EmojiItem("WOMANS CLOTHES", "objects", "clothing", "👚"),
- EmojiItem("BIKINI", "objects", "clothing", "👙"),
- EmojiItem("KIMONO", "objects", "clothing", "👘"),
- EmojiItem("DRESS", "objects", "clothing", "👗"),
- EmojiItem("JEANS", "objects", "clothing", "👖"),
- EmojiItem("T-SHIRT", "objects", "clothing", "👕"),
- EmojiItem("NECKTIE", "objects", "clothing", "👔"),
- EmojiItem("EYEGLASSES", "objects", "clothing", "👓"),
- EmojiItem("WOMANS HAT", "objects", "clothing", "👒"),
- EmojiItem("CROWN", "objects", "clothing", "👑"),
- EmojiItem("TOP HAT", "objects", "clothing", "🎩"),
- EmojiItem("GRADUATION CAP", "objects", "clothing", "🎓"),
- EmojiItem("SCHOOL SATCHEL", "objects", "clothing", "🎒"),
- EmojiItem("KEYBOARD", "objects", "computer", "⌨"),
- EmojiItem("ABACUS", "objects", "computer", "🧮"),
- EmojiItem("TRACKBALL", "objects", "computer", "🖲"),
- EmojiItem("THREE BUTTON MOUSE", "objects", "computer", "🖱"),
- EmojiItem("PRINTER", "objects", "computer", "🖨"),
- EmojiItem("DESKTOP COMPUTER", "objects", "computer", "🖥"),
- EmojiItem("ELECTRIC PLUG", "objects", "computer", "🔌"),
- EmojiItem("BATTERY", "objects", "computer", "🔋"),
- EmojiItem("DVD", "objects", "computer", "📀"),
- EmojiItem("OPTICAL DISC", "objects", "computer", "💿"),
- EmojiItem("FLOPPY DISK", "objects", "computer", "💾"),
- EmojiItem("MINIDISC", "objects", "computer", "💽"),
- EmojiItem("PERSONAL COMPUTER", "objects", "computer", "💻"),
- EmojiItem("TOOTHBRUSH", "objects", "household", "🪥"),
- EmojiItem("MOUSE TRAP", "objects", "household", "🪤"),
- EmojiItem("BUCKET", "objects", "household", "🪣"),
- EmojiItem("PLUNGER", "objects", "household", "🪠"),
- EmojiItem("WINDOW", "objects", "household", "🪟"),
- EmojiItem("MIRROR", "objects", "household", "🪞"),
- EmojiItem("RAZOR", "objects", "household", "🪒"),
- EmojiItem("CHAIR", "objects", "household", "🪑"),
- EmojiItem("SPONGE", "objects", "household", "🧽"),
- EmojiItem("BAR OF SOAP", "objects", "household", "🧼"),
- EmojiItem("ROLL OF PAPER", "objects", "household", "🧻"),
- EmojiItem("BASKET", "objects", "household", "🧺"),
- EmojiItem("BROOM", "objects", "household", "🧹"),
- EmojiItem("SAFETY PIN", "objects", "household", "🧷"),
- EmojiItem("LOTION BOTTLE", "objects", "household", "🧴"),
- EmojiItem("FIRE EXTINGUISHER", "objects", "household", "🧯"),
- EmojiItem("ELEVATOR", "objects", "household", "🛗"),
- EmojiItem("SHOPPING TROLLEY", "objects", "household", "🛒"),
- EmojiItem("BED", "objects", "household", "🛏"),
- EmojiItem("COUCH AND LAMP", "objects", "household", "🛋"),
- EmojiItem("BATHTUB", "objects", "household", "🛁"),
- EmojiItem("SHOWER", "objects", "household", "🚿"),
- EmojiItem("TOILET", "objects", "household", "🚽"),
- EmojiItem("DOOR", "objects", "household", "🚪"),
- EmojiItem("DIYA LAMP", "objects", "light & video", "🪔"),
- EmojiItem("CANDLE", "objects", "light & video", "🕯"),
- EmojiItem("ELECTRIC TORCH", "objects", "light & video", "🔦"),
- EmojiItem(
- "RIGHT-POINTING MAGNIFYING GLASS", "objects", "light & video", "🔎"
- ),
- EmojiItem(
- "LEFT-POINTING MAGNIFYING GLASS", "objects", "light & video", "🔍"
- ),
- EmojiItem("FILM PROJECTOR", "objects", "light & video", "📽"),
- EmojiItem("VIDEOCASSETTE", "objects", "light & video", "📼"),
- EmojiItem("TELEVISION", "objects", "light & video", "📺"),
- EmojiItem("VIDEO CAMERA", "objects", "light & video", "📹"),
- EmojiItem("CAMERA WITH FLASH", "objects", "light & video", "📸"),
- EmojiItem("CAMERA", "objects", "light & video", "📷"),
- EmojiItem("ELECTRIC LIGHT BULB", "objects", "light & video", "💡"),
- EmojiItem("IZAKAYA LANTERN", "objects", "light & video", "🏮"),
- EmojiItem("CLAPPER BOARD", "objects", "light & video", "🎬"),
- EmojiItem("MOVIE CAMERA", "objects", "light & video", "🎥"),
- EmojiItem("FILM FRAMES", "objects", "light & video", "🎞"),
- EmojiItem("OLD KEY", "objects", "lock", "🗝"),
- EmojiItem("OPEN LOCK", "objects", "lock", "🔓"),
- EmojiItem("LOCK", "objects", "lock", "🔒"),
- EmojiItem("KEY", "objects", "lock", "🔑"),
- EmojiItem("CLOSED LOCK WITH KEY", "objects", "lock", "🔐"),
- EmojiItem("LOCK WITH INK PEN", "objects", "lock", "🔏"),
- EmojiItem("ENVELOPE", "objects", "mail", "✉"),
- EmojiItem("BALLOT BOX WITH BALLOT", "objects", "mail", "🗳"),
- EmojiItem("POSTBOX", "objects", "mail", "📮"),
- EmojiItem("OPEN MAILBOX WITH LOWERED FLAG", "objects", "mail", "📭"),
- EmojiItem("OPEN MAILBOX WITH RAISED FLAG", "objects", "mail", "📬"),
- EmojiItem("CLOSED MAILBOX WITH RAISED FLAG", "objects", "mail", "📫"),
- EmojiItem("CLOSED MAILBOX WITH LOWERED FLAG", "objects", "mail", "📪"),
- EmojiItem(
- "ENVELOPE WITH DOWNWARDS ARROW ABOVE", "objects", "mail", "📩"
- ),
- EmojiItem("INCOMING ENVELOPE", "objects", "mail", "📨"),
- EmojiItem("E-MAIL SYMBOL", "objects", "mail", "📧"),
- EmojiItem("PACKAGE", "objects", "mail", "📦"),
- EmojiItem("INBOX TRAY", "objects", "mail", "📥"),
- EmojiItem("OUTBOX TRAY", "objects", "mail", "📤"),
- EmojiItem("STETHOSCOPE", "objects", "medical", "🩺"),
- EmojiItem("ADHESIVE BANDAGE", "objects", "medical", "🩹"),
- EmojiItem("DROP OF BLOOD", "objects", "medical", "🩸"),
- EmojiItem("PILL", "objects", "medical", "💊"),
- EmojiItem("SYRINGE", "objects", "medical", "💉"),
- EmojiItem("COIN", "objects", "money", "🪙"),
- EmojiItem("RECEIPT", "objects", "money", "🧾"),
- EmojiItem(
- "CHART WITH UPWARDS TREND AND YEN SIGN", "objects", "money", "💹"
- ),
- EmojiItem("MONEY WITH WINGS", "objects", "money", "💸"),
- EmojiItem("BANKNOTE WITH POUND SIGN", "objects", "money", "💷"),
- EmojiItem("BANKNOTE WITH EURO SIGN", "objects", "money", "💶"),
- EmojiItem("BANKNOTE WITH DOLLAR SIGN", "objects", "money", "💵"),
- EmojiItem("BANKNOTE WITH YEN SIGN", "objects", "money", "💴"),
- EmojiItem("CREDIT CARD", "objects", "money", "💳"),
- EmojiItem("MONEY BAG", "objects", "money", "💰"),
- EmojiItem("RADIO", "objects", "music", "📻"),
- EmojiItem("MUSICAL SCORE", "objects", "music", "🎼"),
- EmojiItem("MULTIPLE MUSICAL NOTES", "objects", "music", "🎶"),
- EmojiItem("MUSICAL NOTE", "objects", "music", "🎵"),
- EmojiItem("HEADPHONE", "objects", "music", "🎧"),
- EmojiItem("MICROPHONE", "objects", "music", "🎤"),
- EmojiItem("CONTROL KNOBS", "objects", "music", "🎛"),
- EmojiItem("LEVEL SLIDER", "objects", "music", "🎚"),
- EmojiItem("STUDIO MICROPHONE", "objects", "music", "🎙"),
- EmojiItem("LONG DRUM", "objects", "musical-instrument", "🪘"),
- EmojiItem("ACCORDION", "objects", "musical-instrument", "🪗"),
- EmojiItem("BANJO", "objects", "musical-instrument", "🪕"),
- EmojiItem(
- "DRUM WITH DRUMSTICKS", "objects", "musical-instrument", "🥁"
- ),
- EmojiItem("VIOLIN", "objects", "musical-instrument", "🎻"),
- EmojiItem("TRUMPET", "objects", "musical-instrument", "🎺"),
- EmojiItem("MUSICAL KEYBOARD", "objects", "musical-instrument", "🎹"),
- EmojiItem("GUITAR", "objects", "musical-instrument", "🎸"),
- EmojiItem("SAXOPHONE", "objects", "musical-instrument", "🎷"),
- EmojiItem("BLACK SCISSORS", "objects", "office", "✂"),
- EmojiItem("SPIRAL CALENDAR PAD", "objects", "office", "🗓"),
- EmojiItem("SPIRAL NOTE PAD", "objects", "office", "🗒"),
- EmojiItem("WASTEBASKET", "objects", "office", "🗑"),
- EmojiItem("FILE CABINET", "objects", "office", "🗄"),
- EmojiItem("CARD FILE BOX", "objects", "office", "🗃"),
- EmojiItem("CARD INDEX DIVIDERS", "objects", "office", "🗂"),
- EmojiItem("LINKED PAPERCLIPS", "objects", "office", "🖇"),
- EmojiItem("TRIANGULAR RULER", "objects", "office", "📐"),
- EmojiItem("STRAIGHT RULER", "objects", "office", "📏"),
- EmojiItem("PAPERCLIP", "objects", "office", "📎"),
- EmojiItem("ROUND PUSHPIN", "objects", "office", "📍"),
- EmojiItem("PUSHPIN", "objects", "office", "📌"),
- EmojiItem("CLIPBOARD", "objects", "office", "📋"),
- EmojiItem("BAR CHART", "objects", "office", "📊"),
- EmojiItem("CHART WITH DOWNWARDS TREND", "objects", "office", "📉"),
- EmojiItem("CHART WITH UPWARDS TREND", "objects", "office", "📈"),
- EmojiItem("CARD INDEX", "objects", "office", "📇"),
- EmojiItem("TEAR-OFF CALENDAR", "objects", "office", "📆"),
- EmojiItem("CALENDAR", "objects", "office", "📅"),
- EmojiItem("OPEN FILE FOLDER", "objects", "office", "📂"),
- EmojiItem("FILE FOLDER", "objects", "office", "📁"),
- EmojiItem("BRIEFCASE", "objects", "office", "💼"),
- EmojiItem("FUNERAL URN", "objects", "other-object", "⚱"),
- EmojiItem("COFFIN", "objects", "other-object", "⚰"),
- EmojiItem("PLACARD", "objects", "other-object", "🪧"),
- EmojiItem("HEADSTONE", "objects", "other-object", "🪦"),
- EmojiItem("SMOKING SYMBOL", "objects", "other-object", "🚬"),
- EmojiItem("MOYAI", "objects", "other-object", "🗿"),
- EmojiItem("BLACK TELEPHONE", "objects", "phone", "☎"),
- EmojiItem(
- "MOBILE PHONE WITH RIGHTWARDS ARROW AT LEFT",
- "objects",
- "phone",
- "📲",
- ),
- EmojiItem("MOBILE PHONE", "objects", "phone", "📱"),
- EmojiItem("FAX MACHINE", "objects", "phone", "📠"),
- EmojiItem("PAGER", "objects", "phone", "📟"),
- EmojiItem("TELEPHONE RECEIVER", "objects", "phone", "📞"),
- EmojiItem("ALEMBIC", "objects", "science", "⚗"),
- EmojiItem("DNA DOUBLE HELIX", "objects", "science", "🧬"),
- EmojiItem("PETRI DISH", "objects", "science", "🧫"),
- EmojiItem("TEST TUBE", "objects", "science", "🧪"),
- EmojiItem("TELESCOPE", "objects", "science", "🔭"),
- EmojiItem("MICROSCOPE", "objects", "science", "🔬"),
- EmojiItem("SATELLITE ANTENNA", "objects", "science", "📡"),
- EmojiItem("BELL WITH CANCELLATION STROKE", "objects", "sound", "🔕"),
- EmojiItem("BELL", "objects", "sound", "🔔"),
- EmojiItem("SPEAKER WITH THREE SOUND WAVES", "objects", "sound", "🔊"),
- EmojiItem("SPEAKER WITH ONE SOUND WAVE", "objects", "sound", "🔉"),
- EmojiItem("SPEAKER", "objects", "sound", "🔈"),
- EmojiItem("SPEAKER WITH CANCELLATION STROKE", "objects", "sound", "🔇"),
- EmojiItem("POSTAL HORN", "objects", "sound", "📯"),
- EmojiItem("CHEERING MEGAPHONE", "objects", "sound", "📣"),
- EmojiItem("PUBLIC ADDRESS LOUDSPEAKER", "objects", "sound", "📢"),
- EmojiItem("CHAINS", "objects", "tool", "⛓"),
- EmojiItem("PICK", "objects", "tool", "⛏"),
- EmojiItem("GEAR", "objects", "tool", "⚙"),
- EmojiItem("SCALES", "objects", "tool", "⚖"),
- EmojiItem("CROSSED SWORDS", "objects", "tool", "⚔"),
- EmojiItem("HAMMER AND PICK", "objects", "tool", "⚒"),
- EmojiItem("HOOK", "objects", "tool", "🪝"),
- EmojiItem("LADDER", "objects", "tool", "🪜"),
- EmojiItem("SCREWDRIVER", "objects", "tool", "🪛"),
- EmojiItem("CARPENTRY SAW", "objects", "tool", "🪚"),
- EmojiItem("AXE", "objects", "tool", "🪓"),
- EmojiItem("BOOMERANG", "objects", "tool", "🪃"),
- EmojiItem("MAGNET", "objects", "tool", "🧲"),
- EmojiItem("TOOLBOX", "objects", "tool", "🧰"),
- EmojiItem("PROBING CANE", "objects", "tool", "🦯"),
- EmojiItem("SHIELD", "objects", "tool", "🛡"),
- EmojiItem("HAMMER AND WRENCH", "objects", "tool", "🛠"),
- EmojiItem("DAGGER KNIFE", "objects", "tool", "🗡"),
- EmojiItem("COMPRESSION", "objects", "tool", "🗜"),
- EmojiItem("PISTOL", "objects", "tool", "🔫"),
- EmojiItem("NUT AND BOLT", "objects", "tool", "🔩"),
- EmojiItem("HAMMER", "objects", "tool", "🔨"),
- EmojiItem("WRENCH", "objects", "tool", "🔧"),
- EmojiItem("LINK SYMBOL", "objects", "tool", "🔗"),
- EmojiItem("BOW AND ARROW", "objects", "tool", "🏹"),
- EmojiItem("PENCIL", "objects", "writing", "✏"),
- EmojiItem("BLACK NIB", "objects", "writing", "✒"),
- EmojiItem("LOWER LEFT CRAYON", "objects", "writing", "🖍"),
- EmojiItem("LOWER LEFT PAINTBRUSH", "objects", "writing", "🖌"),
- EmojiItem("LOWER LEFT FOUNTAIN PEN", "objects", "writing", "🖋"),
- EmojiItem("LOWER LEFT BALLPOINT PEN", "objects", "writing", "🖊"),
- EmojiItem("MEMO", "objects", "writing", "📝"),
- EmojiItem("LUNGS", "people-body", "body-parts", "🫁"),
- EmojiItem("ANATOMICAL HEART", "people-body", "body-parts", "🫀"),
- EmojiItem("BRAIN", "people-body", "body-parts", "🧠"),
- EmojiItem("MECHANICAL LEG", "people-body", "body-parts", "🦿"),
- EmojiItem("MECHANICAL ARM", "people-body", "body-parts", "🦾"),
- EmojiItem("EAR WITH HEARING AID", "people-body", "body-parts", "🦻"),
- EmojiItem("TOOTH", "people-body", "body-parts", "🦷"),
- EmojiItem("FOOT", "people-body", "body-parts", "🦶"),
- EmojiItem("LEG", "people-body", "body-parts", "🦵"),
- EmojiItem("BONE", "people-body", "body-parts", "🦴"),
- EmojiItem("FLEXED BICEPS", "people-body", "body-parts", "💪"),
- EmojiItem("TONGUE", "people-body", "body-parts", "👅"),
- EmojiItem("MOUTH", "people-body", "body-parts", "👄"),
- EmojiItem("NOSE", "people-body", "body-parts", "👃"),
- EmojiItem("EAR", "people-body", "body-parts", "👂"),
- EmojiItem("EYE", "people-body", "body-parts", "👁"),
- EmojiItem("EYES", "people-body", "body-parts", "👀"),
- EmojiItem("COUPLE WITH HEART", "people-body", "family", "💑"),
- EmojiItem("KISS", "people-body", "family", "💏"),
- EmojiItem("TWO WOMEN HOLDING HANDS", "people-body", "family", "👭"),
- EmojiItem("TWO MEN HOLDING HANDS", "people-body", "family", "👬"),
- EmojiItem("MAN AND WOMAN HOLDING HANDS", "people-body", "family", "👫"),
- EmojiItem("FAMILY", "people-body", "family", "👪"),
- EmojiItem("RAISED FIST", "people-body", "hand-fingers-closed", "✊"),
- EmojiItem(
- "RIGHT-FACING FIST", "people-body", "hand-fingers-closed", "🤜"
- ),
- EmojiItem(
- "LEFT-FACING FIST", "people-body", "hand-fingers-closed", "🤛"
- ),
- EmojiItem(
- "THUMBS DOWN SIGN", "people-body", "hand-fingers-closed", "👎"
- ),
- EmojiItem("THUMBS UP SIGN", "people-body", "hand-fingers-closed", "👍"),
- EmojiItem(
- "FISTED HAND SIGN", "people-body", "hand-fingers-closed", "👊"
- ),
- EmojiItem("RAISED HAND", "people-body", "hand-fingers-open", "✋"),
- EmojiItem(
- "RAISED BACK OF HAND", "people-body", "hand-fingers-open", "🤚"
- ),
- EmojiItem(
- "RAISED HAND WITH PART BETWEEN MIDDLE AND RING FINGERS",
- "people-body",
- "hand-fingers-open",
- "🖖",
- ),
- EmojiItem(
- "RAISED HAND WITH FINGERS SPLAYED",
- "people-body",
- "hand-fingers-open",
- "🖐",
- ),
- EmojiItem("WAVING HAND SIGN", "people-body", "hand-fingers-open", "👋"),
- EmojiItem("VICTORY HAND", "people-body", "hand-fingers-partial", "✌"),
- EmojiItem(
- "I LOVE YOU HAND SIGN", "people-body", "hand-fingers-partial", "🤟"
- ),
- EmojiItem(
- "HAND WITH INDEX AND MIDDLE FINGERS CROSSED",
- "people-body",
- "hand-fingers-partial",
- "🤞",
- ),
- EmojiItem("CALL ME HAND", "people-body", "hand-fingers-partial", "🤙"),
- EmojiItem(
- "SIGN OF THE HORNS", "people-body", "hand-fingers-partial", "🤘"
- ),
- EmojiItem("PINCHING HAND", "people-body", "hand-fingers-partial", "🤏"),
- EmojiItem(
- "PINCHED FINGERS", "people-body", "hand-fingers-partial", "🤌"
- ),
- EmojiItem("OK HAND SIGN", "people-body", "hand-fingers-partial", "👌"),
- EmojiItem("WRITING HAND", "people-body", "hand-prop", "✍"),
- EmojiItem("SELFIE", "people-body", "hand-prop", "🤳"),
- EmojiItem("NAIL POLISH", "people-body", "hand-prop", "💅"),
- EmojiItem("PALMS UP TOGETHER", "people-body", "hands", "🤲"),
- EmojiItem("HANDSHAKE", "people-body", "hands", "🤝"),
- EmojiItem("PERSON WITH FOLDED HANDS", "people-body", "hands", "🙏"),
- EmojiItem(
- "PERSON RAISING BOTH HANDS IN CELEBRATION",
- "people-body",
- "hands",
- "🙌",
- ),
- EmojiItem("OPEN HANDS SIGN", "people-body", "hands", "👐"),
- EmojiItem("CLAPPING HANDS SIGN", "people-body", "hands", "👏"),
- EmojiItem(
- "WHITE UP POINTING INDEX", "people-body", "hand-single-finger", "☝"
- ),
- EmojiItem(
- "REVERSED HAND WITH MIDDLE FINGER EXTENDED",
- "people-body",
- "hand-single-finger",
- "🖕",
- ),
- EmojiItem(
- "WHITE RIGHT POINTING BACKHAND INDEX",
- "people-body",
- "hand-single-finger",
- "👉",
- ),
- EmojiItem(
- "WHITE LEFT POINTING BACKHAND INDEX",
- "people-body",
- "hand-single-finger",
- "👈",
- ),
- EmojiItem(
- "WHITE DOWN POINTING BACKHAND INDEX",
- "people-body",
- "hand-single-finger",
- "👇",
- ),
- EmojiItem(
- "WHITE UP POINTING BACKHAND INDEX",
- "people-body",
- "hand-single-finger",
- "👆",
- ),
- EmojiItem("BEARDED PERSON", "people-body", "person", "🧔"),
- EmojiItem("OLDER ADULT", "people-body", "person", "🧓"),
- EmojiItem("CHILD", "people-body", "person", "🧒"),
- EmojiItem("ADULT", "people-body", "person", "🧑"),
- EmojiItem("BABY", "people-body", "person", "👶"),
- EmojiItem("OLDER WOMAN", "people-body", "person", "👵"),
- EmojiItem("OLDER MAN", "people-body", "person", "👴"),
- EmojiItem("PERSON WITH BLOND HAIR", "people-body", "person", "👱"),
- EmojiItem("WOMAN", "people-body", "person", "👩"),
- EmojiItem("MAN", "people-body", "person", "👨"),
- EmojiItem("GIRL", "people-body", "person", "👧"),
- EmojiItem("BOY", "people-body", "person", "👦"),
- EmojiItem("PERSON CLIMBING", "people-body", "person-activity", "🧗"),
- EmojiItem(
- "PERSON IN STEAMY ROOM", "people-body", "person-activity", "🧖"
- ),
- EmojiItem("KNEELING PERSON", "people-body", "person-activity", "🧎"),
- EmojiItem("STANDING PERSON", "people-body", "person-activity", "🧍"),
- EmojiItem("PEDESTRIAN", "people-body", "person-activity", "🚶"),
- EmojiItem("MAN DANCING", "people-body", "person-activity", "🕺"),
- EmojiItem(
- "MAN IN BUSINESS SUIT LEVITATING",
- "people-body",
- "person-activity",
- "🕴",
- ),
- EmojiItem("HAIRCUT", "people-body", "person-activity", "💇"),
- EmojiItem("FACE MASSAGE", "people-body", "person-activity", "💆"),
- EmojiItem("DANCER", "people-body", "person-activity", "💃"),
- EmojiItem(
- "WOMAN WITH BUNNY EARS", "people-body", "person-activity", "👯"
- ),
- EmojiItem("RUNNER", "people-body", "person-activity", "🏃"),
- EmojiItem("ZOMBIE", "people-body", "person-fantasy", "🧟"),
- EmojiItem("GENIE", "people-body", "person-fantasy", "🧞"),
- EmojiItem("ELF", "people-body", "person-fantasy", "🧝"),
- EmojiItem("MERPERSON", "people-body", "person-fantasy", "🧜"),
- EmojiItem("VAMPIRE", "people-body", "person-fantasy", "🧛"),
- EmojiItem("FAIRY", "people-body", "person-fantasy", "🧚"),
- EmojiItem("MAGE", "people-body", "person-fantasy", "🧙"),
- EmojiItem("SUPERVILLAIN", "people-body", "person-fantasy", "🦹"),
- EmojiItem("SUPERHERO", "people-body", "person-fantasy", "🦸"),
- EmojiItem("MOTHER CHRISTMAS", "people-body", "person-fantasy", "🤶"),
- EmojiItem("BABY ANGEL", "people-body", "person-fantasy", "👼"),
- EmojiItem("FATHER CHRISTMAS", "people-body", "person-fantasy", "🎅"),
- EmojiItem("DEAF PERSON", "people-body", "person-gesture", "🧏"),
- EmojiItem("SHRUG", "people-body", "person-gesture", "🤷"),
- EmojiItem("FACE PALM", "people-body", "person-gesture", "🤦"),
- EmojiItem(
- "PERSON WITH POUTING FACE", "people-body", "person-gesture", "🙎"
- ),
- EmojiItem("PERSON FROWNING", "people-body", "person-gesture", "🙍"),
- EmojiItem(
- "HAPPY PERSON RAISING ONE HAND",
- "people-body",
- "person-gesture",
- "🙋",
- ),
- EmojiItem(
- "PERSON BOWING DEEPLY", "people-body", "person-gesture", "🙇"
- ),
- EmojiItem(
- "FACE WITH OK GESTURE", "people-body", "person-gesture", "🙆"
- ),
- EmojiItem(
- "FACE WITH NO GOOD GESTURE", "people-body", "person-gesture", "🙅"
- ),
- EmojiItem(
- "INFORMATION DESK PERSON", "people-body", "person-gesture", "💁"
- ),
- EmojiItem(
- "PERSON IN LOTUS POSITION", "people-body", "person-resting", "🧘"
- ),
- EmojiItem(
- "SLEEPING ACCOMMODATION", "people-body", "person-resting", "🛌"
- ),
- EmojiItem("BATH", "people-body", "person-resting", "🛀"),
- EmojiItem("PERSON WITH HEADSCARF", "people-body", "person-role", "🧕"),
- EmojiItem("NINJA", "people-body", "person-role", "🥷"),
- EmojiItem("MAN IN TUXEDO", "people-body", "person-role", "🤵"),
- EmojiItem("PRINCE", "people-body", "person-role", "🤴"),
- EmojiItem("BREAST-FEEDING", "people-body", "person-role", "🤱"),
- EmojiItem("PREGNANT WOMAN", "people-body", "person-role", "🤰"),
- EmojiItem("SLEUTH OR SPY", "people-body", "person-role", "🕵"),
- EmojiItem("GUARDSMAN", "people-body", "person-role", "💂"),
- EmojiItem("PRINCESS", "people-body", "person-role", "👸"),
- EmojiItem("CONSTRUCTION WORKER", "people-body", "person-role", "👷"),
- EmojiItem("MAN WITH TURBAN", "people-body", "person-role", "👳"),
- EmojiItem("MAN WITH GUA PI MAO", "people-body", "person-role", "👲"),
- EmojiItem("BRIDE WITH VEIL", "people-body", "person-role", "👰"),
- EmojiItem("POLICE OFFICER", "people-body", "person-role", "👮"),
- EmojiItem("PERSON WITH BALL", "people-body", "person-sport", "⛹"),
- EmojiItem("SKIER", "people-body", "person-sport", "⛷"),
- EmojiItem("HANDBALL", "people-body", "person-sport", "🤾"),
- EmojiItem("WATER POLO", "people-body", "person-sport", "🤽"),
- EmojiItem("WRESTLERS", "people-body", "person-sport", "🤼"),
- EmojiItem("FENCER", "people-body", "person-sport", "🤺"),
- EmojiItem("JUGGLING", "people-body", "person-sport", "🤹"),
- EmojiItem(
- "PERSON DOING CARTWHEEL", "people-body", "person-sport", "🤸"
- ),
- EmojiItem("MOUNTAIN BICYCLIST", "people-body", "person-sport", "🚵"),
- EmojiItem("BICYCLIST", "people-body", "person-sport", "🚴"),
- EmojiItem("ROWBOAT", "people-body", "person-sport", "🚣"),
- EmojiItem("GOLFER", "people-body", "person-sport", "🏌"),
- EmojiItem("WEIGHT LIFTER", "people-body", "person-sport", "🏋"),
- EmojiItem("SWIMMER", "people-body", "person-sport", "🏊"),
- EmojiItem("HORSE RACING", "people-body", "person-sport", "🏇"),
- EmojiItem("SURFER", "people-body", "person-sport", "🏄"),
- EmojiItem("SNOWBOARDER", "people-body", "person-sport", "🏂"),
- EmojiItem("PEOPLE HUGGING", "people-body", "person-symbol", "🫂"),
- EmojiItem(
- "SPEAKING HEAD IN SILHOUETTE", "people-body", "person-symbol", "🗣"
- ),
- EmojiItem("BUSTS IN SILHOUETTE", "people-body", "person-symbol", "👥"),
- EmojiItem("BUST IN SILHOUETTE", "people-body", "person-symbol", "👤"),
- EmojiItem("FOOTPRINTS", "people-body", "person-symbol", "👣"),
- EmojiItem(
- "CIRCLED LATIN CAPITAL LETTER M", "symbols", "alphanum", "Ⓜ"
- ),
- EmojiItem("CIRCLED IDEOGRAPH SECRET", "symbols", "alphanum", "㊙"),
- EmojiItem(
- "CIRCLED IDEOGRAPH CONGRATULATION", "symbols", "alphanum", "㊗"
- ),
- EmojiItem("INFORMATION SOURCE", "symbols", "alphanum", "ℹ"),
- EmojiItem(
- "INPUT SYMBOL FOR LATIN LETTERS", "symbols", "alphanum", "🔤"
- ),
- EmojiItem("INPUT SYMBOL FOR SYMBOLS", "symbols", "alphanum", "🔣"),
- EmojiItem("INPUT SYMBOL FOR NUMBERS", "symbols", "alphanum", "🔢"),
- EmojiItem(
- "INPUT SYMBOL FOR LATIN SMALL LETTERS", "symbols", "alphanum", "🔡"
- ),
- EmojiItem(
- "INPUT SYMBOL FOR LATIN CAPITAL LETTERS",
- "symbols",
- "alphanum",
- "🔠",
- ),
- EmojiItem("CIRCLED IDEOGRAPH ACCEPT", "symbols", "alphanum", "🉑"),
- EmojiItem("CIRCLED IDEOGRAPH ADVANTAGE", "symbols", "alphanum", "🉐"),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-55B6", "symbols", "alphanum", "🈺"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-5272", "symbols", "alphanum", "🈹"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-7533", "symbols", "alphanum", "🈸"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-6708", "symbols", "alphanum", "🈷"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-6709", "symbols", "alphanum", "🈶"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-6E80", "symbols", "alphanum", "🈵"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-5408", "symbols", "alphanum", "🈴"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-7A7A", "symbols", "alphanum", "🈳"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-7981", "symbols", "alphanum", "🈲"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-6307", "symbols", "alphanum", "🈯"
- ),
- EmojiItem(
- "SQUARED CJK UNIFIED IDEOGRAPH-7121", "symbols", "alphanum", "🈚"
- ),
- EmojiItem("SQUARED KATAKANA SA", "symbols", "alphanum", "🈂"),
- EmojiItem("SQUARED KATAKANA KOKO", "symbols", "alphanum", "🈁"),
- EmojiItem("SQUARED VS", "symbols", "alphanum", "🆚"),
- EmojiItem(
- "SQUARED UP WITH EXCLAMATION MARK", "symbols", "alphanum", "🆙"
- ),
- EmojiItem("SQUARED SOS", "symbols", "alphanum", "🆘"),
- EmojiItem("SQUARED OK", "symbols", "alphanum", "🆗"),
- EmojiItem("SQUARED NG", "symbols", "alphanum", "🆖"),
- EmojiItem("SQUARED NEW", "symbols", "alphanum", "🆕"),
- EmojiItem("SQUARED ID", "symbols", "alphanum", "🆔"),
- EmojiItem("SQUARED FREE", "symbols", "alphanum", "🆓"),
- EmojiItem("SQUARED COOL", "symbols", "alphanum", "🆒"),
- EmojiItem("SQUARED CL", "symbols", "alphanum", "🆑"),
- EmojiItem("NEGATIVE SQUARED AB", "symbols", "alphanum", "🆎"),
- EmojiItem(
- "NEGATIVE SQUARED LATIN CAPITAL LETTER P",
- "symbols",
- "alphanum",
- "🅿",
- ),
- EmojiItem(
- "NEGATIVE SQUARED LATIN CAPITAL LETTER O",
- "symbols",
- "alphanum",
- "🅾",
- ),
- EmojiItem(
- "NEGATIVE SQUARED LATIN CAPITAL LETTER B",
- "symbols",
- "alphanum",
- "🅱",
- ),
- EmojiItem(
- "NEGATIVE SQUARED LATIN CAPITAL LETTER A",
- "symbols",
- "alphanum",
- "🅰",
- ),
- EmojiItem("DOWNWARDS BLACK ARROW", "symbols", "arrow", "⬇"),
- EmojiItem("UPWARDS BLACK ARROW", "symbols", "arrow", "⬆"),
- EmojiItem("LEFTWARDS BLACK ARROW", "symbols", "arrow", "⬅"),
- EmojiItem("BLACK RIGHTWARDS ARROW", "symbols", "arrow", "➡"),
- EmojiItem("RIGHTWARDS ARROW WITH HOOK", "symbols", "arrow", "↪"),
- EmojiItem("LEFTWARDS ARROW WITH HOOK", "symbols", "arrow", "↩"),
- EmojiItem(
- "ARROW POINTING RIGHTWARDS THEN CURVING DOWNWARDS",
- "symbols",
- "arrow",
- "⤵",
- ),
- EmojiItem(
- "ARROW POINTING RIGHTWARDS THEN CURVING UPWARDS",
- "symbols",
- "arrow",
- "⤴",
- ),
- EmojiItem("SOUTH WEST ARROW", "symbols", "arrow", "↙"),
- EmojiItem("SOUTH EAST ARROW", "symbols", "arrow", "↘"),
- EmojiItem("NORTH EAST ARROW", "symbols", "arrow", "↗"),
- EmojiItem("NORTH WEST ARROW", "symbols", "arrow", "↖"),
- EmojiItem("UP DOWN ARROW", "symbols", "arrow", "↕"),
- EmojiItem("LEFT RIGHT ARROW", "symbols", "arrow", "↔"),
- EmojiItem("TOP WITH UPWARDS ARROW ABOVE", "symbols", "arrow", "🔝"),
- EmojiItem("SOON WITH RIGHTWARDS ARROW ABOVE", "symbols", "arrow", "🔜"),
- EmojiItem(
- "ON WITH EXCLAMATION MARK WITH LEFT RIGHT ARROW ABOVE",
- "symbols",
- "arrow",
- "🔛",
- ),
- EmojiItem("END WITH LEFTWARDS ARROW ABOVE", "symbols", "arrow", "🔚"),
- EmojiItem("BACK WITH LEFTWARDS ARROW ABOVE", "symbols", "arrow", "🔙"),
- EmojiItem(
- "ANTICLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS",
- "symbols",
- "arrow",
- "🔄",
- ),
- EmojiItem(
- "CLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS",
- "symbols",
- "arrow",
- "🔃",
- ),
- EmojiItem("BLACK LEFT-POINTING TRIANGLE", "symbols", "av-symbol", "◀"),
- EmojiItem(
- "BLACK RIGHT-POINTING TRIANGLE", "symbols", "av-symbol", "▶"
- ),
- EmojiItem("BLACK CIRCLE FOR RECORD", "symbols", "av-symbol", "⏺"),
- EmojiItem("BLACK SQUARE FOR STOP", "symbols", "av-symbol", "⏹"),
- EmojiItem("DOUBLE VERTICAL BAR", "symbols", "av-symbol", "⏸"),
- EmojiItem(
- "BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR",
- "symbols",
- "av-symbol",
- "⏯",
- ),
- EmojiItem(
- "BLACK LEFT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR",
- "symbols",
- "av-symbol",
- "⏮",
- ),
- EmojiItem(
- "BLACK RIGHT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR",
- "symbols",
- "av-symbol",
- "⏭",
- ),
- EmojiItem(
- "BLACK DOWN-POINTING DOUBLE TRIANGLE", "symbols", "av-symbol", "⏬"
- ),
- EmojiItem(
- "BLACK UP-POINTING DOUBLE TRIANGLE", "symbols", "av-symbol", "⏫"
- ),
- EmojiItem(
- "BLACK LEFT-POINTING DOUBLE TRIANGLE", "symbols", "av-symbol", "⏪"
- ),
- EmojiItem("EJECT SYMBOL", "symbols", "av-symbol", "⏏"),
- EmojiItem(
- "DOWN-POINTING SMALL RED TRIANGLE", "symbols", "av-symbol", "🔽"
- ),
- EmojiItem(
- "UP-POINTING SMALL RED TRIANGLE", "symbols", "av-symbol", "🔼"
- ),
- EmojiItem("HIGH BRIGHTNESS SYMBOL", "symbols", "av-symbol", "🔆"),
- EmojiItem("LOW BRIGHTNESS SYMBOL", "symbols", "av-symbol", "🔅"),
- EmojiItem(
- "CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS WITH CIRCLED ONE OVERLAY",
- "symbols",
- "av-symbol",
- "🔂",
- ),
- EmojiItem(
- "CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS",
- "symbols",
- "av-symbol",
- "🔁",
- ),
- EmojiItem("TWISTED RIGHTWARDS ARROWS", "symbols", "av-symbol", "🔀"),
- EmojiItem("ANTENNA WITH BARS", "symbols", "av-symbol", "📶"),
- EmojiItem("MOBILE PHONE OFF", "symbols", "av-symbol", "📴"),
- EmojiItem("VIBRATION MODE", "symbols", "av-symbol", "📳"),
- EmojiItem("CINEMA", "symbols", "av-symbol", "🎦"),
- EmojiItem("HEAVY DOLLAR SIGN", "symbols", "currency", "💲"),
- EmojiItem("CURRENCY EXCHANGE", "symbols", "currency", "💱"),
- EmojiItem(
- "MALE WITH STROKE AND MALE AND FEMALE SIGN",
- "symbols",
- "gender",
- "⚧",
- ),
- EmojiItem("MALE SIGN", "symbols", "gender", "♂"),
- EmojiItem("FEMALE SIGN", "symbols", "gender", "♀"),
- EmojiItem("WHITE LARGE SQUARE", "symbols", "geometric", "⬜"),
- EmojiItem("BLACK LARGE SQUARE", "symbols", "geometric", "⬛"),
- EmojiItem("MEDIUM BLACK CIRCLE", "symbols", "geometric", "⚫"),
- EmojiItem("MEDIUM WHITE CIRCLE", "symbols", "geometric", "⚪"),
- EmojiItem("BLACK MEDIUM SMALL SQUARE", "symbols", "geometric", "◾"),
- EmojiItem("WHITE MEDIUM SMALL SQUARE", "symbols", "geometric", "◽"),
- EmojiItem("BLACK MEDIUM SQUARE", "symbols", "geometric", "◼"),
- EmojiItem("WHITE MEDIUM SQUARE", "symbols", "geometric", "◻"),
- EmojiItem("WHITE SMALL SQUARE", "symbols", "geometric", "▫"),
- EmojiItem("BLACK SMALL SQUARE", "symbols", "geometric", "▪"),
- EmojiItem("LARGE BROWN SQUARE", "symbols", "geometric", "🟫"),
- EmojiItem("LARGE PURPLE SQUARE", "symbols", "geometric", "🟪"),
- EmojiItem("LARGE GREEN SQUARE", "symbols", "geometric", "🟩"),
- EmojiItem("LARGE YELLOW SQUARE", "symbols", "geometric", "🟨"),
- EmojiItem("LARGE ORANGE SQUARE", "symbols", "geometric", "🟧"),
- EmojiItem("LARGE BLUE SQUARE", "symbols", "geometric", "🟦"),
- EmojiItem("LARGE RED SQUARE", "symbols", "geometric", "🟥"),
- EmojiItem("LARGE BROWN CIRCLE", "symbols", "geometric", "🟤"),
- EmojiItem("LARGE PURPLE CIRCLE", "symbols", "geometric", "🟣"),
- EmojiItem("LARGE GREEN CIRCLE", "symbols", "geometric", "🟢"),
- EmojiItem("LARGE YELLOW CIRCLE", "symbols", "geometric", "🟡"),
- EmojiItem("LARGE ORANGE CIRCLE", "symbols", "geometric", "🟠"),
- EmojiItem("DOWN-POINTING RED TRIANGLE", "symbols", "geometric", "🔻"),
- EmojiItem("UP-POINTING RED TRIANGLE", "symbols", "geometric", "🔺"),
- EmojiItem("SMALL BLUE DIAMOND", "symbols", "geometric", "🔹"),
- EmojiItem("SMALL ORANGE DIAMOND", "symbols", "geometric", "🔸"),
- EmojiItem("LARGE BLUE DIAMOND", "symbols", "geometric", "🔷"),
- EmojiItem("LARGE ORANGE DIAMOND", "symbols", "geometric", "🔶"),
- EmojiItem("LARGE BLUE CIRCLE", "symbols", "geometric", "🔵"),
- EmojiItem("LARGE RED CIRCLE", "symbols", "geometric", "🔴"),
- EmojiItem("WHITE SQUARE BUTTON", "symbols", "geometric", "🔳"),
- EmojiItem("BLACK SQUARE BUTTON", "symbols", "geometric", "🔲"),
- EmojiItem("RADIO BUTTON", "symbols", "geometric", "🔘"),
- EmojiItem(
- "DIAMOND SHAPE WITH A DOT INSIDE", "symbols", "geometric", "💠"
- ),
- EmojiItem("KEYCAP TEN", "symbols", "keycap", "🔟"),
- EmojiItem("PERMANENT PAPER SIGN", "symbols", "math", "♾"),
- EmojiItem("HEAVY DIVISION SIGN", "symbols", "math", "➗"),
- EmojiItem("HEAVY MINUS SIGN", "symbols", "math", "➖"),
- EmojiItem("HEAVY PLUS SIGN", "symbols", "math", "➕"),
- EmojiItem("HEAVY MULTIPLICATION X", "symbols", "math", "✖"),
- EmojiItem("PART ALTERNATION MARK", "symbols", "other-symbol", "〽"),
- EmojiItem("HEAVY LARGE CIRCLE", "symbols", "other-symbol", "⭕"),
- EmojiItem("DOUBLE CURLY LOOP", "symbols", "other-symbol", "➿"),
- EmojiItem("CURLY LOOP", "symbols", "other-symbol", "➰"),
- EmojiItem(
- "NEGATIVE SQUARED CROSS MARK", "symbols", "other-symbol", "❎"
- ),
- EmojiItem("CROSS MARK", "symbols", "other-symbol", "❌"),
- EmojiItem("FLEUR-DE-LIS", "symbols", "other-symbol", "⚜"),
- EmojiItem(
- "BLACK UNIVERSAL RECYCLING SYMBOL", "symbols", "other-symbol", "♻"
- ),
- EmojiItem("REGISTERED SIGN", "symbols", "other-symbol", "®"),
- EmojiItem("COPYRIGHT SIGN", "symbols", "other-symbol", "©"),
- EmojiItem("SPARKLE", "symbols", "other-symbol", "❇"),
- EmojiItem("EIGHT POINTED BLACK STAR", "symbols", "other-symbol", "✴"),
- EmojiItem("EIGHT SPOKED ASTERISK", "symbols", "other-symbol", "✳"),
- EmojiItem("HEAVY CHECK MARK", "symbols", "other-symbol", "✔"),
- EmojiItem("WHITE HEAVY CHECK MARK", "symbols", "other-symbol", "✅"),
- EmojiItem("STAFF OF AESCULAPIUS", "symbols", "other-symbol", "⚕"),
- EmojiItem("BALLOT BOX WITH CHECK", "symbols", "other-symbol", "☑"),
- EmojiItem("TRADE MARK SIGN", "symbols", "other-symbol", "™"),
- EmojiItem("TRIDENT EMBLEM", "symbols", "other-symbol", "🔱"),
- EmojiItem(
- "JAPANESE SYMBOL FOR BEGINNER", "symbols", "other-symbol", "🔰"
- ),
- EmojiItem("NAME BADGE", "symbols", "other-symbol", "📛"),
- EmojiItem("DOUBLE EXCLAMATION MARK", "symbols", "punctuation", "‼"),
- EmojiItem("WAVY DASH", "symbols", "punctuation", "〰"),
- EmojiItem(
- "HEAVY EXCLAMATION MARK SYMBOL", "symbols", "punctuation", "❗"
- ),
- EmojiItem(
- "WHITE EXCLAMATION MARK ORNAMENT", "symbols", "punctuation", "❕"
- ),
- EmojiItem(
- "WHITE QUESTION MARK ORNAMENT", "symbols", "punctuation", "❔"
- ),
- EmojiItem(
- "BLACK QUESTION MARK ORNAMENT", "symbols", "punctuation", "❓"
- ),
- EmojiItem("EXCLAMATION QUESTION MARK", "symbols", "punctuation", "⁉"),
- EmojiItem("LATIN CROSS", "symbols", "religion", "✝"),
- EmojiItem("ATOM SYMBOL", "symbols", "religion", "⚛"),
- EmojiItem("YIN YANG", "symbols", "religion", "☯"),
- EmojiItem("PEACE SYMBOL", "symbols", "religion", "☮"),
- EmojiItem("STAR AND CRESCENT", "symbols", "religion", "☪"),
- EmojiItem("STAR OF DAVID", "symbols", "religion", "✡"),
- EmojiItem("WHEEL OF DHARMA", "symbols", "religion", "☸"),
- EmojiItem("ORTHODOX CROSS", "symbols", "religion", "☦"),
- EmojiItem("PLACE OF WORSHIP", "symbols", "religion", "🛐"),
- EmojiItem("MENORAH WITH NINE BRANCHES", "symbols", "religion", "🕎"),
- EmojiItem("OM SYMBOL", "symbols", "religion", "🕉"),
- EmojiItem(
- "SIX POINTED STAR WITH MIDDLE DOT", "symbols", "religion", "🔯"
- ),
- EmojiItem("WHEELCHAIR SYMBOL", "symbols", "transport-sign", "♿"),
- EmojiItem("LEFT LUGGAGE", "symbols", "transport-sign", "🛅"),
- EmojiItem("BAGGAGE CLAIM", "symbols", "transport-sign", "🛄"),
- EmojiItem("CUSTOMS", "symbols", "transport-sign", "🛃"),
- EmojiItem("PASSPORT CONTROL", "symbols", "transport-sign", "🛂"),
- EmojiItem("WATER CLOSET", "symbols", "transport-sign", "🚾"),
- EmojiItem("BABY SYMBOL", "symbols", "transport-sign", "🚼"),
- EmojiItem("RESTROOM", "symbols", "transport-sign", "🚻"),
- EmojiItem("WOMENS SYMBOL", "symbols", "transport-sign", "🚺"),
- EmojiItem("MENS SYMBOL", "symbols", "transport-sign", "🚹"),
- EmojiItem("POTABLE WATER SYMBOL", "symbols", "transport-sign", "🚰"),
- EmojiItem(
- "PUT LITTER IN ITS PLACE SYMBOL", "symbols", "transport-sign", "🚮"
- ),
- EmojiItem(
- "AUTOMATED TELLER MACHINE", "symbols", "transport-sign", "🏧"
- ),
- EmojiItem("NO ENTRY", "symbols", "warning", "⛔"),
- EmojiItem("WARNING SIGN", "symbols", "warning", "⚠"),
- EmojiItem("BIOHAZARD SIGN", "symbols", "warning", "☣"),
- EmojiItem("RADIOACTIVE SIGN", "symbols", "warning", "☢"),
- EmojiItem("CHILDREN CROSSING", "symbols", "warning", "🚸"),
- EmojiItem("NO PEDESTRIANS", "symbols", "warning", "🚷"),
- EmojiItem("NO BICYCLES", "symbols", "warning", "🚳"),
- EmojiItem("NON-POTABLE WATER SYMBOL", "symbols", "warning", "🚱"),
- EmojiItem("DO NOT LITTER SYMBOL", "symbols", "warning", "🚯"),
- EmojiItem("NO SMOKING SYMBOL", "symbols", "warning", "🚭"),
- EmojiItem("NO ENTRY SIGN", "symbols", "warning", "🚫"),
- EmojiItem("NO ONE UNDER EIGHTEEN SYMBOL", "symbols", "warning", "🔞"),
- EmojiItem("NO MOBILE PHONES", "symbols", "warning", "📵"),
- EmojiItem("OPHIUCHUS", "symbols", "zodiac", "⛎"),
- EmojiItem("SCORPIUS", "symbols", "zodiac", "♏"),
- EmojiItem("LIBRA", "symbols", "zodiac", "♎"),
- EmojiItem("VIRGO", "symbols", "zodiac", "♍"),
- EmojiItem("LEO", "symbols", "zodiac", "♌"),
- EmojiItem("CANCER", "symbols", "zodiac", "♋"),
- EmojiItem("GEMINI", "symbols", "zodiac", "♊"),
- EmojiItem("PISCES", "symbols", "zodiac", "♓"),
- EmojiItem("AQUARIUS", "symbols", "zodiac", "♒"),
- EmojiItem("CAPRICORN", "symbols", "zodiac", "♑"),
- EmojiItem("SAGITTARIUS", "symbols", "zodiac", "♐"),
- EmojiItem("TAURUS", "symbols", "zodiac", "♉"),
- EmojiItem("ARIES", "symbols", "zodiac", "♈"),
- EmojiItem("LUGGAGE", "travel-places", "hotel", "🧳"),
- EmojiItem("BELLHOP BELL", "travel-places", "hotel", "🛎"),
- EmojiItem("WOOD", "travel-places", "place-building", "🪵"),
- EmojiItem("ROCK", "travel-places", "place-building", "🪨"),
- EmojiItem("BRICK", "travel-places", "place-building", "🧱"),
- EmojiItem("HUT", "travel-places", "place-building", "🛖"),
- EmojiItem("STATUE OF LIBERTY", "travel-places", "place-building", "🗽"),
- EmojiItem("TOKYO TOWER", "travel-places", "place-building", "🗼"),
- EmojiItem("WEDDING", "travel-places", "place-building", "💒"),
- EmojiItem("EUROPEAN CASTLE", "travel-places", "place-building", "🏰"),
- EmojiItem("JAPANESE CASTLE", "travel-places", "place-building", "🏯"),
- EmojiItem("FACTORY", "travel-places", "place-building", "🏭"),
- EmojiItem("DEPARTMENT STORE", "travel-places", "place-building", "🏬"),
- EmojiItem("SCHOOL", "travel-places", "place-building", "🏫"),
- EmojiItem("CONVENIENCE STORE", "travel-places", "place-building", "🏪"),
- EmojiItem("LOVE HOTEL", "travel-places", "place-building", "🏩"),
- EmojiItem("HOTEL", "travel-places", "place-building", "🏨"),
- EmojiItem("BANK", "travel-places", "place-building", "🏦"),
- EmojiItem("HOSPITAL", "travel-places", "place-building", "🏥"),
- EmojiItem(
- "EUROPEAN POST OFFICE", "travel-places", "place-building", "🏤"
- ),
- EmojiItem(
- "JAPANESE POST OFFICE", "travel-places", "place-building", "🏣"
- ),
- EmojiItem("OFFICE BUILDING", "travel-places", "place-building", "🏢"),
- EmojiItem("HOUSE WITH GARDEN", "travel-places", "place-building", "🏡"),
- EmojiItem("HOUSE BUILDING", "travel-places", "place-building", "🏠"),
- EmojiItem("STADIUM", "travel-places", "place-building", "🏟"),
- EmojiItem(
- "CLASSICAL BUILDING", "travel-places", "place-building", "🏛"
- ),
- EmojiItem(
- "DERELICT HOUSE BUILDING", "travel-places", "place-building", "🏚"
- ),
- EmojiItem("HOUSE BUILDINGS", "travel-places", "place-building", "🏘"),
- EmojiItem(
- "BUILDING CONSTRUCTION", "travel-places", "place-building", "🏗"
- ),
- EmojiItem("MOUNTAIN", "travel-places", "place-geographic", "⛰"),
- EmojiItem("MOUNT FUJI", "travel-places", "place-geographic", "🗻"),
- EmojiItem("NATIONAL PARK", "travel-places", "place-geographic", "🏞"),
- EmojiItem("DESERT ISLAND", "travel-places", "place-geographic", "🏝"),
- EmojiItem("DESERT", "travel-places", "place-geographic", "🏜"),
- EmojiItem(
- "BEACH WITH UMBRELLA", "travel-places", "place-geographic", "🏖"
- ),
- EmojiItem("CAMPING", "travel-places", "place-geographic", "🏕"),
- EmojiItem(
- "SNOW CAPPED MOUNTAIN", "travel-places", "place-geographic", "🏔"
- ),
- EmojiItem("VOLCANO", "travel-places", "place-geographic", "🌋"),
- EmojiItem("COMPASS", "travel-places", "place-map", "🧭"),
- EmojiItem("SILHOUETTE OF JAPAN", "travel-places", "place-map", "🗾"),
- EmojiItem("WORLD MAP", "travel-places", "place-map", "🗺"),
- EmojiItem("GLOBE WITH MERIDIANS", "travel-places", "place-map", "🌐"),
- EmojiItem(
- "EARTH GLOBE ASIA-AUSTRALIA", "travel-places", "place-map", "🌏"
- ),
- EmojiItem("EARTH GLOBE AMERICAS", "travel-places", "place-map", "🌎"),
- EmojiItem(
- "EARTH GLOBE EUROPE-AFRICA", "travel-places", "place-map", "🌍"
- ),
- EmojiItem("TENT", "travel-places", "place-other", "⛺"),
- EmojiItem("FOUNTAIN", "travel-places", "place-other", "⛲"),
- EmojiItem("HOT SPRINGS", "travel-places", "place-other", "♨"),
- EmojiItem("BARBER POLE", "travel-places", "place-other", "💈"),
- EmojiItem("CITYSCAPE", "travel-places", "place-other", "🏙"),
- EmojiItem("CIRCUS TENT", "travel-places", "place-other", "🎪"),
- EmojiItem("ROLLER COASTER", "travel-places", "place-other", "🎢"),
- EmojiItem("FERRIS WHEEL", "travel-places", "place-other", "🎡"),
- EmojiItem("CAROUSEL HORSE", "travel-places", "place-other", "🎠"),
- EmojiItem("BRIDGE AT NIGHT", "travel-places", "place-other", "🌉"),
- EmojiItem(
- "SUNSET OVER BUILDINGS", "travel-places", "place-other", "🌇"
- ),
- EmojiItem("CITYSCAPE AT DUSK", "travel-places", "place-other", "🌆"),
- EmojiItem("SUNRISE", "travel-places", "place-other", "🌅"),
- EmojiItem(
- "SUNRISE OVER MOUNTAINS", "travel-places", "place-other", "🌄"
- ),
- EmojiItem("NIGHT WITH STARS", "travel-places", "place-other", "🌃"),
- EmojiItem("FOGGY", "travel-places", "place-other", "🌁"),
- EmojiItem("CHURCH", "travel-places", "place-religious", "⛪"),
- EmojiItem("HINDU TEMPLE", "travel-places", "place-religious", "🛕"),
- EmojiItem("SYNAGOGUE", "travel-places", "place-religious", "🕍"),
- EmojiItem("MOSQUE", "travel-places", "place-religious", "🕌"),
- EmojiItem("KAABA", "travel-places", "place-religious", "🕋"),
- EmojiItem("WHITE MEDIUM STAR", "travel-places", "sky & weather", "⭐"),
- EmojiItem("UMBRELLA ON GROUND", "travel-places", "sky & weather", "⛱"),
- EmojiItem(
- "THUNDER CLOUD AND RAIN", "travel-places", "sky & weather", "⛈"
- ),
- EmojiItem("SUN BEHIND CLOUD", "travel-places", "sky & weather", "⛅"),
- EmojiItem(
- "SNOWMAN WITHOUT SNOW", "travel-places", "sky & weather", "⛄"
- ),
- EmojiItem("HIGH VOLTAGE SIGN", "travel-places", "sky & weather", "⚡"),
- EmojiItem("SNOWFLAKE", "travel-places", "sky & weather", "❄"),
- EmojiItem(
- "UMBRELLA WITH RAIN DROPS", "travel-places", "sky & weather", "☔"
- ),
- EmojiItem("COMET", "travel-places", "sky & weather", "☄"),
- EmojiItem("SNOWMAN", "travel-places", "sky & weather", "☃"),
- EmojiItem("UMBRELLA", "travel-places", "sky & weather", "☂"),
- EmojiItem("CLOUD", "travel-places", "sky & weather", "☁"),
- EmojiItem(
- "BLACK SUN WITH RAYS", "travel-places", "sky & weather", "☀"
- ),
- EmojiItem("RINGED PLANET", "travel-places", "sky & weather", "🪐"),
- EmojiItem("FIRE", "travel-places", "sky & weather", "🔥"),
- EmojiItem("DROPLET", "travel-places", "sky & weather", "💧"),
- EmojiItem("WIND BLOWING FACE", "travel-places", "sky & weather", "🌬"),
- EmojiItem("FOG", "travel-places", "sky & weather", "🌫"),
- EmojiItem("CLOUD WITH TORNADO", "travel-places", "sky & weather", "🌪"),
- EmojiItem(
- "CLOUD WITH LIGHTNING", "travel-places", "sky & weather", "🌩"
- ),
- EmojiItem("CLOUD WITH SNOW", "travel-places", "sky & weather", "🌨"),
- EmojiItem("CLOUD WITH RAIN", "travel-places", "sky & weather", "🌧"),
- EmojiItem(
- "WHITE SUN BEHIND CLOUD WITH RAIN",
- "travel-places",
- "sky & weather",
- "🌦",
- ),
- EmojiItem(
- "WHITE SUN BEHIND CLOUD", "travel-places", "sky & weather", "🌥"
- ),
- EmojiItem(
- "WHITE SUN WITH SMALL CLOUD", "travel-places", "sky & weather", "🌤"
- ),
- EmojiItem("THERMOMETER", "travel-places", "sky & weather", "🌡"),
- EmojiItem("SHOOTING STAR", "travel-places", "sky & weather", "🌠"),
- EmojiItem("GLOWING STAR", "travel-places", "sky & weather", "🌟"),
- EmojiItem("SUN WITH FACE", "travel-places", "sky & weather", "🌞"),
- EmojiItem(
- "FULL MOON WITH FACE", "travel-places", "sky & weather", "🌝"
- ),
- EmojiItem(
- "LAST QUARTER MOON WITH FACE",
- "travel-places",
- "sky & weather",
- "🌜",
- ),
- EmojiItem(
- "FIRST QUARTER MOON WITH FACE",
- "travel-places",
- "sky & weather",
- "🌛",
- ),
- EmojiItem("NEW MOON WITH FACE", "travel-places", "sky & weather", "🌚"),
- EmojiItem("CRESCENT MOON", "travel-places", "sky & weather", "🌙"),
- EmojiItem(
- "WANING CRESCENT MOON SYMBOL",
- "travel-places",
- "sky & weather",
- "🌘",
- ),
- EmojiItem(
- "LAST QUARTER MOON SYMBOL", "travel-places", "sky & weather", "🌗"
- ),
- EmojiItem(
- "WANING GIBBOUS MOON SYMBOL", "travel-places", "sky & weather", "🌖"
- ),
- EmojiItem("FULL MOON SYMBOL", "travel-places", "sky & weather", "🌕"),
- EmojiItem(
- "WAXING GIBBOUS MOON SYMBOL", "travel-places", "sky & weather", "🌔"
- ),
- EmojiItem(
- "FIRST QUARTER MOON SYMBOL", "travel-places", "sky & weather", "🌓"
- ),
- EmojiItem(
- "WAXING CRESCENT MOON SYMBOL",
- "travel-places",
- "sky & weather",
- "🌒",
- ),
- EmojiItem("NEW MOON SYMBOL", "travel-places", "sky & weather", "🌑"),
- EmojiItem("MILKY WAY", "travel-places", "sky & weather", "🌌"),
- EmojiItem("WATER WAVE", "travel-places", "sky & weather", "🌊"),
- EmojiItem("RAINBOW", "travel-places", "sky & weather", "🌈"),
- EmojiItem("CLOSED UMBRELLA", "travel-places", "sky & weather", "🌂"),
- EmojiItem("CYCLONE", "travel-places", "sky & weather", "🌀"),
- EmojiItem("HOURGLASS WITH FLOWING SAND", "travel-places", "time", "⏳"),
- EmojiItem("TIMER CLOCK", "travel-places", "time", "⏲"),
- EmojiItem("STOPWATCH", "travel-places", "time", "⏱"),
- EmojiItem("ALARM CLOCK", "travel-places", "time", "⏰"),
- EmojiItem("HOURGLASS", "travel-places", "time", "⌛"),
- EmojiItem("WATCH", "travel-places", "time", "⌚"),
- EmojiItem("MANTELPIECE CLOCK", "travel-places", "time", "🕰"),
- EmojiItem("CLOCK FACE TWELVE-THIRTY", "travel-places", "time", "🕧"),
- EmojiItem("CLOCK FACE ELEVEN-THIRTY", "travel-places", "time", "🕦"),
- EmojiItem("CLOCK FACE TEN-THIRTY", "travel-places", "time", "🕥"),
- EmojiItem("CLOCK FACE NINE-THIRTY", "travel-places", "time", "🕤"),
- EmojiItem("CLOCK FACE EIGHT-THIRTY", "travel-places", "time", "🕣"),
- EmojiItem("CLOCK FACE SEVEN-THIRTY", "travel-places", "time", "🕢"),
- EmojiItem("CLOCK FACE SIX-THIRTY", "travel-places", "time", "🕡"),
- EmojiItem("CLOCK FACE FIVE-THIRTY", "travel-places", "time", "🕠"),
- EmojiItem("CLOCK FACE FOUR-THIRTY", "travel-places", "time", "🕟"),
- EmojiItem("CLOCK FACE THREE-THIRTY", "travel-places", "time", "🕞"),
- EmojiItem("CLOCK FACE TWO-THIRTY", "travel-places", "time", "🕝"),
- EmojiItem("CLOCK FACE ONE-THIRTY", "travel-places", "time", "🕜"),
- EmojiItem("CLOCK FACE TWELVE OCLOCK", "travel-places", "time", "🕛"),
- EmojiItem("CLOCK FACE ELEVEN OCLOCK", "travel-places", "time", "🕚"),
- EmojiItem("CLOCK FACE TEN OCLOCK", "travel-places", "time", "🕙"),
- EmojiItem("CLOCK FACE NINE OCLOCK", "travel-places", "time", "🕘"),
- EmojiItem("CLOCK FACE EIGHT OCLOCK", "travel-places", "time", "🕗"),
- EmojiItem("CLOCK FACE SEVEN OCLOCK", "travel-places", "time", "🕖"),
- EmojiItem("CLOCK FACE SIX OCLOCK", "travel-places", "time", "🕕"),
- EmojiItem("CLOCK FACE FIVE OCLOCK", "travel-places", "time", "🕔"),
- EmojiItem("CLOCK FACE FOUR OCLOCK", "travel-places", "time", "🕓"),
- EmojiItem("CLOCK FACE THREE OCLOCK", "travel-places", "time", "🕒"),
- EmojiItem("CLOCK FACE TWO OCLOCK", "travel-places", "time", "🕑"),
- EmojiItem("CLOCK FACE ONE OCLOCK", "travel-places", "time", "🕐"),
- EmojiItem("AIRPLANE", "travel-places", "transport-air", "✈"),
- EmojiItem("PARACHUTE", "travel-places", "transport-air", "🪂"),
- EmojiItem("FLYING SAUCER", "travel-places", "transport-air", "🛸"),
- EmojiItem("SATELLITE", "travel-places", "transport-air", "🛰"),
- EmojiItem("AIRPLANE ARRIVING", "travel-places", "transport-air", "🛬"),
- EmojiItem("AIRPLANE DEPARTURE", "travel-places", "transport-air", "🛫"),
- EmojiItem("SMALL AIRPLANE", "travel-places", "transport-air", "🛩"),
- EmojiItem("AERIAL TRAMWAY", "travel-places", "transport-air", "🚡"),
- EmojiItem("MOUNTAIN CABLEWAY", "travel-places", "transport-air", "🚠"),
- EmojiItem("SUSPENSION RAILWAY", "travel-places", "transport-air", "🚟"),
- EmojiItem("HELICOPTER", "travel-places", "transport-air", "🚁"),
- EmojiItem("ROCKET", "travel-places", "transport-air", "🚀"),
- EmojiItem("SEAT", "travel-places", "transport-air", "💺"),
- EmojiItem("FUEL PUMP", "travel-places", "transport-ground", "⛽"),
- EmojiItem(
- "MANUAL WHEELCHAIR", "travel-places", "transport-ground", "🦽"
- ),
- EmojiItem(
- "MOTORIZED WHEELCHAIR", "travel-places", "transport-ground", "🦼"
- ),
- EmojiItem("ROLLER SKATE", "travel-places", "transport-ground", "🛼"),
- EmojiItem("PICKUP TRUCK", "travel-places", "transport-ground", "🛻"),
- EmojiItem("AUTO RICKSHAW", "travel-places", "transport-ground", "🛺"),
- EmojiItem("SKATEBOARD", "travel-places", "transport-ground", "🛹"),
- EmojiItem("MOTOR SCOOTER", "travel-places", "transport-ground", "🛵"),
- EmojiItem("SCOOTER", "travel-places", "transport-ground", "🛴"),
- EmojiItem("RAILWAY TRACK", "travel-places", "transport-ground", "🛤"),
- EmojiItem("MOTORWAY", "travel-places", "transport-ground", "🛣"),
- EmojiItem("OIL DRUM", "travel-places", "transport-ground", "🛢"),
- EmojiItem("OCTAGONAL SIGN", "travel-places", "transport-ground", "🛑"),
- EmojiItem("BICYCLE", "travel-places", "transport-ground", "🚲"),
- EmojiItem(
- "POLICE CARS REVOLVING LIGHT",
- "travel-places",
- "transport-ground",
- "🚨",
- ),
- EmojiItem(
- "CONSTRUCTION SIGN", "travel-places", "transport-ground", "🚧"
- ),
- EmojiItem(
- "VERTICAL TRAFFIC LIGHT", "travel-places", "transport-ground", "🚦"
- ),
- EmojiItem(
- "HORIZONTAL TRAFFIC LIGHT",
- "travel-places",
- "transport-ground",
- "🚥",
- ),
- EmojiItem(
- "MOUNTAIN RAILWAY", "travel-places", "transport-ground", "🚞"
- ),
- EmojiItem("MONORAIL", "travel-places", "transport-ground", "🚝"),
- EmojiItem("TRACTOR", "travel-places", "transport-ground", "🚜"),
- EmojiItem(
- "ARTICULATED LORRY", "travel-places", "transport-ground", "🚛"
- ),
- EmojiItem("DELIVERY TRUCK", "travel-places", "transport-ground", "🚚"),
- EmojiItem(
- "RECREATIONAL VEHICLE", "travel-places", "transport-ground", "🚙"
- ),
- EmojiItem(
- "ONCOMING AUTOMOBILE", "travel-places", "transport-ground", "🚘"
- ),
- EmojiItem("AUTOMOBILE", "travel-places", "transport-ground", "🚗"),
- EmojiItem("ONCOMING TAXI", "travel-places", "transport-ground", "🚖"),
- EmojiItem("TAXI", "travel-places", "transport-ground", "🚕"),
- EmojiItem(
- "ONCOMING POLICE CAR", "travel-places", "transport-ground", "🚔"
- ),
- EmojiItem("POLICE CAR", "travel-places", "transport-ground", "🚓"),
- EmojiItem("FIRE ENGINE", "travel-places", "transport-ground", "🚒"),
- EmojiItem("AMBULANCE", "travel-places", "transport-ground", "🚑"),
- EmojiItem("MINIBUS", "travel-places", "transport-ground", "🚐"),
- EmojiItem("BUS STOP", "travel-places", "transport-ground", "🚏"),
- EmojiItem("TROLLEYBUS", "travel-places", "transport-ground", "🚎"),
- EmojiItem("ONCOMING BUS", "travel-places", "transport-ground", "🚍"),
- EmojiItem("BUS", "travel-places", "transport-ground", "🚌"),
- EmojiItem("TRAM CAR", "travel-places", "transport-ground", "🚋"),
- EmojiItem("TRAM", "travel-places", "transport-ground", "🚊"),
- EmojiItem("STATION", "travel-places", "transport-ground", "🚉"),
- EmojiItem("LIGHT RAIL", "travel-places", "transport-ground", "🚈"),
- EmojiItem("METRO", "travel-places", "transport-ground", "🚇"),
- EmojiItem("TRAIN", "travel-places", "transport-ground", "🚆"),
- EmojiItem(
- "HIGH-SPEED TRAIN WITH BULLET NOSE",
- "travel-places",
- "transport-ground",
- "🚅",
- ),
- EmojiItem(
- "HIGH-SPEED TRAIN", "travel-places", "transport-ground", "🚄"
- ),
- EmojiItem("RAILWAY CAR", "travel-places", "transport-ground", "🚃"),
- EmojiItem(
- "STEAM LOCOMOTIVE", "travel-places", "transport-ground", "🚂"
- ),
- EmojiItem("RACING CAR", "travel-places", "transport-ground", "🏎"),
- EmojiItem(
- "RACING MOTORCYCLE", "travel-places", "transport-ground", "🏍"
- ),
- EmojiItem("SAILBOAT", "travel-places", "transport-water", "⛵"),
- EmojiItem("FERRY", "travel-places", "transport-water", "⛴"),
- EmojiItem("ANCHOR", "travel-places", "transport-water", "⚓"),
- EmojiItem("CANOE", "travel-places", "transport-water", "🛶"),
- EmojiItem("PASSENGER SHIP", "travel-places", "transport-water", "🛳"),
- EmojiItem("MOTOR BOAT", "travel-places", "transport-water", "🛥"),
- EmojiItem("SPEEDBOAT", "travel-places", "transport-water", "🚤"),
- EmojiItem("SHIP", "travel-places", "transport-water", "🚢"),
- EmojiItem("WEARY CAT FACE", "smiley-emotion", "cat-face", "🙀"),
- EmojiItem("CRYING CAT FACE", "smiley-emotion", "cat-face", "😿"),
- EmojiItem("POUTING CAT FACE", "smiley-emotion", "cat-face", "😾"),
- EmojiItem(
- "KISSING CAT FACE WITH CLOSED EYES",
- "smiley-emotion",
- "cat-face",
- "😽",
- ),
- EmojiItem(
- "CAT FACE WITH WRY SMILE", "smiley-emotion", "cat-face", "😼"
- ),
- EmojiItem(
- "SMILING CAT FACE WITH HEART-SHAPED EYES",
- "smiley-emotion",
- "cat-face",
- "😻",
- ),
- EmojiItem(
- "SMILING CAT FACE WITH OPEN MOUTH",
- "smiley-emotion",
- "cat-face",
- "😺",
- ),
- EmojiItem(
- "CAT FACE WITH TEARS OF JOY", "smiley-emotion", "cat-face", "😹"
- ),
- EmojiItem(
- "GRINNING CAT FACE WITH SMILING EYES",
- "smiley-emotion",
- "cat-face",
- "😸",
- ),
- EmojiItem("HEAVY BLACK HEART", "smiley-emotion", "emotion", "❤"),
- EmojiItem(
- "HEAVY HEART EXCLAMATION MARK ORNAMENT",
- "smiley-emotion",
- "emotion",
- "❣",
- ),
- EmojiItem("ORANGE HEART", "smiley-emotion", "emotion", "🧡"),
- EmojiItem("BROWN HEART", "smiley-emotion", "emotion", "🤎"),
- EmojiItem("WHITE HEART", "smiley-emotion", "emotion", "🤍"),
- EmojiItem("RIGHT ANGER BUBBLE", "smiley-emotion", "emotion", "🗯"),
- EmojiItem("LEFT SPEECH BUBBLE", "smiley-emotion", "emotion", "🗨"),
- EmojiItem("BLACK HEART", "smiley-emotion", "emotion", "🖤"),
- EmojiItem("HOLE", "smiley-emotion", "emotion", "🕳"),
- EmojiItem("HUNDRED POINTS SYMBOL", "smiley-emotion", "emotion", "💯"),
- EmojiItem("THOUGHT BALLOON", "smiley-emotion", "emotion", "💭"),
- EmojiItem("SPEECH BALLOON", "smiley-emotion", "emotion", "💬"),
- EmojiItem("DIZZY SYMBOL", "smiley-emotion", "emotion", "💫"),
- EmojiItem("DASH SYMBOL", "smiley-emotion", "emotion", "💨"),
- EmojiItem("SPLASHING SWEAT SYMBOL", "smiley-emotion", "emotion", "💦"),
- EmojiItem("COLLISION SYMBOL", "smiley-emotion", "emotion", "💥"),
- EmojiItem("SLEEPING SYMBOL", "smiley-emotion", "emotion", "💤"),
- EmojiItem("BOMB", "smiley-emotion", "emotion", "💣"),
- EmojiItem("ANGER SYMBOL", "smiley-emotion", "emotion", "💢"),
- EmojiItem("HEART DECORATION", "smiley-emotion", "emotion", "💟"),
- EmojiItem("REVOLVING HEARTS", "smiley-emotion", "emotion", "💞"),
- EmojiItem("HEART WITH RIBBON", "smiley-emotion", "emotion", "💝"),
- EmojiItem("PURPLE HEART", "smiley-emotion", "emotion", "💜"),
- EmojiItem("YELLOW HEART", "smiley-emotion", "emotion", "💛"),
- EmojiItem("GREEN HEART", "smiley-emotion", "emotion", "💚"),
- EmojiItem("BLUE HEART", "smiley-emotion", "emotion", "💙"),
- EmojiItem("HEART WITH ARROW", "smiley-emotion", "emotion", "💘"),
- EmojiItem("GROWING HEART", "smiley-emotion", "emotion", "💗"),
- EmojiItem("SPARKLING HEART", "smiley-emotion", "emotion", "💖"),
- EmojiItem("TWO HEARTS", "smiley-emotion", "emotion", "💕"),
- EmojiItem("BROKEN HEART", "smiley-emotion", "emotion", "💔"),
- EmojiItem("BEATING HEART", "smiley-emotion", "emotion", "💓"),
- EmojiItem("LOVE LETTER", "smiley-emotion", "emotion", "💌"),
- EmojiItem("KISS MARK", "smiley-emotion", "emotion", "💋"),
- EmojiItem(
- "WHITE SMILING FACE", "smiley-emotion", "face-affection", "☺"
- ),
- EmojiItem(
- "SMILING FACE WITH TEAR", "smiley-emotion", "face-affection", "🥲"
- ),
- EmojiItem(
- "SMILING FACE WITH SMILING EYES AND THREE HEARTS",
- "smiley-emotion",
- "face-affection",
- "🥰",
- ),
- EmojiItem(
- "GRINNING FACE WITH STAR EYES",
- "smiley-emotion",
- "face-affection",
- "🤩",
- ),
- EmojiItem(
- "KISSING FACE WITH CLOSED EYES",
- "smiley-emotion",
- "face-affection",
- "😚",
- ),
- EmojiItem(
- "KISSING FACE WITH SMILING EYES",
- "smiley-emotion",
- "face-affection",
- "😙",
- ),
- EmojiItem(
- "FACE THROWING A KISS", "smiley-emotion", "face-affection", "😘"
- ),
- EmojiItem("KISSING FACE", "smiley-emotion", "face-affection", "😗"),
- EmojiItem(
- "SMILING FACE WITH HEART-SHAPED EYES",
- "smiley-emotion",
- "face-affection",
- "😍",
- ),
- EmojiItem(
- "WHITE FROWNING FACE", "smiley-emotion", "face-concerned", "☹"
- ),
- EmojiItem(
- "FACE WITH PLEADING EYES", "smiley-emotion", "face-concerned", "🥺"
- ),
- EmojiItem("YAWNING FACE", "smiley-emotion", "face-concerned", "🥱"),
- EmojiItem(
- "SLIGHTLY FROWNING FACE", "smiley-emotion", "face-concerned", "🙁"
- ),
- EmojiItem("FLUSHED FACE", "smiley-emotion", "face-concerned", "😳"),
- EmojiItem("ASTONISHED FACE", "smiley-emotion", "face-concerned", "😲"),
- EmojiItem(
- "FACE SCREAMING IN FEAR", "smiley-emotion", "face-concerned", "😱"
- ),
- EmojiItem(
- "FACE WITH OPEN MOUTH AND COLD SWEAT",
- "smiley-emotion",
- "face-concerned",
- "😰",
- ),
- EmojiItem("HUSHED FACE", "smiley-emotion", "face-concerned", "😯"),
- EmojiItem(
- "FACE WITH OPEN MOUTH", "smiley-emotion", "face-concerned", "😮"
- ),
- EmojiItem(
- "LOUDLY CRYING FACE", "smiley-emotion", "face-concerned", "😭"
- ),
- EmojiItem("TIRED FACE", "smiley-emotion", "face-concerned", "😫"),
- EmojiItem("WEARY FACE", "smiley-emotion", "face-concerned", "😩"),
- EmojiItem("FEARFUL FACE", "smiley-emotion", "face-concerned", "😨"),
- EmojiItem("ANGUISHED FACE", "smiley-emotion", "face-concerned", "😧"),
- EmojiItem(
- "FROWNING FACE WITH OPEN MOUTH",
- "smiley-emotion",
- "face-concerned",
- "😦",
- ),
- EmojiItem(
- "DISAPPOINTED BUT RELIEVED FACE",
- "smiley-emotion",
- "face-concerned",
- "😥",
- ),
- EmojiItem("PERSEVERING FACE", "smiley-emotion", "face-concerned", "😣"),
- EmojiItem("CRYING FACE", "smiley-emotion", "face-concerned", "😢"),
- EmojiItem("WORRIED FACE", "smiley-emotion", "face-concerned", "😟"),
- EmojiItem(
- "DISAPPOINTED FACE", "smiley-emotion", "face-concerned", "😞"
- ),
- EmojiItem("CONFOUNDED FACE", "smiley-emotion", "face-concerned", "😖"),
- EmojiItem("CONFUSED FACE", "smiley-emotion", "face-concerned", "😕"),
- EmojiItem(
- "FACE WITH COLD SWEAT", "smiley-emotion", "face-concerned", "😓"
- ),
- EmojiItem("CLOWN FACE", "smiley-emotion", "face-costume", "🤡"),
- EmojiItem("ROBOT FACE", "smiley-emotion", "face-costume", "🤖"),
- EmojiItem("PILE OF POO", "smiley-emotion", "face-costume", "💩"),
- EmojiItem("ALIEN MONSTER", "smiley-emotion", "face-costume", "👾"),
- EmojiItem(
- "EXTRATERRESTRIAL ALIEN", "smiley-emotion", "face-costume", "👽"
- ),
- EmojiItem("GHOST", "smiley-emotion", "face-costume", "👻"),
- EmojiItem("JAPANESE GOBLIN", "smiley-emotion", "face-costume", "👺"),
- EmojiItem("JAPANESE OGRE", "smiley-emotion", "face-costume", "👹"),
- EmojiItem("FACE WITH MONOCLE", "smiley-emotion", "face-glasses", "🧐"),
- EmojiItem("NERD FACE", "smiley-emotion", "face-glasses", "🤓"),
- EmojiItem(
- "SMILING FACE WITH SUNGLASSES",
- "smiley-emotion",
- "face-glasses",
- "😎",
- ),
- EmojiItem(
- "SMILING FACE WITH SMILING EYES AND HAND COVERING MOUTH",
- "smiley-emotion",
- "face-hand",
- "🤭",
- ),
- EmojiItem(
- "FACE WITH FINGER COVERING CLOSED LIPS",
- "smiley-emotion",
- "face-hand",
- "🤫",
- ),
- EmojiItem("HUGGING FACE", "smiley-emotion", "face-hand", "🤗"),
- EmojiItem("THINKING FACE", "smiley-emotion", "face-hand", "🤔"),
- EmojiItem("DISGUISED FACE", "smiley-emotion", "face-hat", "🥸"),
- EmojiItem(
- "FACE WITH PARTY HORN AND PARTY HAT",
- "smiley-emotion",
- "face-hat",
- "🥳",
- ),
- EmojiItem("FACE WITH COWBOY HAT", "smiley-emotion", "face-hat", "🤠"),
- EmojiItem(
- "SKULL AND CROSSBONES", "smiley-emotion", "face-negative", "☠"
- ),
- EmojiItem(
- "SERIOUS FACE WITH SYMBOLS COVERING MOUTH",
- "smiley-emotion",
- "face-negative",
- "🤬",
- ),
- EmojiItem(
- "FACE WITH LOOK OF TRIUMPH", "smiley-emotion", "face-negative", "😤"
- ),
- EmojiItem("POUTING FACE", "smiley-emotion", "face-negative", "😡"),
- EmojiItem("ANGRY FACE", "smiley-emotion", "face-negative", "😠"),
- EmojiItem(
- "SMILING FACE WITH HORNS", "smiley-emotion", "face-negative", "😈"
- ),
- EmojiItem("SKULL", "smiley-emotion", "face-negative", "💀"),
- EmojiItem("IMP", "smiley-emotion", "face-negative", "👿"),
- EmojiItem(
- "FACE WITH ONE EYEBROW RAISED",
- "smiley-emotion",
- "face-neutral-skeptical",
- "🤨",
- ),
- EmojiItem(
- "LYING FACE", "smiley-emotion", "face-neutral-skeptical", "🤥"
- ),
- EmojiItem(
- "ZIPPER-MOUTH FACE",
- "smiley-emotion",
- "face-neutral-skeptical",
- "🤐",
- ),
- EmojiItem(
- "FACE WITH ROLLING EYES",
- "smiley-emotion",
- "face-neutral-skeptical",
- "🙄",
- ),
- EmojiItem(
- "FACE WITHOUT MOUTH",
- "smiley-emotion",
- "face-neutral-skeptical",
- "😶",
- ),
- EmojiItem(
- "GRIMACING FACE", "smiley-emotion", "face-neutral-skeptical", "😬"
- ),
- EmojiItem(
- "UNAMUSED FACE", "smiley-emotion", "face-neutral-skeptical", "😒"
- ),
- EmojiItem(
- "EXPRESSIONLESS FACE",
- "smiley-emotion",
- "face-neutral-skeptical",
- "😑",
- ),
- EmojiItem(
- "NEUTRAL FACE", "smiley-emotion", "face-neutral-skeptical", "😐"
- ),
- EmojiItem(
- "SMIRKING FACE", "smiley-emotion", "face-neutral-skeptical", "😏"
- ),
- EmojiItem("DROOLING FACE", "smiley-emotion", "face-sleepy", "🤤"),
- EmojiItem("SLEEPING FACE", "smiley-emotion", "face-sleepy", "😴"),
- EmojiItem("SLEEPY FACE", "smiley-emotion", "face-sleepy", "😪"),
- EmojiItem("PENSIVE FACE", "smiley-emotion", "face-sleepy", "😔"),
- EmojiItem("RELIEVED FACE", "smiley-emotion", "face-sleepy", "😌"),
- EmojiItem(
- "ROLLING ON THE FLOOR LAUGHING",
- "smiley-emotion",
- "face-smiling",
- "🤣",
- ),
- EmojiItem("UPSIDE-DOWN FACE", "smiley-emotion", "face-smiling", "🙃"),
- EmojiItem(
- "SLIGHTLY SMILING FACE", "smiley-emotion", "face-smiling", "🙂"
- ),
- EmojiItem(
- "SMILING FACE WITH SMILING EYES",
- "smiley-emotion",
- "face-smiling",
- "😊",
- ),
- EmojiItem("WINKING FACE", "smiley-emotion", "face-smiling", "😉"),
- EmojiItem(
- "SMILING FACE WITH HALO", "smiley-emotion", "face-smiling", "😇"
- ),
- EmojiItem(
- "SMILING FACE WITH OPEN MOUTH AND TIGHTLY-CLOSED EYES",
- "smiley-emotion",
- "face-smiling",
- "😆",
- ),
- EmojiItem(
- "SMILING FACE WITH OPEN MOUTH AND COLD SWEAT",
- "smiley-emotion",
- "face-smiling",
- "😅",
- ),
- EmojiItem(
- "SMILING FACE WITH OPEN MOUTH AND SMILING EYES",
- "smiley-emotion",
- "face-smiling",
- "😄",
- ),
- EmojiItem(
- "SMILING FACE WITH OPEN MOUTH",
- "smiley-emotion",
- "face-smiling",
- "😃",
- ),
- EmojiItem(
- "FACE WITH TEARS OF JOY", "smiley-emotion", "face-smiling", "😂"
- ),
- EmojiItem(
- "GRINNING FACE WITH SMILING EYES",
- "smiley-emotion",
- "face-smiling",
- "😁",
- ),
- EmojiItem("GRINNING FACE", "smiley-emotion", "face-smiling", "😀"),
- EmojiItem(
- "GRINNING FACE WITH ONE LARGE AND ONE SMALL EYE",
- "smiley-emotion",
- "face-tongue",
- "🤪",
- ),
- EmojiItem("MONEY-MOUTH FACE", "smiley-emotion", "face-tongue", "🤑"),
- EmojiItem(
- "FACE WITH STUCK-OUT TONGUE AND TIGHTLY-CLOSED EYES",
- "smiley-emotion",
- "face-tongue",
- "😝",
- ),
- EmojiItem(
- "FACE WITH STUCK-OUT TONGUE AND WINKING EYE",
- "smiley-emotion",
- "face-tongue",
- "😜",
- ),
- EmojiItem(
- "FACE WITH STUCK-OUT TONGUE", "smiley-emotion", "face-tongue", "😛"
- ),
- EmojiItem(
- "FACE SAVOURING DELICIOUS FOOD",
- "smiley-emotion",
- "face-tongue",
- "😋",
- ),
- EmojiItem("FREEZING FACE", "smiley-emotion", "face-unwell", "🥶"),
- EmojiItem("OVERHEATED FACE", "smiley-emotion", "face-unwell", "🥵"),
- EmojiItem(
- "FACE WITH UNEVEN EYES AND WAVY MOUTH",
- "smiley-emotion",
- "face-unwell",
- "🥴",
- ),
- EmojiItem(
- "SHOCKED FACE WITH EXPLODING HEAD",
- "smiley-emotion",
- "face-unwell",
- "🤯",
- ),
- EmojiItem(
- "FACE WITH OPEN MOUTH VOMITING",
- "smiley-emotion",
- "face-unwell",
- "🤮",
- ),
- EmojiItem("SNEEZING FACE", "smiley-emotion", "face-unwell", "🤧"),
- EmojiItem("NAUSEATED FACE", "smiley-emotion", "face-unwell", "🤢"),
- EmojiItem(
- "FACE WITH HEAD-BANDAGE", "smiley-emotion", "face-unwell", "🤕"
- ),
- EmojiItem(
- "FACE WITH THERMOMETER", "smiley-emotion", "face-unwell", "🤒"
- ),
- EmojiItem(
- "FACE WITH MEDICAL MASK", "smiley-emotion", "face-unwell", "😷"
- ),
- EmojiItem("DIZZY FACE", "smiley-emotion", "face-unwell", "😵"),
- EmojiItem(
- "SPEAK-NO-EVIL MONKEY", "smiley-emotion", "monkey-face", "🙊"
- ),
- EmojiItem("HEAR-NO-EVIL MONKEY", "smiley-emotion", "monkey-face", "🙉"),
- EmojiItem("SEE-NO-EVIL MONKEY", "smiley-emotion", "monkey-face", "🙈"),
- ]
-
- @staticmethod
- def categories():
- """Get a set of categories.
-
- Returns:
-
- set:
- Emoji categories.
-
- Examples:
-
- ```python
- >>> Emoji.categories()
- {'component', 'animal-nature', 'objects', 'symbols', 'flags',
- 'people-body', 'smiley-emotion', 'activities', 'food-drink',
- 'travel-places'}
- ```
- """
- cat = set()
- for e in Emoji._ITEMS:
- cat.add(e.category)
- return cat
-
- @staticmethod
- def subcategories(category: str = None):
- """Get a set of all subcategories or for a specific category.
-
- Parameters:
-
- category (str):
- The name of the category to query.
-
- Returns:
-
- set:
- All subcategories or categories for a specific category.
-
- Examples:
-
- ```python
- >>> Emoji.subcategories('activities')
- {'award-medal', 'arts & crafts', 'event', 'game', 'sport'}
- ```
- """
- subcat = set()
- for e in Emoji._ITEMS:
- if not category:
- subcat.add(e.subcategory)
- else:
- if e.category == category:
- subcat.add(e.subcategory)
- return subcat
-
- @staticmethod
- def get(name: str):
- """Lookup an emoji by name.
-
- Parameters:
-
- name (str):
- The name of the emoji to lookup.
-
- Returns:
-
- Union[EmojiItem, None]:
- The selected emoji or None if not found.
-
- Examples:
-
- ```python
- >>> Emoji.get('winking face')
- 😉
-
- >>> face = Emoji.get('winking face')
- >>> face.name
- WINKING FACE
-
- >>> face.category
- smiley-emotion
-
- >>> face.subcategory
- face.smiling
-
- >>> face.char
- 😉
- ```
- """
- for e in Emoji._ITEMS:
- if e.name.lower() == name.lower():
- return e
-
-
-if __name__ == "__main__":
- print(Emoji.get("winking face"))
- print(Emoji.categories())
- print(Emoji.subcategories())
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__init__.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__init__.py
deleted file mode 100644
index b70c281..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__init__.py
+++ /dev/null
@@ -1,18 +0,0 @@
-"""
- A partial wrapper on the tcl/tk msgcat (Tcl message catalog)
-
- The MessageCatalog provides a set of functions that can be used to
- manage multi-lingual user interfaces. Text strings are defined in a
- “message catalog” which is independent from the application, and
- which can be edited or localized without modifying the application
- source code. New languages or locales may be provided by adding a
- new file to the message catalog.
-
- https://www.tcl.tk/man/tcl/TclCmd/msgcat.html
-"""
-from ttkbootstrap.localization.msgs import initialize_localities
-from ttkbootstrap.localization.msgcat import MessageCatalog
-
-
-
-
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/__init__.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/__init__.cpython-39.pyc
deleted file mode 100644
index 08f6f1d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/__init__.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/msgcat.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/msgcat.cpython-39.pyc
deleted file mode 100644
index 1a3e66d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/msgcat.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/msgs.cpython-39.pyc b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/msgs.cpython-39.pyc
deleted file mode 100644
index d13457d..0000000
Binary files a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/__pycache__/msgs.cpython-39.pyc and /dev/null differ
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/msgcat.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/msgcat.py
deleted file mode 100644
index 3851008..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/msgcat.py
+++ /dev/null
@@ -1,179 +0,0 @@
-from ttkbootstrap.window import get_default_root
-
-
-class MessageCatalog:
- @staticmethod
- def translate(src):
- """Returns a translation of src according to the user's current
- locale.
-
- This is the main function used to localize an application.
- Instead of using an English string directly, an applicaton can
- pass the English string through `translate` and use the result.
- If an application is written for a single language in this
- fashion, then it is easy to add support for additional languages
- later simply by defining new message catalog entries.
-
- Parameters:
-
- src (str):
- The string to be translated.
-
- Returns:
-
- str:
- The translated string.
- """
- root = get_default_root()
- command = "::msgcat::mc"
- return root.tk.eval(f'{command} "{src}"')
-
- @staticmethod
- def locale(newlocale=None):
- """ "This function sets the locale to newlocale. If newlocale is
- omitted, the current locale is returned, otherwise the current
- locale is set to newlocale. The initial locale defaults to the
- locale specified in the user's environment.
-
- Parameters:
-
- newlocale (str):
- The new locale code used to define the language for the
- application.
-
- Returns:
-
- str:
- The current locale name if newlocale is None or an empty
- string.
- """
- root = get_default_root()
- command = "::msgcat::mclocale"
- return root.tk.eval(f'{command} {newlocale or ""}')
-
- @staticmethod
- def preferences():
- """Returns an ordered list of the locales preferred by the user,
- based on the user's language specification. The list is ordered
- from most specific to least preference. If the user has specified
- LANG=en_US_funky, this method would return {en_US_funky en_US en}.
-
- Returns:
-
- List[str, ...]:
- Locales preferred by the user.
- """
- root = get_default_root()
- command = "::msgcat::mcpreferences"
- items = root.tk.eval(command).split(" ")
- if len(items) > 0:
- return items[0:-1]
- else:
- return []
-
- @staticmethod
- def load(dirname):
- """Searches the specified directory for files that match the
- language specifications returned by `preferences`. Each file
- located is sourced.
-
- Parameters:
-
- dirname (str or Pathlike object):
- The directory path of the msg files.
-
- Returns:
-
- int:
- Then number of message files which matched the
- specification and were loaded.
- """
- from pathlib import Path
- msgs = Path(dirname).as_posix() # format path for tcl/tk
-
- root = get_default_root()
- command = "::msgcat::mcload"
- return int(root.tk.eval(f"{command} [list {msgs}]"))
-
- @staticmethod
- def set(locale, src, translated=None):
- """Sets the translation for 'src' to 'translated' in the
- specified locale. If translated is not specified, src is used
- for both.
-
- Parameters:
-
- locale (str):
- The local code used when translating the src.
-
- src (str):
- The original language string.
-
- translated (str):
- The translated string.
- """
- root = get_default_root()
- command = "::msgcat::mcset"
- root.tk.eval(f'{command} {locale} {src} {translated or ""}')
-
- @staticmethod
- def set_many(locale, *args):
- """Sets the translation for multiple source strings in *args in
- the specified locale and the current namespace. Must be an even
- number of args.
-
- Parameters:
-
- locale (str):
- The local code used when translating the src.
-
- *args (str):
- A series of src, translated pairs.
-
- Returns:
-
- int:
- The number of translation sets.
- """
- root = get_default_root()
- command = "::msgcat::mcmset"
- messages = " ".join([f'"{x}"' for x in args])
- out = f"{command} {locale} {{{messages}}}"
- return int(root.tk.eval(out))
-
- @staticmethod
- def max(*src):
- """Given several source strings, max returns the length of the
- longest translated string. This is useful when designing localized
- GUIs, which may require that all buttons, for example, be a fixed
- width (which will be the width of the widest button).
-
- Parameters:
-
- *src (str):
- A series of strings to compare
-
- Returns:
-
- int:
- The length of the longest str.
- """
- root = get_default_root()
- command = "::msgcat::mcmax"
- return int(root.tk.eval(f'{command} {" ".join(src)}'))
-
-
-if __name__ == "__main__":
-
- # testing
- from ttkbootstrap import localization
-
- localization.initialize_localities()
- MessageCatalog.locale("zh_cn")
- result = MessageCatalog.translate("Skip Messages")
- print(result)
- result = MessageCatalog.translate("yes")
- print(result)
- from ttkbootstrap.dialogs import Messagebox
-
- Messagebox.okcancel("this is my message")
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/msgs.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/msgs.py
deleted file mode 100644
index a529a98..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/localization/msgs.py
+++ /dev/null
@@ -1,431 +0,0 @@
-from ttkbootstrap.localization.msgcat import MessageCatalog
-
-MESSAGES = []
-
-
-def initialize_localities():
- """Load all custom msg files."""
- for m in MESSAGES:
- m.initialize()
-
-
-class LocaleMsgs:
- """A helper class to allow loading the library message catalog
- without having to package library resources which can cause
- problems with creating distributable applications with some
- packagers."""
-
- def __init__(self, locale, *msgs):
- self.locale = locale
- self.messages = msgs
-
- def initialize(self):
- """Initialize this locale in the MessageCatalog"""
- from itertools import chain
-
- messages = list(chain(*self.messages))
- MessageCatalog.set_many(self.locale, *messages)
-
-
-MESSAGES.append(
- # CZECH translation
- LocaleMsgs(
- "cs",
- ("Continue", "Pokračovat"),
- ("Retry", "Znovu"),
- ("Delete", "Vymazat"),
- ("Next", "Další"),
- ("Prev", "Předchozí"),
- ("Yes", "Ano"),
- ("No", "Ne"),
- ("Open", "Otevřený"),
- ("Close", "Zavřít"),
- ("Add", "Přidat"),
- ("Remove", "Odstranit"),
- ("Submit", "Podat"),
- ("Family", "Rodina"),
- ("Weight", "Hmotnost"),
- ("Slant", "Sklonit"),
- ("Effects", "Účinky"),
- ("Preview", "Náhled"),
- ("Size", "Velikost"),
- )
-)
-MESSAGES.append(
- # DANISH translation
- LocaleMsgs(
- "da",
- ("Continue", "Fortsætte"),
- ("Retry", "Prøv"),
- ("Delete", "Slette"),
- ("Next", "Næste"),
- ("Prev", "Forrige"),
- ("Yes", "Ja"),
- ("No", "Nej"),
- ("Open", "Åben"),
- ("Close", "Lukke"),
- ("Add", "Tilføje"),
- ("Remove", "Fjerne"),
- ("Submit", "Indsende"),
- ("Family", "Familie"),
- ("Weight", "Vægt"),
- ("Slant", "Drejning"),
- ("Effects", "Effekter"),
- ("Size", "Størrelse"),
- )
-)
-MESSAGES.append(
- # SPANISH translation
- LocaleMsgs(
- "es",
- ("Cancel", "Cancelar"),
- ("Retry", "Reintentar"),
- ("Delete", "Borrar"),
- ("Next", "Próximo"),
- ("Prev", "Anterior"),
- ("Yes", "Sí"),
- ("Open", "Abrir"),
- ("Close", "Cerrar"),
- ("Add", "Agregar"),
- ("Remove", "Eliminar"),
- ("Submit", "Enviar"),
- ("Family", "Familia"),
- ("Weight", "Peso"),
- ("Slant", "Inclinación"),
- ("Effects", "Efectos"),
- ("Preview", "Vista previa"),
- ("Size", "Tamaño"),
- )
-)
-MESSAGES.append(
- # PORTUGUESE - BRAZIL translation
- LocaleMsgs(
- "pt_br",
- ("Retry", "Repetir"),
- ("Delete", "Excluir"),
- ("Next", "Próximo"),
- ("Prev", "Anterior"),
- ("Yes", "Sim"),
- ("No", "Não"),
- ("Open", "Abrir"),
- ("Close", "Fechar"),
- ("Add", "Adicionar"),
- ("Remove", "Remover"),
- ("Submit", "Enviar"),
- ("Family", "Família"),
- ("Weight", "Espessura"),
- ("Slant", "Estilo"),
- ("Effects", "Efeitos"),
- ("Preview", "Visualizar"),
- ("Size", "Tamanho"),
- ("Should be of data type", "Deve ser do tipo de dados"),
- ("Invalid data type", "Tipo de dados inválido"),
- ("Number cannot be greater than", "O número não deve ser maior que"),
- ("Out of range", "Fora do limite"),
- ("Previous", "Anterior"),
- (
- "The quick brown fox jumps over the lazy dog.",
- "A rápida raposa marrom pula sobre o cachorro preguiçoso.",
- ),
- ("Font Selector", "Seletor de Fontes"),
- ("normal", "normal"),
- ("bold", "negrito"),
- ("roman", "romano"),
- ("italic", "itálico"),
- ("underline", "sublinhado"),
- ("overstrike", "taxado"),
- ("Color Chooser", "Seletor de Cores"),
- ("Advanced", "Avançado"),
- ("Themed", "Tema"),
- ("Standard", "Básicas"),
- ("Current", "Atual"),
- ("New", "Nova"),
- ("Hue", "Matiz"),
- ("Sat", "Sat"),
- ("Lum", "Lum"),
- ("Hex", "Hex"),
- ("Red", "Vermelho"),
- ("Green", "Verde"),
- ("Blue", "Azul"),
- ("color dropper", "Selecionador de cores (conta-gotas)"),
- ("Cancel", "Cancelar"),
- ("Search", "Buscar"),
- ("Page", "Página"),
- ("of", "de"),
- ("⎌", "↺"),
- ("Reset table", "Resetar Tabela"),
- ("Columns", "Colunas"),
- ("Move", "Mover"),
- ("Align", "Alinhar"),
- ("Hide column", "Ocultar coluna"),
- ("Delete column", "Excluir coluna"),
- ("Show All", "Exibir todas"),
- ("Move to left", "Mover para esquerda"),
- ("Move to right", "Mover para direira"),
- ("Move to first", "Mover para o início"),
- ("Move to last", "Mover para o fim"),
- ("Align left", "Alinhar à esquerda"),
- ("Align center", "Alinhar ao centro"),
- ("Align right", "Alinhar à direita"),
- ("Sort", "Classificar"),
- ("Filter", "Filtrar"),
- ("Export", "Exportar"),
- ("Delete selected rows", "Excluir linhas selecionadas"),
- ("Sort Ascending", "Ordem crescente"),
- ("Sort Descending", "Ordem decrescente"),
- ("Clear filters", "Limpar filtros"),
- ("Filter by cell's value", "Filtrar pelo valor da célula"),
- ("Hide select rows", "Ocultar linha selecionada"),
- ("Show only select rows", "Exibir somente as linhas selecionadas"),
- ("Export all records", "Exportar todos os dados"),
- ("Export current page", "Exportar página atual"),
- ("Export current selection", "Exportar seleção atual"),
- ("Export records in filter", "Exportar dados do filtro"),
- ("Move up", "Mover para cima"),
- ("Move down", "Mover para baixo"),
- ("Move to top", "Mover para o início"),
- ("Move to bottom", "Mover para o fim"),
- ("Mo", "S"),
- ("Tu", "T"),
- ("We", "Q"),
- ("Th", "Q"),
- ("Fr", "S"),
- ("Sa", "S"),
- ("Su", "D"),
- )
-)
-MESSAGES.append(
- # CHINESE - CHINA translation
- LocaleMsgs(
- "zh_cn",
- ("&Abort", "&中止"),
- ("&About...", "&关于……"),
- ("All Files", "所有文件"),
- ("Application Error", "应用程序错误"),
- ("&Apply", "&添加"),
- ("Bold", "粗体"),
- ("Bold Italic", "加粗斜体"),
- ("&Blue", "&蓝色"),
- ("Cancel", "取消"),
- ("&Cancel", "&取消"),
- (
- 'Cannot change to the directory %1\$s.\nPermission denied.',
- '无法更改目录 %1\$s。\n访问被拒绝。',
- ),
- ("Choose Directory", "选择文件夹"),
- ("Cl&ear", "清&除"),
- ("&Clear Console", "&清除终端"),
- ("Color", "颜色"),
- ("Console", "终端"),
- ("&Copy", "&复制"),
- ("Cu&t", "剪&切"),
- ("&Delete", "&删除"),
- ("Details >>", "详细信息 >>"),
- ('Directory %1\$s does not exist.', '目录 %1\$s 不存在。'),
- ("&Directory:", "&目录:"),
- ("&Edit", "&编辑"),
- ("Effects", "效果"),
- ("Error: %1\$s", "错误: %1\$s"),
- ("E&xit", "退&出"),
- ("&File", "&文件"),
- (
- 'File %1\$s already exists.\nDo you want to overwrite it?',
- '文件 %1\$s 已经存在。\n您想要覆盖它吗?',
- ),
- ('File %1\$s already exists.\n\n', '文件 %1\$s 已经存在。\n\n'),
- ('File %1\$s does not exist.', '文件 %1\$s 不存在。'),
- ("File &name:", "文件&名:"),
- ("File &names:", "文件&名:"),
- ("Files of &type:", "文件&类型:"),
- ("Fi&les:", "文&件:"),
- ("&Filter", "&过滤"),
- ("Fil&ter:", "过&滤:"),
- ("Font", "字体"),
- ("&Font:", "&字体:"),
- ("Font st&yle:", "字体&样式:"),
- ("&Green", "&绿色"),
- ("&Help", "&帮助"),
- ("Hi", "你好"),
- ("&Hide Console", "&隐藏终端"),
- ("&Ignore", "&忽略"),
- ('Invalid file name %1\$s.', '无效的文件名 %1\$s。'),
- ("Italic", "斜体"),
- ("Log Files", "日志文件"),
- ("&No", "&取消"),
- ("No", "取消"),
- ("&OK", "&确定"),
- ("OK", "确定"),
- ("Ok", "确定"),
- ("Open", "打开"),
- ("&Open", "&打开"),
- ("Open Multiple Files", "打开多个文件"),
- ("P&aste", "粘&贴"),
- ("&Quit", "&退出"),
- ("&Red", "红色"),
- ("Regular", "规则"),
- ("Replace existing file?", "替换已有文件?"),
- ("&Retry", "&重试"),
- ("Sample", "样式"),
- ("&Save", "&保存"),
- ("Save As", "另存为"),
- ("Save To Log", "保存到日志"),
- ("Select Log File", "选择日志文件"),
- ("Select a file to source", "选择一个源文件"),
- ("&Selection:", "&选择:"),
- ("&Size:", "&大小:"),
- ("Show &Hidden Directories", "显示&隐藏目录"),
- ("Show &Hidden Files and Directories", "显示&隐藏文件和目录"),
- ("Skip Messages", "跳过信息"),
- ("&Source...", "&来源……"),
- ("Stri&keout", "删&除线"),
- ("Tcl Scripts", "Tcl脚本"),
- ("Tcl for Windows", "适用于Windows的Tcl"),
- ("Text Files", "文本文档"),
- ("&Underline", "&下划线"),
- ("&Yes", "&确定"),
- ("abort", "中止"),
- ("blue", "蓝色"),
- ("cancel", "取消"),
- ("extension", "拓展"),
- ("extensions", "拓展"),
- ("green", "绿色"),
- ("ignore", "忽略"),
- ("ok", "确定"),
- ("red", "红色"),
- ("retry", "重试"),
- ("Retry", "重试"),
- ("yes", "确认"),
- ("Yes", "确认"),
- ("Should be of data type", "应为数据类型"),
- ("Invalid data type", "无效数据类型"),
- ("Number cannot be greater than", "数字不能大于"),
- ("Out of range", "超出范围"),
- ("Submit", "提交"),
- ("Delete", "删除"),
- ("Next", "下一步"),
- ("Previous", "以前的"),
- ("Open", "打开"),
- ("Close", "关闭"),
- ("Add", "添加"),
- ("Remove", "移除"),
- ("Family", "组"),
- ("Weight", "重量"),
- ("Slant", "倾斜"),
- ("Effects", "效果"),
- ("Preview", "预览"),
- ("Size", "大小"),
- ("The quick brown fox jumps over the lazy dog.", "敏捷的棕色狐狸跳过懒惰的狗。"),
- ("Print", "输出"),
- ("Printer", "打印机"),
- ("Letter ", "信 "),
- ("Legal ", "合法的 "),
- ("A4", "A4"),
- ("Grayscale", "灰度"),
- ("RGB", "RGB"),
- ("Options", "设置"),
- ("Copies", "复制"),
- ("Paper", "纸"),
- ("Scale", "规模"),
- ("Orientation", "方向"),
- ("Portrait", "竖向"),
- ("Landscape", "横向"),
- ("Output", "输出"),
- )
-)
-
-MESSAGES.append(
- LocaleMsgs(
- # French
- "fr",
- ("OK", "OK"),
- ("Ok", "Ok"),
- ("Retry", "Recommencer"),
- ("Delete", "Supprimer"),
- ("Next", "Suivant"),
- ("Prev", "Préc."),
- ("Yes", "Oui"),
- ("No", "Non"),
- ("Open", "Ouvrir"),
- ("Close", "Fermer"),
- ("Add", "Ajouter"),
- ("Remove", "Supprimer"),
- ("Submit", "Envoyer"),
- ("Family", "Famille"),
- ("Weight", "Poids"),
- ("Slant", "Italique"),
- ("Effects", "Effets"),
- ("Preview", "Prévisualiser"),
- ("Size", "Taille"),
- ("Should be a of data type", "Doit être du type de données"),
- ("Invalid data type", "Type de données invalide"),
- ("Number cannot be greater than", "Le nombre ne peut pas être plus grand que"),
- ("Out of range", "Hors limites"),
- ("Previous", "Précédent"),
- ("The quick brown fox jumps over the lazy dog.", "The quick brown fox jumps over the lazy dog."),
- ("Font Selector", "Sélecteur de Polices"),
- ("normal", "normal"),
- ("bold", "gras"),
- ("roman", "roman"),
- ("italic", "italique"),
- ("underline", "souligné"),
- ("overstrike", "barré"),
- ("Color Chooser", "Sélecteur de couleur"),
- ("Advanced", "Avancé"),
- ("Themed", "Thème"),
- ("Standard", "Standard"),
- ("Current", "Courant"),
- ("New", "Nouveau"),
- ("Hue", "Teinte"),
- ("Sat", "Sat"),
- ("Lum", "Lum"),
- ("Hex", "Hex"),
- ("Red", "Rouge"),
- ("Green", "Vert"),
- ("Blue", "Bleu"),
- ("color dropper", "Sélecteur de couleurs"),
- ("Cancel", "Annuler"),
- ("Search", "Chercher"),
- ("Page", "Page"),
- ("of", "de"),
- ("⎌", "↺"),
- ("Reset table", "Réinit. table"),
- ("Columns", "Colonnes"),
- ("Move", "Déplacer"),
- ("Align", "Aligner"),
- ("Hide column", "Cacher la colonne"),
- ("Delete column", "Supprimer la colonne"),
- ("Show All", "Afficher tout"),
- ("Move to left", "Déplacer vers la gauche"),
- ("Move to right", "Déplacer vers la droite"),
- ("Move to first", "Déplacer en premier"),
- ("Move to last", "Déplacer en dernier"),
- ("Align left", "Aligner à gauche"),
- ("Align center", "Aligner au centre"),
- ("Align right", "Aligner à droite"),
- ("Sort", "Trier"),
- ("Filter", "Filtrer"),
- ("Export", "Exporter"),
- ("Delete selected rows", "Supprimer les lignes sélectionnées"),
- ("Sort Ascending", "Tri ascendant"),
- ("Sort Descending", "Tri descendant"),
- ("Clear filters", "Effacer les filtres"),
- ("Filter by cell's value", "Filtrer par valeur de cellules"),
- ("Hide select rows", "Cacher les lignes sélectionnées"),
- ("Show only select rows", "N’afficher que les lignes sélectionnées"),
- ("Export all records", "Exporter tous les enregistrements"),
- ("Export current page", "Exporter la page active"),
- ("Export current selection", "Exporter la sélection"),
- ("Export records in filter", "Exporter les enregistrements filtrés"),
- ("Move up", "Déplacer vers le haut"),
- ("Move down", "Déplacer vers le bas"),
- ("Move to top", "Déplacer en premier"),
- ("Move to bottom", "Déplacer en dernier"),
- ("Mo", "Lu"),
- ("Tu", "Ma"),
- ("We", "Me"),
- ("Th", "Je"),
- ("Fr", "Ve"),
- ("Sa", "Sa"),
- ("Su", "Di"),
- )
-)
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/publisher.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/publisher.py
deleted file mode 100644
index 61e5f24..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/publisher.py
+++ /dev/null
@@ -1,118 +0,0 @@
-from enum import Enum
-from typing import List
-
-
-class Channel(Enum):
- """A grouping for Publisher subscribers. Indicates whether the
- widget is a legacy `STD` tk widget or a styled `TTK` widget.
-
- Attributes:
-
- STD (1):
- Legacy tkinter widgets.
-
- TTK (2):
- Themed tkinter widgets.
- """
-
- STD = 1
- TTK = 2
-
-
-class Subscriber:
- """A subcriber data class used to store information about a specific
- subcriber to the `Publisher`."""
-
- def __init__(self, name, func, channel):
- """Create a subscriber.
-
- Parameters:
-
- name (str):
- The name of the subscriber
-
- func (Callable):
- The function to call when messaging.
-
- channel (Channel):
- The subscription channel.
- """
- self.name = name
- self.func = func
- self.channel = channel
-
-
-class Publisher:
- """A class used to publish events for widget updates for theme changes
- or configurations"""
-
- __subscribers = {}
-
- @staticmethod
- def subscriber_count():
- return len(Publisher.__subscribers)
-
- @staticmethod
- def subscribe(name, func, channel):
- """Subscribe to an event.
-
- Parameters:
-
- name (str):
- The widget's tkinter/tcl name.
-
- func (Callable):
- A function to call when passing a message.
-
- channel (Channel):
- Indicates the channel grouping the subscribers.
- """
- subs = Publisher.__subscribers
- subs[name] = Subscriber(name, func, channel)
-
- @staticmethod
- def unsubscribe(name):
- """Remove a subscriber
-
- Parameters:
-
- name (str):
- The widget's tkinter/tcl name.
- """
- subs = Publisher.__subscribers
- try:
- del subs[str(name)]
- except:
- pass
-
- def get_subscribers(channel):
- """Return a list of subscribers
-
- Returns:
-
- List:
- List of key-value tuples
- """
- subs = Publisher.__subscribers.values()
- channel_subs = [s for s in subs if s.channel == channel]
- return channel_subs
-
- def publish_message(channel, *args):
- """Publish a message to all subscribers
-
- Parameters:
-
- channel (Channel):
- The name of the channel to subscribe.
-
- **args:
- optional arguments to pass to the subscribers.
- """
- subs: List[Subscriber] = Publisher.get_subscribers(channel)
- for sub in subs:
- sub.func(*args)
-
- @staticmethod
- def clear_subscribers():
- """Reset all subscriptions."""
- Publisher.__subscribers.clear()
diff --git a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/scrolled.py b/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/scrolled.py
deleted file mode 100644
index 1a0384d..0000000
--- a/PepDeb64/fusato/config/includes.installer/preseed/py/ttkbootstrap/scrolled.py
+++ /dev/null
@@ -1,476 +0,0 @@
-"""
- This module contains various custom scrolling widgets, including
- `ScrolledText` and `ScrolledFrame`.
-"""
-import ttkbootstrap as ttk
-from ttkbootstrap.constants import *
-from tkinter import Pack, Place, Grid
-
-
-class ScrolledText(ttk.Frame):
- """A text widget with optional vertical and horizontal scrollbars.
- Setting `autohide=True` will cause the scrollbars to hide when the
- mouse is not over the widget. The vertical scrollbar is on by
- default, but can be turned off. The horizontal scrollbar can be
- enabled by setting `vbar=True`.
-
- This widget is identical in configuration to the `Text` widget other
- than the scrolling frame. https://tcl.tk/man/tcl8.6/TkCmd/text.htm
-
- ![scrolled text](../../../assets/scrolled/scrolledtext.gif)
-
- Examples:
-
- ```python
- import ttkbootstrap as ttk
- from ttkbootstrap.constants import *
- from ttkbootstrap.scrolled import ScrolledText
-
- app = ttk.Window()
-
- # scrolled text with autohide vertical scrollbar
- st = ScrolledText(app, padding=5, height=10, autohide=True)
- st.pack(fill=BOTH, expand=YES)
-
- # add text
- st.insert(END, 'Insert your text here.')
-
- app.mainloop()
- ```
- """
-
- def __init__(
- self,
- master=None,
- padding=2,
- bootstyle=DEFAULT,
- autohide=False,
- vbar=True,
- hbar=False,
- **kwargs,
- ):
- """
- Parameters:
-
- master (Widget):
- The parent widget.
-
- padding (int):
- The amount of empty space to create on the outside of
- the widget.
-
- bootstyle (str):
- A style keyword used to set the color and style of the
- vertical scrollbar. Available options include -> primary,
- secondary, success, info, warning, danger, dark, light.
-
- vbar (bool):
- A vertical scrollbar is shown when **True** (default).
-
- hbar (bool):
- A horizontal scrollbar is shown when **True**. Turning
- on this scrollbar will also set `wrap="none"`. This
- scrollbar is _off_ by default.
-
- autohide (bool):
- When **True**, the scrollbars will hide when the mouse
- is not within the frame bbox.
-
- **kwargs (Dict[str, Any]):
- Other keyword arguments passed to the `Text` widget.
- """
- super().__init__(master, padding=padding)
-
- # setup text widget
- self._text = ttk.Text(self, padx=50, **kwargs)
- self._hbar = None
- self._vbar = None
-
- # delegate text methods to frame
- for method in vars(ttk.Text).keys():
- if any(["pack" in method, "grid" in method, "place" in method]):
- pass
- else:
- setattr(self, method, getattr(self._text, method))
-
- # setup scrollbars
- if vbar:
- self._vbar = ttk.Scrollbar(
- master=self,
- bootstyle=bootstyle,
- command=self._text.yview,
- orient=VERTICAL,
- )
- self._vbar.place(relx=1.0, relheight=1.0, anchor=NE)
- self._text.configure(yscrollcommand=self._vbar.set)
-
- if hbar:
- self._hbar = ttk.Scrollbar(
- master=self,
- bootstyle=bootstyle,
- command=self._text.xview,
- orient=HORIZONTAL,
- )
- self._hbar.place(rely=1.0, relwidth=1.0, anchor=SW)
- self._text.configure(xscrollcommand=self._hbar.set, wrap="none")
-
- self._text.pack(side=LEFT, fill=BOTH, expand=YES)
-
- # position scrollbars
- if self._hbar:
- self.update_idletasks()
- self._text_width = self.winfo_reqwidth()
- self._scroll_width = self.winfo_reqwidth()
-
- self.bind("", self._on_configure)
-
- if autohide:
- self.autohide_scrollbar()
- self.hide_scrollbars()
-
- def _on_configure(self, *_):
- """Callback for when the configure method is used"""
- if self._hbar:
- self.update_idletasks()
- text_width = self.winfo_width()
- vbar_width = self._vbar.winfo_width()
- relx = (text_width - vbar_width) / text_width
- self._hbar.place(rely=1.0, relwidth=relx)
-
- @property
- def text(self):
- """Returns the internal text object"""
- return self._text
-
- @property
- def hbar(self):
- """Returns the internal horizontal scrollbar"""
- return self._hbar
-
- @property
- def vbar(self):
- """Returns the internal vertical scrollbar"""
- return self._vbar
-
- def hide_scrollbars(self, *_):
- """Hide the scrollbars."""
- try:
- self._vbar.lower(self._text)
- except:
- pass
- try:
- self._hbar.lower(self._text)
- except:
- pass
-
- def show_scrollbars(self, *_):
- """Show the scrollbars."""
- try:
- self._vbar.lift(self._text)
- except:
- pass
- try:
- self._hbar.lift(self._text)
- except:
- pass
-
- def autohide_scrollbar(self, *_):
- """Show the scrollbars when the mouse enters the widget frame,
- and hide when it leaves the frame."""
- self.bind("", self.show_scrollbars)
- self.bind("", self.hide_scrollbars)
-
-
-class ScrolledFrame(ttk.Frame):
- """A widget container with a vertical scrollbar.
-
- The ScrolledFrame fills the width of its container. The height is
- either set explicitly or is determined by the content frame's
- contents.
-
- This widget behaves mostly like a normal frame other than the
- exceptions stated already. Another exception is when packing it
- into a Notebook or Panedwindow. In this case, you'll need to add
- the container instead of the content frame. For example,
- `mynotebook.add(myscrolledframe.container)`.
-
- The scrollbar has an autohide feature that can be turned on by
- setting `autohide=True`.
-
- Examples:
-
- ```python
- import ttkbootstrap as ttk
- from ttkbootstrap.constants import *
- from ttkbootstrap.scrolled import ScrolledFrame
-
- app = ttk.Window()
-
- sf = ScrolledFrame(app, autohide=True)
- sf.pack(fill=BOTH, expand=YES, padx=10, pady=10)
-
- # add a large number of checkbuttons into the scrolled frame
- for x in range(20):
- ttk.Checkbutton(sf, text=f"Checkbutton {x}").pack(anchor=W)
-
- app.mainloop()
- ```"""
-
- def __init__(
- self,
- master=None,
- padding=2,
- bootstyle=DEFAULT,
- autohide=False,
- height=200,
- width=300,
- scrollheight=None,
- **kwargs,
- ):
- """
- Parameters:
-
- master (Widget):
- The parent widget.
-
- padding (int):
- The amount of empty space to create on the outside of
- the widget.
-
- bootstyle (str):
- A style keyword used to set the color and style of the
- vertical scrollbar. Available options include -> primary,
- secondary, success, info, warning, danger, dark, light.
-
- autohide (bool):
- When **True**, the scrollbars will hide when the mouse
- is not within the frame bbox.
-
- height (int):
- The height of the container frame in screen units.
-
- width (int):
- The width of the container frame in screen units.
-
- scrollheight (int):
- The height of the content frame in screen units. If None,
- the height is determined by the frame contents.
-
- **kwargs (Dict[str, Any]):
- Other keyword arguments passed to the content frame.
- """
- # content frame container
- self.container = ttk.Frame(
- master=master,
- relief=FLAT,
- borderwidth=0,
- width=width,
- height=height,
- )
- self.container.bind("", lambda _: self.yview())
- self.container.propagate(0)
-
- # content frame
- super().__init__(
- master=self.container,
- padding=padding,
- bootstyle=bootstyle.replace('round', ''),
- width=width,
- height=height,
- **kwargs,
- )
- self.place(rely=0.0, relwidth=1.0, height=scrollheight)
-
- # vertical scrollbar
- self.vscroll = ttk.Scrollbar(
- master=self.container,
- command=self.yview,
- orient=VERTICAL,
- bootstyle=bootstyle,
- )
- self.vscroll.pack(side=RIGHT, fill=Y)
-
- self.winsys = self.tk.call("tk", "windowingsystem")
-
- # setup autohide scrollbar
- self.autohide = autohide
- if self.autohide:
- self.hide_scrollbars()
-
- # widget event binding
- self.container.bind("", self._on_enter, "+")
- self.container.bind("", self._on_leave, "+")
- self.container.bind("