Skip to content

Programs

Getting started

A guide to installing and setting up various Linux programs.

References


czkawka

Czkawka helps organize media libraries by finding duplicate images, similar photos and videos, corrupted files and more.


  1. Prebuild binaries

    Terminal window
    sudo apt install libgtk-4-bin libheif1 libraw-bin ffmpeg -y
  2. Add repo to apt source

    Terminal window
    sudo add-apt-repository ppa:xtradeb/apps && sudo apt update
  3. Install

    Terminal window
    sudo apt install czkawka
  4. Run GUI

    Terminal window
    czkawka_gui

FreeFileSync

FreeFileSync is a folder comparison and synchronization software that creates and manages backup copies of all your important files.


  1. Download Linux.tar.gz

    Terminal window
    wget -P ~/Downloads https://freefilesync.org/download/FreeFileSync_14.3_Linux.tar.gz
  2. Extract

    Terminal window
    tar -xvzf ~/Downloads/FreeFileSync_14.3_Linux.tar.gz
  3. Make executeable

    Terminal window
    chmod +x ~/Downloads/FreeFileSync_14.3_Install.run
  4. Run

    Terminal window
    ./FreeFileSync_14.3_Install.run
  5. Install

    Accept license

    • Press y to agree and continue.
    • Press s to show details.
    • Press n to cancel.

    Change install settings (optional)

    • Press 1 to disable for all users.
    • Press 2 to change installation directory.
    • Press 3 to disable desktop shortcuts.
    • Press Enter to begin installtion.

mkvtoolnix

MKVToolNix is a set of tools to create, alter and inspect Matroska files.


  1. Add apt source

    Terminal window
    deb [signed-by=/etc/apt/keyrings/gpg-pub-moritzbunkus.gpg] https://mkvtoolnix.download/debian/ bookworm main
    deb-src [signed-by=/etc/apt/keyrings/gpg-pub-moritzbunkus.gpg] https://mkvtoolnix.download/debian/ bookworm main

  2. Update apt

    Terminal window
    sudo apt update
  3. Install

    Terminal window
    sudo apt install mkvtoolnix mkvtoolnix-gui
  4. Preferences

    GUI

    Warnings

    • Warn before closing modified tabs
    • Warn before aborting running jobs
    • Warn before overwriting existing items (files, jobs etc.)

    Often used selections

    Languages

    • Selected
      • English (en; eng)
      • Undetermined (und)

    Countries & regions

    • Selected
      • United States of America (us; 840)

    Multiplexer

    General options

    • Clearing settings automatically: Close current settings
    • Warn about missing audio tracks: If audio tracks are present but none is enabled
    • Process priority: Lower priority
    • Probe range percentage: 0.30
    • Location of MediaInfo GUI: blank (default)
    • Ensure at least one track of each type has its “track enabled” flag set

    Adding files

    • When adding multiple files via “add source files”: Create one new multiplex settings tab for each file
    • When adding files via drag & drop/copy & paste: Create one new multiplex settings tab for each file
    • When adding directories via drag & drop/copy & paste: Create a new multiplex settings tab for each directory
    • Always create new multiplex settings for files containing video tracks
    • Sort files & tracks by track type when adding files
    • Detect file name sequences when adding multiple files

    Attachments

    • Always skip while attaching new files when attachment with same name exists

    Default values

    Defaults for newly added tracks

    • Automatically set the file title from source files
    • Automatically clear the file title when the last file is removed
    • Automatically set track delays from source file name
    • Disable “default track” flag for subtitle tracks
    • Disable additional lossless compression for all track types
    • Enable dialog normalization gain removal for audio tracks
    • Derive “forced display” flag for subtitles from file names: [[\](){}.+=#-]forced[[\](){}.+=#-]
    • Derive “hearing impair” flag for audio/subtitles from file names: [[\](){}.+=#-](cc | sdh)[[\](){}.+=#-]
    • Default subtitle charset to set: - No selection by default -

    Default track languages to set

    • Audio tracks: English (en)
    • Video tracks: English (en)
    • Subtitle tracks: English (en)
    • When to set the language: Also if the language is 'undetermined' ('und')

    Deriving track languages

    Deriving track languages from file names

    • Audio tracks: Also if the language is 'undetermined' ('und')
    • Video tracks: Never
    • Subtitle tracks: Also if the language is 'undetermined' ('und')

    Destination file name

    Destination file name

    • Automatically set the destination file name
    • Only use the first source file that contains a video track
    • Use the title as the base file name if a title is set
    • Use the input file’s directory name instead of the file name

    Destination directory

    • Directory relative to first source file’s directory: ./new
    • Ensure the file name is unique
    • Automatically clear the destination file name when the last file is removed

    Enabling items

    Enable copying of items by their type

    • Selected
      • Audio
      • Chapters
      • Global tags
      • Subtitles
      • Video

    Enable copying of tracks by their language

    • Only enable copying of tracks with specific languages by default
    • Selected
      • English (en; eng)

    General options

    • Always enable copying for all tracks of the following types regardless of their language:
      • Video
      • Audio
      • Subtitles
    • Always enable copying of forced subtitle tracks

    Jobs & job queue

    Jobs and job output

    • Always switch to the job output tool after starting one immediately
    • Always use a default description when adding a job to the queue
    • Show output of all jobs instead of current job only
    • Reset the warning and error counters on exit
    • Remove the output file when a job ends with errors or when it is aborted
    • Remove jobs from queue after completion: Only if the job completed successfully
    • Remove completed jobs from queue on exit
    • Remove completed jobs older than x days: 14 days
    • Maximum number of concurrent jobs: 1

openvpn

Connect to any OpenVPN protocol-compatible server or service.


  1. Select version

    openvpn 2.x

    Install
    Terminal window
    sudo apt install openvpn -y
  2. Make directory

    Terminal window
    mkdir -p /etc/openvpn/profile && cd /etc/openvpn/profile
  3. Modify .ovpn files

    Terminal window
    nano server1-tcp80.ovpn
    server1-tcp80.ovpn
    # Comment out the line below
    # setenv opt block-outside-dns
    # Add after `route 0.0.0.0 0.0.0.0`
    setenv PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    script-security 2
    up /etc/openvpn/update-resolv-conf
    down /etc/openvpn/update-resolv-conf
    down-pre
  4. Modify update-resolv-conf

    Terminal window
    nano /etc/openvpn/update-resolv-conf
    update-resolv-conf
    # Add after examples
    # Add as many as you like, replace ip address
    foreign_option_1='dhcp-option DNS 208.67.222.222'
    foreign_option_2='dhcp-option DNS 208.67.222.220'
    foreign_option_3='dhcp-option DNS 146.112.128.66'
  5. Create auth.txt

    Terminal window
    nano auth.txt
    auth.txt
    # Edit username and password
    username
    password
  6. Connect

    Terminal window
    sudo openvpn --config /etc/openvpn/profile/server1-tcp80.ovpn
  7. Kill

    Terminal window
    sudo killall openvpn

puddletag

puddletag is an audio tag editor similar to the Windows program Mp3tag.

Terminal window
sudo apt install puddletag -y