cdgriffith / FastFlix

FastFlix is a free GUI for HEVC and AV1 encoding, GIF/WebP/AVIF creation, and more!
MIT License
1.08k stars 54 forks source link

How to have FastFlix use configured qt5 theme? #383

Open rharmonson opened 1 year ago

rharmonson commented 1 year ago

I have all installed QT applications successfully using the same theme except FastFlix.

I found the Theme settings and selected "system." FastFlix does use a QT theme. I think it may be the Adwaita light variant but not positive.

Any guidance on having FastFlix use the system theme?

FastFlix 4.10 from FastFlix_4.10.0_ubuntu_20_x86_64.zip.

fastflix

Example of another qt application.

makemkv

$ cat /etc/debian_version 
11.5
$ uname -rom
5.10.104-antix.1-amd64-smp x86_64 GNU/Linux
$ set |grep QT_QPA
QT_QPA_PLATFORMTHEME=qt5ct
~/.config/qt5ct/qt5ct.conf [Appearance] color_scheme_path=/usr/share/qt5ct/colors/darker.conf custom_palette=false icon_theme=Nordzy-dark standard_dialogs=default style=kvantum-dark [Fonts] fixed=@Variant(\0\0\0@\0\0\0\x1e\0S\0o\0u\0r\0\x63\0\x65\0 \0\x43\0o\0\x64\0\x65\0 \0P\0r\0o@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10) general=@Variant(\0\0\0@\0\0\0\x1a\0S\0o\0u\0r\0\x63\0\x65\0 \0S\0\x61\0n\0s\0 \0\x33@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10) [Interface] activate_item_on_single_click=1 buttonbox_layout=0 cursor_flash_time=1000 dialog_buttons_have_icons=1 double_click_interval=400 gui_effects=@Invalid() keyboard_scheme=2 menus_have_icons=true show_shortcuts_in_context_menus=true stylesheets=@Invalid() toolbutton_style=4 underline_shortcut=1 wheel_scroll_lines=3 [SettingsWindow] geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x3\x8a\0\0\x1\x1\0\0\x6t\0\0\x4\xbe\0\0\x3\x90\0\0\x1\a\0\0\x6n\0\0\x4\xb8\0\0\0\0\0\0\0\0\n\0\0\0\x3\x90\0\0\x1\a\0\0\x6n\0\0\x4\xb8)
~/.config/kvantum/kvantum.kvconfig [General] theme=Nordic
cdgriffith commented 1 year ago

Honestly not sure, quick googling suggests may be if you are using the executable, and didn't download the code to run it, that it might be working in a limited environment so it can't pick up the theme. But I honestly don't have experience with that.

rharmonson commented 1 year ago

So I am using the FastFlix_4.10.0_ubuntu_20_x86_64.zip from your releases.

I don't use snap, flatpaks, or any of that nonsense.

Are you suggesting a different method of installation?

I appreciate your time and guidance.

cdgriffith commented 1 year ago

Sorry for delay. As a heads up 5.0.0+ is now on Qt6

If it's still not working could try building from source to see if it's part of the packing into an executable limiting it. https://github.com/cdgriffith/FastFlix#running-from-source-code

rharmonson commented 1 year ago

I appreciate you getting back to me.

I've updated my install script to version 5.0.0. In the middle of a distro spin release so it's a perfect time to add it to the list of tests. If it continues to fail, I'll give the source code a go.

I'll get back to you in the next few days with the results.

rharmonson commented 1 year ago

The change to qt6 does not change behavior. The configured qt theme is not used.

rharmonson commented 1 year ago

I followed the instruction you provided including sudo apt install python3-venv. However, it just errors out.

john@wsav:~/code/fastflix$ . venv/bin/activate
(venv) john@wsav:~/code/fastflix$ python -m fastflix
Traceback (most recent call last):
  File "/usr/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/john/code/fastflix/fastflix/__main__.py", line 6, in <module>
    from fastflix.entry import main
  File "/home/john/code/fastflix/fastflix/entry.py", line 16, in <module>
    from fastflix.models.config import Config
  File "/home/john/code/fastflix/fastflix/models/config.py", line 86, in <module>
    def where(filename: str, portable_mode=False) -> Path | None:
TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'
(venv) john@wsav:~/code/fastflix$ 
$ python --version
Python 3.9.2
cdgriffith commented 1 year ago

With the update to QT6 also started using python 3.10 as a minimum is that error. I apologize I need to update the docs to reflect that!

rharmonson commented 1 year ago

Debian stable doesn't have 3.10 available as a package. :(

cdgriffith commented 1 year ago

Yeah sadly most distros don't keep up with modern python versions (up to 3.11 and all). With all the dependencies that are hard to manage on linux and mac I am working towards making it into a Homebrew package actually. I will have to release the next version then submit my first PR to them and will probably take some back and forth (as I know nothing of that system) but it seems to be working with linux and mac.

Just in case you or someone else reading this is a Homebrew fan, attaching Brew here fastflix.homebrew_rb.zip