Skip to content
frostworx edited this page Dec 19, 2021 · 11 revisions

(Yad Project Page: Yad)

All GUI elements in steamtinkerlaunch use yad (>=7.2)

Several distributions don't have an up2date yad package and/or a yad package maintainer (f.e. debian/ubuntu/mint flavours). If this applies for your distribution you have following options to fix this:

  • (find or be a maintainer for yad for your distribution)
  • compile from source
  • use a custom Yad
  • use exodus to generate a "portable" yad bundle from an other distro which has yad

(for further yad related information [this old discussion[https://github.com/frostworx/steamtinkerlaunch/issues/98] might be interesting)

Compile Yad

Compiling yad from source is not that hard:

  • download the sourcecode from the yad project page, extract it, cd into it

  • install some (build) dependencies and headers (the following example is for ubuntu, adjust the tools accordingly to your distro)

    sudo apt-get install -y automake libtool libglib2.0-dev intltool gtk3++-dev libgtksourceview-3.0-dev libwebkit2gtk-4.0-dev libgspell-1-dev

  • prepare/update the automake build system to match your system:

    libtoolize --copy --force
    autoreconf
    automake --force-missing --add-missing
    intltoolize
    
  • create the Makefile (using the compiler flags from the Arch Linux PKGBUILD, some options ware not required for steamtinkerlauncheamtinkerlaunch) ./configure --prefix=/usr/local --enable-html --enable-icon-browser --enable-html --enable-gio --enable-spell --enable-sourceview

  • compile the program

    make

  • install the compiled program (manual installation usually goes into /usr/local to not conflict with system packages)

    sudo make install

  • (check the installed yad with yad --version)

Custom Yad

steamtinkerlaunch has an option to directly define a yad binary from command line which makes a global/system wide yad installation no longer a hard dependency (won't change the Arch PKGBUILD though)

Valid parameters for <YAD> in steamtinkerlaunch yad <YAD> are:

  • an absolute path to custom binary (f.e steamtinkerlaunch yad /path/to/custom/yad)
  • conty (so simply steamtinkerlaunch yad conty) .If not found the latest Conty release will be downloaded automatically and a yad symlink pointing to it will be defined as yad huge download
  • ai or appimage (so simply steamtinkerlaunch yad ai or steamtinkerlaunch yad appimage) (see AppImage)

The yad (10.90 (GTK+ 3.24.30)) appimage was built on Arch Linux using https://github.com/kadogo/easy-builder (the author initially contributed the first yad appimage used in steamtinkerlaunch) The built yad has built-in support for WebKit, so the appimage is pretty big. I won't be able to support and/or maintain custom appimages, so you're welcome to help here!

AppImage

The ai or appimage command line option accepts multiple options:

steamtinkerlaunch yad aicurrent default AppImage is downloaded/used from here steamtinkerlaunch yad ai /path/to/a/local/yad-appimagesets the absolute path as yad command steamtinkerlaunch yad ai http/s/urlmultiple options:

  • valid URL
    • the URL ends with AppImage → the filename will be used from the URL
    • the URL does not end with AppImage → the filename will be created from Yad-$(date +%Y%m%d)-x86_64.AppImage
  • invalid URL → the failed download won't be accepted, leaving currently set yad command untouched

steamtinkerlaunch yad ai /path/to/an/unusable/fileignored, leaving currently set yad command untouched steamtinkerlaunch yad ai /invalid/absolute/pathskipped and current default AppImage is downloaded/used

  • the default destination directory for downloads is ~/config/steamtinkerlaunch/downloads/yadappimage/
  • the default AppImage download is sha512sum checked
Clone this wiki locally