mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2024-12-30 09:46:30 -05:00
90d5372813
Original source of icons is the icon8 library (http://icons8.com/c/flat-color-icons) and Paomedia (https://github.com/paomedia/small-n-flat). All icons used are licensed MIT or CC0; annotated in COPYING. * Closes #4071 * Increase default size of database icons to 24px and entry preview panel to 48px * Add shell script to assemble the database icons * Use QIcon to seamlessly support High DPI displays and pixmap caching * Add badge support for KeeShare groups and expired entries. * Guard against use of QPixmap::fromImage without a GUI * Add SVG minify and improve `make icons` Co-authored-by: Wolfram Rösler <wolfram@roesler-ac.de>
124 lines
5.5 KiB
Bash
124 lines
5.5 KiB
Bash
#!/bin/bash
|
|
# Assemble database icons from the icons8 collection
|
|
# by Wolfram Rösler 2020-04-30
|
|
|
|
NC='\033[0m'
|
|
RED='\033[0;31m'
|
|
YELLOW='\033[0;33m'
|
|
|
|
# Check parameters
|
|
if [[ $# != 1 ]];then
|
|
echo "Usage: $0 ICONS8"
|
|
echo "ICONS8 is the directory containing the Icons8 flat-color-icons repository"
|
|
echo "(git clone https://github.com/icons8/flat-color-icons)".
|
|
exit
|
|
fi
|
|
|
|
# Check source directory
|
|
SRCDIR="$1"
|
|
if [ ! -d "$SRCDIR" ];then
|
|
echo -e "${RED}icons8 directory doesn't exist: ${SRCDIR}${NC}"
|
|
exit 1
|
|
fi
|
|
|
|
# Check destination directory
|
|
DSTDIR=share/icons/database
|
|
if [ ! -d "$DSTDIR" ];then
|
|
echo -e "${RED}Please invoke this script from the KeePassXC source root directory.${NC}"
|
|
exit 1
|
|
fi
|
|
|
|
# Copy one icon from the icons8 collection.
|
|
#
|
|
# Usage: copy I8NAME Cnn
|
|
# I8NAME is the file name (without extender and without
|
|
# the "icon8-" prefix) in the icons8 directory.
|
|
# Cnn is C plus the number of the database icon.
|
|
#
|
|
# Example: copy key C00
|
|
copy() {
|
|
# The source file is:
|
|
SRC="${SRCDIR}/svg/${1}.svg"
|
|
if [ ! -f "$SRC" ];then
|
|
echo -e "${RED}Cannot find source icon for ${2} (${SRC})${NC}"
|
|
return
|
|
fi
|
|
|
|
# Copy the source file to the destination, keeping
|
|
# the source file's extension
|
|
DST="$DSTDIR/${2}.svg"
|
|
cp $SRC $DST
|
|
echo "Copied icon for ${1} to ${DST}"
|
|
}
|
|
|
|
# Now do the actual work
|
|
#copy key C00_Password # Derivative work from key
|
|
copy globe C01_Package_Network
|
|
copy high_priority C02_MessageBox_Warning
|
|
copy data_protection C03_Server # No exact match
|
|
copy survey C04_Klipper
|
|
copy businessman C05_Edu_Languages
|
|
copy services C06_KCMDF
|
|
#copy notepad C07_Kate # Provided by paomedia/small-n-flat
|
|
copy external C08_Socket
|
|
copy business_contact C09_Identity
|
|
copy address_book C10_Kontact
|
|
copy old_time_camera C11_Camera
|
|
copy entering_heaven_alive C12_IRKickFlash # No exact match
|
|
#copy keys-holder C13_KGPG_Key3 # Derivative work from key
|
|
copy crystal_oscillator C14_Laptop_Power
|
|
copy video_projector C15_Scanner
|
|
copy bookmark C16_Mozilla_Firebird
|
|
#copy cd C17_CDROM_Unmount # Provided by paomedia/small-n-flat
|
|
#copy monitor C18_Display # Provided by paomedia/small-n-flat
|
|
#copy feedback C19_Mail_Generic # Derivative work from feedback
|
|
copy settings C20_Misc
|
|
copy inspection C21_KOrganizer
|
|
copy file C22_ASCII
|
|
copy template C23_Icons
|
|
copy flash_on C24_Connect_Established
|
|
copy safe C25_Folder_Mail # No exact match
|
|
#copy save C26_FileSave # Provided by paomedia/small-n-flat
|
|
#copy cloud-storage C27_NFS_Unmount # Provided by paomedia/small-n-flat
|
|
copy film_reel C28_QuickTime
|
|
#copy C29_KGPG_Term # Derivative work from command_line and key
|
|
#copy command_line C30_Konsole # Derivative work from command_line
|
|
copy print C31_FilePrint
|
|
copy org_unit C32_FSView
|
|
copy cloth C33_Run
|
|
copy support C34_Configure
|
|
#copy vpn C35_KRFB # Derivative work from paomedia/small-n-flat
|
|
#copy archive-folder C36_Ark # Derivative work from folder
|
|
#copy percentage C37_KPercentage # Original work
|
|
#copy windows-client C38_Samba_Unmount # Derivative work from paomedia/small-n-flat
|
|
copy clock C39_History
|
|
copy search C40_Mail_Find
|
|
copy landscape C41_VectorGfx
|
|
copy electronics C42_KCMMemory
|
|
copy empty_trash C43_EditTrash
|
|
#copy C44_KNotes # Provided by paomedia/small-n-flat
|
|
#copy C45_Cancel # Original work
|
|
#copy C46_Help # Original work
|
|
copy package C47_KPackage
|
|
copy folder C48_Folder
|
|
copy opened_folder C49_Folder_Blue_Open
|
|
copy data_encryption C50_Folder_Tar
|
|
#copy unlock C51_Decrypted # Provided by paomedia/small-n-flat
|
|
#copy lock C52_Encrypted # Provided by paomedia/small-n-flat
|
|
#copy C53_Apply # Original work
|
|
#copy pencil C54_Signature # Provided by paomedia/small-n-flat
|
|
copy image_file C55_Thumbnail
|
|
copy contacts C56_KAddressBook
|
|
copy data_sheet C57_View_Text
|
|
copy podium_with_speaker C58_KPGP # No exact match
|
|
#copy hammer C59_Package_Development # Provided by paomedia/small-n-flat
|
|
copy home C60_KFM_Home
|
|
#copy C61_Services # Original work
|
|
copy linux C62_Tux
|
|
copy android_os C63_Feather
|
|
#copy C64_Apple # Derivative work created from simple-icons apple.svg
|
|
copy wikipedia C65_W
|
|
#copy currency_exchange C66_Money # Provided by paomedia/small-n-flat
|
|
copy diploma_1 C67_Certificate
|
|
copy smartphone_tablet C68_Blackberry
|