1
0
Fork 0
mirror of synced 2024-06-02 10:35:02 +12:00

Add more windows extension

This commit is contained in:
Rafał Mikrut 2022-06-06 16:45:36 +02:00
parent db09dc9363
commit 36ddda6289
5 changed files with 59 additions and 514 deletions

27
.github/workflows/windows.yml vendored Normal file
View file

@ -0,0 +1,27 @@
name: 🏁 Windows
on:
push:
pull_request:
schedule:
- cron: '0 0 * * 2'
env:
CARGO_TERM_COLOR: always
jobs:
windows-gui-release-normal-app:
runs-on: ubuntu-latest
steps:
- run: |
echo This job does not specify a container.
echo It runs directly on the virtual machine.
name: Run on VM
container:
runs-on: ubuntu-latest
container: mglolenstine/gtk4-cross:rust-gtk-4.6
steps:
- run: |
echo This job does specify a container.
echo It runs in the container instead of the VM.
git status
name: Run in container

View file

@ -1,511 +0,0 @@
name: 🏁 Windows
on:
push:
pull_request:
schedule:
- cron: '0 0 * * 2'
env:
CARGO_TERM_COLOR: always
jobs:
windows-cli:
strategy:
matrix:
toolchain: [ stable ]
type: [ release ]
runs-on: windows-2019
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.toolchain }}
override: true
- uses: actions/cache@v2
with:
path: |
target
key: windows-cli-${{github.ref}}-${{github.sha}}
restore-keys: |
windows-cli-${{github.ref}}-${{github.sha}}
- name: Build CLI Debug
run: cargo build --bin czkawka_cli
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0 -D warnings"
if: ${{ matrix.type == 'debug'}}
- name: Build CLI Release
run: cargo build --release --bin czkawka_cli
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0 -D warnings"
if: ${{ matrix.type == 'release'}}
- name: Store Windows CLI
uses: actions/upload-artifact@v2
with:
name: czkawka_cli-${{ runner.os }}-${{ matrix.toolchain }}
path: target/release/czkawka_cli.exe
if: ${{ matrix.type == 'release' }}
# Duplicate finder checks included and excluded directories
# Others are just check delete files number
# Windows build have some elements changed like powershell before wget and unzip, python instead python3, rm -r instead rm -r and one (at the top) additional test which check size of characters
- name: test
run: |
powershell wget https://github.com/qarmin/czkawka/releases/download/1.1.0/TestSuite.zip -O TestSuite.zip
powershell unzip TestSuite.zip -d TestSuite
python misc/check_results.py TestSuite 15 8
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" "$(pwd)\testsuite" -e "$(pwd)/TestSuite/subFolder" -D aeo -m 1024
python misc/check_results.py TestSuite 13 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" "$(pwd)/teStSuite" -D aen -m 1024
python misc/check_results.py TestSuite 7 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli dup -d "$(pwd)\TestSuite" "$(pwd)/TESTSUITE" -D aen -m 1024
python misc/check_results.py TestSuite 7 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" -D aen -m 1024
python misc/check_results.py TestSuite 7 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" -D aen -m 1024
python misc/check_results.py TestSuite 7 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" -x TEXT -D aeo -m 1024
python misc/check_results.py TestSuite 14 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" -e "$(pwd)/TestSuite/SubFolder" -D aeo -m 1024
python misc/check_results.py TestSuite 13 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" -m 1500 -D aeo
python misc/check_results.py TestSuite 8 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" -R -m 1024
python misc/check_results.py TestSuite 15 8
target/release/czkawka_cli dup -d "$(pwd)/TestSuite" -R -D aeo -m 1024
python misc/check_results.py TestSuite 13 8
target/release/czkawka_cli big -d "$(pwd)/TestSuite"
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli empty-files -d "$(pwd)/TestSuite"
python misc/check_results.py TestSuite 15 8
target/release/czkawka_cli empty-files -d "$(pwd)/TestSuite" -D
python misc/check_results.py TestSuite 13 8
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli empty-folders -d "$(pwd)/TestSuite"
python misc/check_results.py TestSuite 15 8
target/release/czkawka_cli empty-folders -d "$(pwd)/TestSuite" -D
python misc/check_results.py TestSuite 15 2
rm -r TestSuite
unzip TestSuite.zip -d TestSuite
target/release/czkawka_cli temp -d "$(pwd)/TestSuite"
python misc/check_results.py TestSuite 15 8
target/release/czkawka_cli temp -d "$(pwd)/TestSuite" -D
python misc/check_results.py TestSuite 14 8
if: ${{ matrix.type == 'release' }}
windows-gui-release-normal-app:
strategy:
matrix:
toolchain: [ stable ]
type: [ release ]
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.toolchain }}
override: true
- name: Install Gtk, Mingw, unzip, zip and wget
run: sudo apt-get update; sudo apt install mingw-w64 libgtk-4-dev unzip wget zip -y
- name: Build GUI Release Cross Compile
run: |
rustup target add x86_64-pc-windows-gnu
echo "[target.x86_64-pc-windows-gnu]" > ~/.cargo/config
echo "linker = \"x86_64-w64-mingw32-gcc\"" >> ~/.cargo/config
echo "ar = \"x86_64-w64-mingw32-gcc-ar\"" >> ~/.cargo/config
GTK_LIBRARY="$(pwd)/gtk_library"
GTK_APP="$(pwd)/gtk_app"
GTK_THEME="$(pwd)/gtk_theme"
wget https://github.com/qarmin/gtk_library_store/releases/download/3.24.0/gtk4_4_2_test.zip
unzip gtk4_4_2_test.zip -d $GTK_LIBRARY
GTK_LIBRARY="$GTK_LIBRARY/mingw64"
wget https://github.com/nrhodes91/AdMin/archive/master.zip
unzip master.zip -d $GTK_THEME
PKG_CONFIG_ALLOW_CROSS=1 PKG_CONFIG_PATH="$GTK_LIBRARY/lib/pkgconfig" RUSTFLAGS="-L $GTK_LIBRARY/lib" cargo build --target=x86_64-pc-windows-gnu --bin czkawka_gui --release
strip target/x86_64-pc-windows-gnu/release/czkawka_gui.exe
mkdir $GTK_APP
cp target/x86_64-pc-windows-gnu/release/czkawka_gui.exe $GTK_APP
cp $GTK_LIBRARY/bin/*.dll $GTK_APP
mkdir -p $GTK_APP/share/glib-2.0/schemas
mkdir $GTK_APP/share/icons
cp $GTK_LIBRARY/share/glib-2.0/schemas/* $GTK_APP/share/glib-2.0/schemas
cp -r $GTK_LIBRARY/share/icons/* $GTK_APP/share/icons
mkdir $GTK_APP/lib
cp -r $GTK_LIBRARY/lib/gdk-pixbuf-2.0 $GTK_APP/lib
mkdir -p $GTK_APP/share/themes
mkdir -p $GTK_APP/share/gtk-3.0
echo "[Settings]" > $GTK_APP/share/gtk-3.0/settings.ini
echo "gtk-theme-name = admin-gtk3-dark-osx" >> $GTK_APP/share/gtk-3.0/settings.ini
echo "gtk-font-name = Segoe UI 10" >> $GTK_APP/share/gtk-3.0/settings.ini
echo "gtk-xft-rgba = rgb" >> $GTK_APP/share/gtk-3.0/settings.ini
cp $GTK_THEME/AdMin-master/admin-gtk3-dark-osx $GTK_APP/share/themes -r -L
# This part is only unique for Czkawka
# This code allows to check which icons are used in Czkawka
# cd czkawka/ui
# rg icon-name
rm -rf $GTK_APP/share/icons/Adwaita/16x16
rm -rf $GTK_APP/share/icons/Adwaita/22x22
rm -rf $GTK_APP/share/icons/Adwaita/24x24
rm -rf $GTK_APP/share/icons/Adwaita/256x256
rm -rf $GTK_APP/share/icons/Adwaita/32x32
rm -rf $GTK_APP/share/icons/Adwaita/48x48
rm -rf $GTK_APP/share/icons/Adwaita/512x512
rm -rf $GTK_APP/share/icons/Adwaita/64x64
rm -rf $GTK_APP/share/icons/Adwaita/8x8
rm -rf $GTK_APP/share/icons/Adwaita/96x96
rm -rf $GTK_APP/share/icons/Adwaita/cursors
rm -rf $GTK_APP/share/icons/Adwaita/scalable
rm -rf $GTK_APP/share/icons/Adwaita/scalable-up-to-32
rm -rf $GTK_APP/share/icons/hicolor
wget https://github.com/qarmin/gtk_library_store/releases/download/3.24.0/czkawka_icons.zip
unzip czkawka_icons.zip -d $GTK_APP/share/icons/Adwaita
zip -r gtk_app.zip $GTK_APP
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0 -D warnings"
- name: Store Windows GUI CrossComplile
uses: actions/upload-artifact@v2
with:
name: czkawka_gui-release-normal-app-${{ matrix.toolchain }}
path: gtk_app.zip
windows-gui-release-console:
strategy:
matrix:
toolchain: [ stable ]
type: [ release ]
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.toolchain }}
override: true
- name: Install Gtk, Mingw, unzip, zip and wget
run: sudo apt-get update; sudo apt install mingw-w64 libgtk-4-dev unzip wget zip -y
- name: Build GUI Release Cross Compile
run: |
sed -i 's/windows_subsystem = "windows"/windows_subsystem = "console"/' czkawka_gui/src/main.rs
rustup target add x86_64-pc-windows-gnu
echo "[target.x86_64-pc-windows-gnu]" > ~/.cargo/config
echo "linker = \"x86_64-w64-mingw32-gcc\"" >> ~/.cargo/config
echo "ar = \"x86_64-w64-mingw32-gcc-ar\"" >> ~/.cargo/config
GTK_LIBRARY="$(pwd)/gtk_library"
GTK_APP="$(pwd)/gtk_app"
GTK_THEME="$(pwd)/gtk_theme"
wget https://github.com/qarmin/gtk_library_store/releases/download/3.24.0/mingw64.zip
unzip mingw64.zip -d $GTK_LIBRARY
GTK_LIBRARY="$GTK_LIBRARY/mingw64"
wget https://github.com/nrhodes91/AdMin/archive/master.zip
unzip master.zip -d $GTK_THEME
PKG_CONFIG_ALLOW_CROSS=1 PKG_CONFIG_PATH="$GTK_LIBRARY/lib/pkgconfig" RUSTFLAGS="-L $GTK_LIBRARY/lib" cargo build --target=x86_64-pc-windows-gnu --bin czkawka_gui --release
strip target/x86_64-pc-windows-gnu/release/czkawka_gui.exe
mkdir $GTK_APP
cp target/x86_64-pc-windows-gnu/release/czkawka_gui.exe $GTK_APP
cp $GTK_LIBRARY/bin/*.dll $GTK_APP
mkdir -p $GTK_APP/share/glib-2.0/schemas
mkdir $GTK_APP/share/icons
cp $GTK_LIBRARY/share/glib-2.0/schemas/* $GTK_APP/share/glib-2.0/schemas
cp -r $GTK_LIBRARY/share/icons/* $GTK_APP/share/icons
mkdir $GTK_APP/lib
cp -r $GTK_LIBRARY/lib/gdk-pixbuf-2.0 $GTK_APP/lib
mkdir -p $GTK_APP/share/themes
mkdir -p $GTK_APP/share/gtk-3.0
echo "[Settings]" > $GTK_APP/share/gtk-3.0/settings.ini
echo "gtk-theme-name = admin-gtk3-dark-osx" >> $GTK_APP/share/gtk-3.0/settings.ini
echo "gtk-font-name = Segoe UI 10" >> $GTK_APP/share/gtk-3.0/settings.ini
echo "gtk-xft-rgba = rgb" >> $GTK_APP/share/gtk-3.0/settings.ini
cp $GTK_THEME/AdMin-master/admin-gtk3-dark-osx $GTK_APP/share/themes -r -L
# This part is only unique for Czkawka
# This code allows to check which icons are used in Czkawka
# cd czkawka/ui
# rg icon-name
rm -rf $GTK_APP/share/icons/Adwaita/16x16
rm -rf $GTK_APP/share/icons/Adwaita/22x22
rm -rf $GTK_APP/share/icons/Adwaita/24x24
rm -rf $GTK_APP/share/icons/Adwaita/256x256
rm -rf $GTK_APP/share/icons/Adwaita/32x32
rm -rf $GTK_APP/share/icons/Adwaita/48x48
rm -rf $GTK_APP/share/icons/Adwaita/512x512
rm -rf $GTK_APP/share/icons/Adwaita/64x64
rm -rf $GTK_APP/share/icons/Adwaita/8x8
rm -rf $GTK_APP/share/icons/Adwaita/96x96
rm -rf $GTK_APP/share/icons/Adwaita/cursors
rm -rf $GTK_APP/share/icons/Adwaita/scalable
rm -rf $GTK_APP/share/icons/Adwaita/scalable-up-to-32
rm -rf $GTK_APP/share/icons/hicolor
wget https://github.com/qarmin/gtk_library_store/releases/download/3.24.0/czkawka_icons.zip
unzip czkawka_icons.zip -d $GTK_APP/share/icons/Adwaita
zip -r gtk_app.zip $GTK_APP
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0 -D warnings"
- name: Store Windows GUI CrossComplile
uses: actions/upload-artifact@v2
with:
name: czkawka_gui-release-console-${{ matrix.toolchain }}
path: gtk_app.zip
# windows-gui-debug-normal-app:
# strategy:
# matrix:
# toolchain: [ stable ]
# type: [ release ]
# runs-on: ubuntu-22.04
# steps:
# - uses: actions/checkout@v2
#
# - uses: actions-rs/toolchain@v1
# with:
# toolchain: ${{ matrix.toolchain }}
# override: true
#
# - name: Install Gtk, Mingw, unzip, zip and wget
# run: sudo apt-get update; sudo apt install mingw-w64 libgtk-4-dev unzip wget zip -y
#
# - name: Build GUI Debug Cross Compile
# run: |
# rustup target add x86_64-pc-windows-gnu
#
# echo "[target.x86_64-pc-windows-gnu]" > ~/.cargo/config
# echo "linker = \"x86_64-w64-mingw32-gcc\"" >> ~/.cargo/config
# echo "ar = \"x86_64-w64-mingw32-gcc-ar\"" >> ~/.cargo/config
#
# GTK_LIBRARY="$(pwd)/gtk_library"
# GTK_APP="$(pwd)/gtk_app"
# GTK_THEME="$(pwd)/gtk_theme"
#
# wget https://github.com/qarmin/gtk_library_store/releases/download/3.24.0/mingw64.zip
# unzip mingw64.zip -d $GTK_LIBRARY
# GTK_LIBRARY="$GTK_LIBRARY/mingw64"
#
# wget https://github.com/nrhodes91/AdMin/archive/master.zip
# unzip master.zip -d $GTK_THEME
#
# PKG_CONFIG_ALLOW_CROSS=1 PKG_CONFIG_PATH="$GTK_LIBRARY/lib/pkgconfig" RUSTFLAGS="-L $GTK_LIBRARY/lib" cargo build --target=x86_64-pc-windows-gnu --bin czkawka_gui
#
# strip target/x86_64-pc-windows-gnu/debug/czkawka_gui.exe
#
# mkdir $GTK_APP
# cp target/x86_64-pc-windows-gnu/debug/czkawka_gui.exe $GTK_APP
# cp $GTK_LIBRARY/bin/*.dll $GTK_APP
# mkdir -p $GTK_APP/share/glib-2.0/schemas
# mkdir $GTK_APP/share/icons
# cp $GTK_LIBRARY/share/glib-2.0/schemas/* $GTK_APP/share/glib-2.0/schemas
# cp -r $GTK_LIBRARY/share/icons/* $GTK_APP/share/icons
# mkdir $GTK_APP/lib
# cp -r $GTK_LIBRARY/lib/gdk-pixbuf-2.0 $GTK_APP/lib
#
# mkdir -p $GTK_APP/share/themes
# mkdir -p $GTK_APP/share/gtk-3.0
# echo "[Settings]" > $GTK_APP/share/gtk-3.0/settings.ini
# echo "gtk-theme-name = admin-gtk3-dark-osx" >> $GTK_APP/share/gtk-3.0/settings.ini
# echo "gtk-font-name = Segoe UI 10" >> $GTK_APP/share/gtk-3.0/settings.ini
# echo "gtk-xft-rgba = rgb" >> $GTK_APP/share/gtk-3.0/settings.ini
# cp $GTK_THEME/AdMin-master/admin-gtk3-dark-osx $GTK_APP/share/themes -r -L
#
# # This part is only unique for Czkawka
# # This code allows to check which icons are used in Czkawka
# # cd czkawka/ui
# # rg icon-name
# rm -rf $GTK_APP/share/icons/Adwaita/16x16
# rm -rf $GTK_APP/share/icons/Adwaita/22x22
# rm -rf $GTK_APP/share/icons/Adwaita/24x24
# rm -rf $GTK_APP/share/icons/Adwaita/256x256
# rm -rf $GTK_APP/share/icons/Adwaita/32x32
# rm -rf $GTK_APP/share/icons/Adwaita/48x48
# rm -rf $GTK_APP/share/icons/Adwaita/512x512
# rm -rf $GTK_APP/share/icons/Adwaita/64x64
# rm -rf $GTK_APP/share/icons/Adwaita/8x8
# rm -rf $GTK_APP/share/icons/Adwaita/96x96
# rm -rf $GTK_APP/share/icons/Adwaita/cursors
# rm -rf $GTK_APP/share/icons/Adwaita/scalable
# rm -rf $GTK_APP/share/icons/Adwaita/scalable-up-to-32
# rm -rf $GTK_APP/share/icons/hicolor
# wget https://github.com/qarmin/gtk_library_store/releases/download/3.24.0/czkawka_icons.zip
# unzip czkawka_icons.zip -d $GTK_APP/share/icons/Adwaita
#
# zip -r gtk_app.zip $GTK_APP
# env:
# CARGO_INCREMENTAL: 0
# RUSTFLAGS: "-C debuginfo=0 -D warnings"
#
# - name: Store Windows GUI CrossComplile
# uses: actions/upload-artifact@v2
# with:
# name: czkawka_gui-debug-normal-app-${{ matrix.toolchain }}
# path: gtk_app.zip
#
#
# windows-gui-debug-console:
# strategy:
# matrix:
# toolchain: [ stable ]
# type: [ release ]
# runs-on: ubuntu-22.04
# steps:
# - uses: actions/checkout@v2
#
# - uses: actions-rs/toolchain@v1
# with:
# toolchain: ${{ matrix.toolchain }}
# override: true
#
# - name: Install Gtk, Mingw, unzip, zip and wget
# run: sudo apt-get update; sudo apt install mingw-w64 libgtk-4-dev unzip wget zip -y
#
# - name: Build GUI Debug Cross Compile
# run: |
# sed -i 's/windows_subsystem = "windows"/windows_subsystem = "console"/' czkawka_gui/src/main.rs
# rustup target add x86_64-pc-windows-gnu
#
# echo "[target.x86_64-pc-windows-gnu]" > ~/.cargo/config
# echo "linker = \"x86_64-w64-mingw32-gcc\"" >> ~/.cargo/config
# echo "ar = \"x86_64-w64-mingw32-gcc-ar\"" >> ~/.cargo/config
#
# GTK_LIBRARY="$(pwd)/gtk_library"
# GTK_APP="$(pwd)/gtk_app"
# GTK_THEME="$(pwd)/gtk_theme"
#
# wget https://github.com/qarmin/gtk_library_store/releases/download/3.24.0/mingw64.zip
# unzip mingw64.zip -d $GTK_LIBRARY
# GTK_LIBRARY="$GTK_LIBRARY/mingw64"
#
# wget https://github.com/nrhodes91/AdMin/archive/master.zip
# unzip master.zip -d $GTK_THEME
#
# PKG_CONFIG_ALLOW_CROSS=1 PKG_CONFIG_PATH="$GTK_LIBRARY/lib/pkgconfig" RUSTFLAGS="-L $GTK_LIBRARY/lib" cargo build --target=x86_64-pc-windows-gnu --bin czkawka_gui
#
# strip target/x86_64-pc-windows-gnu/debug/czkawka_gui.exe
#
# mkdir $GTK_APP
# cp target/x86_64-pc-windows-gnu/debug/czkawka_gui.exe $GTK_APP
# cp $GTK_LIBRARY/bin/*.dll $GTK_APP
# mkdir -p $GTK_APP/share/glib-2.0/schemas
# mkdir $GTK_APP/share/icons
# cp $GTK_LIBRARY/share/glib-2.0/schemas/* $GTK_APP/share/glib-2.0/schemas
# cp -r $GTK_LIBRARY/share/icons/* $GTK_APP/share/icons
# mkdir $GTK_APP/lib
# cp -r $GTK_LIBRARY/lib/gdk-pixbuf-2.0 $GTK_APP/lib
#
# mkdir -p $GTK_APP/share/themes
# mkdir -p $GTK_APP/share/gtk-3.0
# echo "[Settings]" > $GTK_APP/share/gtk-3.0/settings.ini
# echo "gtk-theme-name = admin-gtk3-dark-osx" >> $GTK_APP/share/gtk-3.0/settings.ini
# echo "gtk-font-name = Segoe UI 10" >> $GTK_APP/share/gtk-3.0/settings.ini
# echo "gtk-xft-rgba = rgb" >> $GTK_APP/share/gtk-3.0/settings.ini
# cp $GTK_THEME/AdMin-master/admin-gtk3-dark-osx $GTK_APP/share/themes -r -L
#
# # This part is only unique for Czkawka
# # This code allows to check which icons are used in Czkawka
# # cd czkawka/ui
# # rg icon-name
# rm -rf $GTK_APP/share/icons/Adwaita/16x16
# rm -rf $GTK_APP/share/icons/Adwaita/22x22
# rm -rf $GTK_APP/share/icons/Adwaita/24x24
# rm -rf $GTK_APP/share/icons/Adwaita/256x256
# rm -rf $GTK_APP/share/icons/Adwaita/32x32
# rm -rf $GTK_APP/share/icons/Adwaita/48x48
# rm -rf $GTK_APP/share/icons/Adwaita/512x512
# rm -rf $GTK_APP/share/icons/Adwaita/64x64
# rm -rf $GTK_APP/share/icons/Adwaita/8x8
# rm -rf $GTK_APP/share/icons/Adwaita/96x96
# rm -rf $GTK_APP/share/icons/Adwaita/cursors
# rm -rf $GTK_APP/share/icons/Adwaita/scalable
# rm -rf $GTK_APP/share/icons/Adwaita/scalable-up-to-32
# rm -rf $GTK_APP/share/icons/hicolor
# wget https://github.com/qarmin/gtk_library_store/releases/download/3.24.0/czkawka_icons.zip
# unzip czkawka_icons.zip -d $GTK_APP/share/icons/Adwaita
#
# zip -r gtk_app.zip $GTK_APP
# env:
# CARGO_INCREMENTAL: 0
# RUSTFLAGS: "-C debuginfo=0 -D warnings"
#
# - name: Store Windows GUI CrossComplile
# uses: actions/upload-artifact@v2
# with:
# name: czkawka_gui-debug-console-${{ matrix.toolchain }}
# path: gtk_app.zip

View file

@ -26,6 +26,7 @@ core_directory_overlap = Directories: All directories to search overlaps with ex
core_directory_unable_to_get_device_id = Directories: Unable to get device id from folder { $path }
core_ffmpeg_not_found = Cannot find proper installation of FFmpeg
core_ffmpeg_not_found_windows = When using Windows be sure that ffmpeg.exe and ffprobe.exe are available in PATH or are put directly to same folder where is app executable
core_ffmpeg_missing_in_snap = Similar Videos don't work currently with snap, if you want help look at - { $url }
core_saving_to_cache = Saved to file { $number } cache entries

View file

@ -21,7 +21,7 @@ use crate::common_items::ExcludedItems;
use crate::common_messages::Messages;
use crate::common_traits::*;
static DISABLED_EXTENSIONS: &[&str] = &["file", "cache", "bak"]; // Such files can have any type inside
static DISABLED_EXTENSIONS: &[&str] = &["file", "cache", "bak", "data"]; // Such files can have any type inside
// This adds several workarounds for bugs/invalid recognizing types by external libraries
// ("real_content_extension", "current_file_extension")
@ -33,10 +33,10 @@ static WORKAROUNDS: &[(&str, &str)] = &[
("exe", "bck"),
("exe", "com"),
("exe", "cpl"),
("exe", "dll"),
("exe", "dll16"),
("exe", "drv"),
("exe", "dll"),
("exe", "drv16"),
("exe", "drv"),
("exe", "ds"),
("exe", "efi"),
("exe", "exe16"),
@ -44,20 +44,43 @@ static WORKAROUNDS: &[(&str, &str)] = &[
("exe", "mod16"),
("exe", "msstyles"),
("exe", "mui"),
("exe", "mun"),
("exe", "orig"),
("exe", "ps1xml"),
("exe", "rll"),
("exe", "rs"),
("exe", "scr"),
("exe", "signed"),
("exe", "sys"),
("exe", "tlb"),
("exe", "tsp"),
("exe", "vdm"),
("exe", "vxd"),
("exe", "winmd"),
("gz", "loggz"),
("xml", "adml"),
("xml", "admx"),
("xml", "camp"),
("xml", "cdmp"),
("xml", "cdxml"),
("xml", "dgml"),
("xml", "diagpkg"),
("xml", "gmmp"),
("xml", "library-ms"),
("xml", "man"),
("xml", "manifest"),
("xml", "msc"),
("xml", "mum"),
("xml", "resx"),
("zip", "wmz"),
// Other
("exe", "pyd"), // Python/Mingw
("gz", "blend"), // Blender
("gz", "crate"), // Cargo
("gz", "svgz"), // Archive svg
("gz", "tgz"), // Archive
("html", "dtd"), // Mingw
("html", "ent"), // Mingw
("html", "md"), // Markdown
("jpg", "jfif"), // Photo format
("mobi", "azw3"), // Ebook format
@ -70,6 +93,7 @@ static WORKAROUNDS: &[(&str, &str)] = &[
("ogg", "ogv"), // Audio format
("pptx", "ppsx"), // Powerpoint
("sh", "bash"), // Linux
("sh", "guess"), // GNU
("sh", "pl"), // Gnome/Linux
("sh", "pm"), // Gnome/Linux
("sh", "py"), // Python
@ -90,6 +114,7 @@ static WORKAROUNDS: &[(&str, &str)] = &[
("xml", "iml"), // Intelij Idea
("xml", "kdenlive"), // KDenLive
("xml", "lang"), // ?
("xml", "nuspec"), // Nuget
("xml", "policy"), // SystemD
("xml", "qsys"), // Quartus
("xml", "sopcinfo"), // Quartus
@ -112,12 +137,14 @@ static WORKAROUNDS: &[(&str, &str)] = &[
("zip", "odg"), // Libreoffice
("zip", "pptx"), // Powerpoint
("zip", "whl"), // Python packages
("zip", "xlsx"), // Excel
("zip", "xpi"), // Firefox extensions
("zip", "zcos"), // Scilab
// Probably invalid
("html", "svg"),
("xml", "html"),
// Probably bug in external library
("msi", "ppt"), // Not sure whe ppt is not recognized
("msi", "doc"), // Not sure whe doc is not recognized
("exe", "xls"), // Not sure whe xls is not recognized
];

View file

@ -203,6 +203,7 @@ impl SimilarVideos {
pub fn find_similar_videos(&mut self, stop_receiver: Option<&Receiver<()>>, progress_sender: Option<&futures::channel::mpsc::UnboundedSender<ProgressData>>) {
if !check_if_ffmpeg_is_installed() {
self.text_messages.errors.push(flc!("core_ffmpeg_not_found"));
self.text_messages.errors.push(flc!("core_ffmpeg_not_found_windows"));
self.text_messages.errors.push(flc!(
"core_ffmpeg_missing_in_snap",
generate_translation_hashmap(vec![("url", "https://github.com/snapcrafters/ffmpeg/issues/73".to_string())])