-
-
Notifications
You must be signed in to change notification settings - Fork 676
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Clear README, by moving Installation and Compilation instructions to …
…new files.
- Loading branch information
Showing
3 changed files
with
186 additions
and
190 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
# Compilation Czkawka from sources | ||
|
||
## Requirements | ||
Program | Min | What for | ||
---------|------|------------------------------------------------------------ | ||
Rust | 1.51 | Czkawka for now, aims to support only the latest stable Rust version | ||
GTK | 3.22 | Only for the `GTK` backend | ||
|
||
If you only want the terminal version without a GUI, just skip all packages with `gtk`. | ||
|
||
#### Debian / Ubuntu | ||
```shell | ||
sudo apt install -y curl # Needed by Rust update tool | ||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Download the latest stable Rust | ||
sudo apt install -y libgtk-3-dev libasound2-dev # Latest is optional | ||
``` | ||
|
||
#### Fedora / CentOS / Rocky Linux | ||
```shell | ||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Download the latest stable Rust | ||
sudo yum install gtk3-devel glib2-devel alsa-lib-devel # Latest is optional | ||
``` | ||
|
||
#### macOS | ||
You need to install Rust Homebrew and GTK Libraries | ||
```shell | ||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | ||
brew install rustup | ||
rustup-init | ||
brew install rust gtk+3 | ||
``` | ||
|
||
### Windows | ||
|
||
*Will be available in the future* | ||
|
||
For Linux-to-Windows cross-building instruction look at the CI. | ||
|
||
<!-- First you need to install Visual C++ components from Visual Studio installer - https://visualstudio.microsoft.com/downloads/ | ||
Next install Rust from site https://rustup.rs/ | ||
After that the latest GTK 3 runtime must be installed from https://github.com/tschoonj/GTK-for-Windows-Runtime-Environment-Installer/releases | ||
--> | ||
|
||
## Compilation | ||
|
||
- Download the source | ||
``` | ||
git clone https://github.com/qarmin/czkawka.git | ||
cd czkawka | ||
``` | ||
- Compile and run GTK GUI | ||
``` | ||
cargo run --release --bin czkawka_gui | ||
``` | ||
|
||
- Compile and run CLI (by default this will print help with examples) | ||
``` | ||
cargo run --release --bin czkawka_cli | ||
``` | ||
|
||
|
||
## Additional features | ||
For now, finding broken audio files is temporary disabled by default, because it crash when not found audio libraries on computer. | ||
I'm waiting for ability to disable audio playback feature, so after that I will be able to re-enable by default this feature (https://github.com/RustAudio/rodio/issues/349) | ||
|
||
To enable checking for broken audio files, just add ` --all-features` | ||
``` | ||
cargo run --all-features --bin czkawka_cli -- broken -d /home/rafal/ -f "results.txt" | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
# Installation | ||
## Requirements | ||
Same with Appimage, Flatpak and Snap on Linux (except having system 18.04+ or similar). | ||
|
||
### Linux | ||
If you use Snap, Flatpak or Appimage, you may skip this section. | ||
|
||
For Czkawka GUI you are required to have at least `GTK 3.22` and also `Alsa` installed (for finding broken music files). | ||
It should be installed by default on all the most popular distros. | ||
#### Ubuntu/Debian | ||
``` | ||
sudo apt install libgtk-3-dev | ||
``` | ||
#### Fedora/CentOS | ||
``` | ||
sudo yum install gtk3-devel glib2-devel | ||
``` | ||
#### Void Linux (CLI only) | ||
``` | ||
sudo xbps-install gcc pkg-config alsa-lib-devel | ||
``` | ||
|
||
### macOS | ||
Currently, you need to manually install `GTK 3` libraries, because they are dynamically loaded from the OS (*we need | ||
help in using static linking*). Installation in the terminal: | ||
```shell | ||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | ||
brew install gtk+3 | ||
``` | ||
After that, go to the location where you downloaded Czkawka and add the `executable` permission to this file. | ||
```shell | ||
chmod +x mac_czkawka_gui | ||
``` | ||
At the end execute it: | ||
```shell | ||
./mac_czkawka_gui | ||
``` | ||
|
||
### Windows | ||
By default, all needed libraries are bundled with app inside `windows_czkawka_gui.zip`, but if you compile app or just move `czkawka_gui.exe`, then you need to install the `GTK 3` | ||
runtime from [**here**](https://github.com/tschoonj/GTK-for-Windows-Runtime-Environment-Installer/releases). | ||
|
||
## Installation | ||
### Precompiled binaries | ||
Ready-to-go executables for Linux, Windows and macOS are available [**here**](https://github.com/qarmin/czkawka/releases/). | ||
If the app does not run when clicking at a launcher, run it through a terminal. | ||
You don't need to have any additional libraries for CLI Czkawka. | ||
|
||
### Nightly Builds | ||
Artifacts from each commit can be downloaded [**here**](https://github.com/qarmin/czkawka/actions) | ||
|
||
### Appimage | ||
Appimage files are available in release page - [**GitHub releases**](https://github.com/qarmin/czkawka/releases/) | ||
This version is bundled with own theme. | ||
There is also a small problem with not being able to open 2 images at once. | ||
|
||
### Cargo | ||
The easiest method to install Czkawka is using the `cargo` command. For compiling it, you need to get all the | ||
requirements from the [compilation section](Compilation.md). | ||
``` | ||
cargo install czkawka_gui | ||
cargo install czkawka_cli | ||
``` | ||
You can update the package with the same command. | ||
|
||
### Snap | ||
``` | ||
sudo snap install czkawka | ||
``` | ||
By default, Snap can only access to the files in your home directory. You have to allow czkawka to access to all the drives: | ||
|
||
``` | ||
sudo snap connect czkawka:removable-media | ||
``` | ||
|
||
The Snap store entry can be found [**here**](https://snapcraft.io/czkawka). | ||
|
||
Fresh builds are available in edge branch, but they may be a little unstable, although that happens very rarely | ||
because I don't push untested code. | ||
|
||
### Flatpak | ||
``` | ||
flatpak install flathub com.github.qarmin.czkawka | ||
``` | ||
Flathub page with Czkawka can be found [**here**](https://flathub.org/apps/details/com.github.qarmin.czkawka) | ||
|
||
# | ||
# | ||
|
||
**Unofficial packages, which may not always provide the latest version of Czkawka.** | ||
|
||
### PPA - Debian/Ubuntu (unofficial) | ||
``` | ||
sudo add-apt-repository ppa:xtradeb/apps | ||
sudo apt-get update | ||
sudo apt-get install czkawka | ||
``` | ||
|
||
### AUR - Arch Linux Package (unofficial) | ||
Czkawka is also available in Arch Linux's AUR from which it can be easily installed. | ||
``` | ||
yay -Syu czkawka-git | ||
``` | ||
or | ||
``` | ||
yay -Syu czkawka-gui-bin | ||
yay -Syu czkawka-cli-bin | ||
``` | ||
|
||
Package info's - https://aur.archlinux.org/packages/?O=0&SeB=nd&K=czkawka&outdated=&SB=n&SO=a&PP=50&do_Search=Go | ||
|
||
### Docker image (unofficial) | ||
Czkawka docker image is available [**here**](https://github.com/jlesage/docker-czkawka) |