flowblade icon indicating copy to clipboard operation
flowblade copied to clipboard

Flowblade won't start on Fedora linux

Open smolnp opened this issue 4 years ago • 5 comments

...Running from filesystem... MLT found, version: 6.22.1 numpy version: 1.19.2 Application version: 2.6.1 OS: Fedora 33 (KDE Plasma) Python 3.9.0 (default, Oct 6 2020, 00:00:00) [GCC 10.2.1 20200826 (Red Hat 10.2.1-3)] GTK+ version: 3.24.23 XDG user data exists. Locale: ru_RU...

...Gamma dropped for Lift Gain Gamma G'MIC found Player initialized with profile: HD 1080p 30 fps Traceback (most recent call last): File "/home/smolnp/flowblade-trunk/./flowblade", line 93, in app.main(modules_path) File "/home/smolnp/flowblade-trunk/Flowblade/app.py", line 304, in main create_gui() File "/home/smolnp/flowblade-trunk/Flowblade/app.py", line 493, in create_gui editor_window = editorwindow.EditorWindow() File "/home/smolnp/flowblade-trunk/Flowblade/editorwindow.py", line 156, in init self._init_app_menu(self.ui) File "/home/smolnp/flowblade-trunk/Flowblade/editorwindow.py", line 733, in _init_app_menu resync_shortcut = shortcuts.get_shortcut_gtk_code(root, "resync") File "/home/smolnp/flowblade-trunk/Flowblade/shortcuts.py", line 277, in get_shortcut_gtk_code events = root.getiterator('event') AttributeError: 'xml.etree.ElementTree.Element' object has no attribute 'getiterator'

smolnp avatar Nov 07 '20 10:11 smolnp

Thanks, 'getiterator' seems to have been deprecated and your newer Python version 3.9 (I have Python 3.8.6) seems to have dropped support, will fix.

https://stackoverflow.com/questions/3077010/what-is-the-difference-between-getiterator-and-iter-wrt-to-lxml

jliljebl avatar Nov 08 '20 16:11 jliljebl

I pushed a patch to replace deprecated method 'getiterator' with method 'iter'. Still launches here and I'm 99% sure that this is the fix, so I'm closing.

jliljebl avatar Nov 08 '20 16:11 jliljebl

Again the problem with updating python. Again flowblade doesn't want to run on fedora 35: Launch script dir: /usr/bin Running from installation... /usr/bin/flowblade:39: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives from distutils.sysconfig import get_python_lib /usr/bin/flowblade:39: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead from distutils.sysconfig import get_python_lib MLT found, version: 6.26.1 numpy version: 1.21.1 Application version: 2.8.0 OS: Fedora Linux 35 (Cinnamon) Python 3.10.0 (default, Oct 4 2021, 00:00:00) [GCC 11.2.1 20210728 (Red Hat 11.2.1-1)] GTK+ version: 3.24.30

smolnp avatar Dec 02 '21 15:12 smolnp

Ok, will look at this.

jliljebl avatar Dec 08 '21 10:12 jliljebl

Hi, First of all, thanks for the effort of developing and maintaining flowblade: it is as awesome tool!

I am also experiencing issues on Fedora 35 both using the official package and the source code from master branch.

The output below is from the official package:

$ flowblade                                                                                                                                                 
FLOWBLADE MOVIE EDITOR 2.8                                                                                                                                                                    
--------------------------                                                                                                                                                                    
Launch script dir: /usr/bin                                                                                                                                                                   
Running from installation...                                                                                                                                                                  
/usr/bin/flowblade:39: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives              
  from distutils.sysconfig import get_python_lib                                                                                                                                              
/usr/bin/flowblade:39: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead                                                                                
  from distutils.sysconfig import get_python_lib                                                                                                                                              
MLT found, version: 6.26.1                                                                                                                                                                    
numpy version: 1.21.5                                                                                                                                                                         
Application version: 2.8.0                                                                                                                                                                    
OS: Fedora Linux 35 (Workstation Edition)                                                                                                                                                     
Python 3.10.2 (main, Jan 17 2022, 00:00:00) [GCC 11.2.1 20211203 (Red Hat 11.2.1-7)]                                                                                                          
GTK+ version: 3.24.31                                                                                                                                                                         
CREATED XDG CONFIG DIR.                                                                                                                                                                       
XDG user data exists.                                                                                                                                                                         
Locale: en_US                                                                                                                                                                                 
Found translations at /usr/share/locale, using those.                                                                                                                                         
Use OS locale language.                                                                                                                                                                       
Valid shortcut files found: ['flowblade.xml', 'premiere.xml']                                                                                                                                 
Keyboard shortcuts file: flowblade.xml                                                                                                                                                        
Initializing Auto Save Options                                                                                                                                                                
Gtk version is 3.24.31, Flowblade theme is available.                                                                                                                                         
Using Full Screen size for layout: 3840 x 1080                                                                                                                                                
Small height: False                                                                                                                                                                           
Small width: False
...
MLT detection succeeded, 177 formats, 117 video codecs and 82 audio codecs found.
559 MLT services found.
Loading render profiles...
Loading filters...
MLT service ladspa.1406 not found.
MLT service ladspa.1433 not found.
MLT service ladspa.1408 not found.
MLT service ladspa.1431 not found.
MLT service ladspa.1901 not found.
MLT service ladspa.1438 not found.
MLT service ladspa.1195 not found.
MLT service ladspa.1402 not found.
MLT service ladspa.1185 not found.
MLT service ladspa.1213 not found.
MLT service ladspa.1904 not found.
MLT service ladspa.1903 not found.
MLT service ladspa.1215 not found.
MLT service ladspa.1216 not found.
MLT service ladspa.1410 not found.
MLT service ladspa.1892 not found.
MLT service ladspa.1194 not found.
MLT service ladspa.1197 not found.
MLT service ladspa.1423 not found.
MLT service ladspa.1910 not found.
MLT service ladspa.1417 not found.
MLT service ladspa.1210 not found.
MLT service ladspa.1198 not found.
MLT service ladspa.1905 not found.
MLT service ladspa.1201 not found.
Loading transitions...
RGB Adjustment dropped for Color Adjustment
Hue dropped for Color Adjustment
Gamma dropped for Lift Gain Gamma
default profile from prefs not found
G'MIC found
Player initialized with profile:  HD 1080p 30 fps
Selected color NOT detected
BG color detected
Traceback (most recent call last):
  File "/usr/bin/flowblade", line 94, in <module>
    app.main(modules_path)
  File "/usr/lib/python3.10/site-packages/Flowblade/app.py", line 316, in main
    launch_player()
  File "/usr/lib/python3.10/site-packages/Flowblade/app.py", line 520, in launch_player
    editorstate.player.set_sdl_xwindow(gui.tline_display)
  File "/usr/lib/python3.10/site-packages/Flowblade/mltplayer.py", line 125, in set_sdl_xwindow 
    os.putenv('SDL_WINDOWID', str(widget.get_window().get_xid()))
AttributeError: 'GdkWaylandWindow' object has no attribute 'get_xid'. Did you mean: 'get_width'?

Exception ignored in: <module 'threading' from '/usr/lib64/python3.10/threading.py'>
Traceback (most recent call last):
  File "/usr/lib64/python3.10/threading.py", line 1551, in _shutdown
    lock.acquire()
KeyboardInterrupt:

Replacing the get_xid call by get_width results in a segmentation fault. I've tried it both with wayland and Xorg.

Please let me know if I can help somehow.

Cheers, Paulo A. Silva

PauloASilva avatar Jan 25 '22 16:01 PauloASilva

@smolnp @PauloASilva that's a pretty old Fedora and flowblad, can you confirm it has been fixed in recent Fedora versions?

alexmyczko avatar May 30 '23 06:05 alexmyczko

@alexmyczko unfortunately no. By now I am running Fedora 38 (6.2.15-300.fc38.x86_64) and flowblade 2.8.

Traceback (most recent call last):
  File "/usr/bin/flowblade", line 94, in <module>
    app.main(modules_path)
  File "/usr/lib/python3.11/site-packages/Flowblade/app.py", line 307, in main
    create_gui()
  File "/usr/lib/python3.11/site-packages/Flowblade/app.py", line 487, in create_gui
    editor_window = editorwindow.EditorWindow() 
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 
  File "/usr/lib/python3.11/site-packages/Flowblade/editorwindow.py", line 166, in __init__
    self._init_view_menu(self.ui.get_widget('/MenuBar/ViewMenu'))
  File "/usr/lib/python3.11/site-packages/Flowblade/editorwindow.py", line 1081, in _init_view_menu
    panel_positions_menu_item = editorlayout.get_panel_positions_menu_item()
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/Flowblade/editorlayout.py", line 398, in get_panel_positions_menu_item
    compositors_panel_menu =  _get_position_selection_menu(appconsts.PANEL_COMPOSITORS)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/Flowblade/editorlayout.py", line 425, in _get_position_selection_menu
    current_position = _get_panel_position(panel_id)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/Flowblade/editorlayout.py", line 213, in _get_panel_position
    return _panel_positions[panel]
           ~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 2

PauloASilva avatar May 30 '23 07:05 PauloASilva

@PauloASilva interesting I just checked on Ubuntu 22.04, there it is just fine. Must be packaging related...

alexmyczko avatar May 30 '23 08:05 alexmyczko

I've just re-installed Flowblade 2.8.0.3-7.fc37 from rpmfusion-free: the problem still persists.

Thanks for check this out.

Cheers, Paulo A. Silva

PauloASilva avatar May 30 '23 08:05 PauloASilva

TIL, it's not officially packaged for Fedora: https://repology.org/project/flowblade/versions Maybe installing it from source would help?

alexmyczko avatar May 30 '23 08:05 alexmyczko

Not sure. I tried it in the past without success. I am not sure but the issue seems to be caused by a dependency.

PauloASilva avatar May 30 '23 21:05 PauloASilva

NOTE: THE RECOMMENDED WAY TO RUN FLOWBLADE IN FEDORA IS NOW FLATPAK.

The first issue with:

File "/home/smolnp/flowblade-trunk/Flowblade/shortcuts.py", line 277, in get_shortcut_gtk_code
events = root.getiterator('event')
AttributeError: 'xml.etree.ElementTree.Element' object has no attribute 'getiterator'

is fixed.

The second issue with:

  File "/usr/lib/python3.10/site-packages/Flowblade/mltplayer.py", line 125, in set_sdl_xwindow 
    os.putenv('SDL_WINDOWID', str(widget.get_window().get_xid()))
AttributeError: 'GdkWaylandWindow' object has no attribute 'get_xid'. Did you mean: 'get_width'?

...arises from the fact that Fedora now defaults to wayland, see FAQ: https://github.com/jliljebl/flowblade/blob/master/flowblade-trunk/docs/FAQ.md

Wayland

Flowblade does not run natively on Wayland yet, but there are a few ways to get Flowblade running.

Start Flowblade from terminal with command:

GDK_BACKEND=x11 flowblade

Use X11 session when running Flowblade

The third issue with:

  File "/usr/lib/python3.11/site-packages/Flowblade/editorlayout.py", line 213, in _get_panel_position
    return _panel_positions[panel]

is fixed.

Closing as fixed.

jliljebl avatar Jun 16 '23 07:06 jliljebl

Installing from Flatpak didn't require any additional workarounds.

Cheers, Paulo A. Silva

PauloASilva avatar Jun 16 '23 08:06 PauloASilva