jlesage / docker-baseimage-gui

A minimal docker baseimage to ease creation of X graphical application containers
MIT License
1.2k stars 179 forks source link

Trying my hand to get Darktable running #68

Closed ovizii closed 1 year ago

ovizii commented 2 years ago

I am using:

FROM jlesage/baseimage-gui:debian-11

trying to run darktable from this repo: https://software.opensuse.org/download.html?project=graphics:darktable&package=darktable

Building the image works fine but when running it I get this error and I can't seem to figure out what is wrong. It has most probably not related to this base image but I thought I'd ask while I keep searching the net.

(process:839): GLib-GObject-CRITICAL **: 07:10:36.869: g_object_set: assertion 'G_IS_OBJECT (object)' failed                                         
path lookup '/run/s6/services/app/                                                                                                                   
' fails with: 'No such file or directory'                                                                                                            
[services.d] stopping services                                                                                                                       
[services.d] stopping app...                                                                                                                         
[services.d] stopping logmonitor...                                                                                                                  
[services.d] stopping statusmonitor...                                                                                                               
[services.d] stopping x11vnc...                                                                                                                      
caught signal: 15                         
ovizii commented 2 years ago

Just in case, here is the Dockerfile:

# Pull base image.                                                                                                                                                                                                                                                                                                   
FROM jlesage/baseimage-gui:debian-11                                                                                                                                                                                                                                                                                 

# Install desired stuff                                                                                                                                                                                                                                                                                              
RUN apt-get update && \                                                                                                                                                                                                                                                                                              
    apt-get install -y apt-utils gpg curl git procps && \                                                                                                                                                                                                                                                            
    echo 'deb http://download.opensuse.org/repositories/graphics:/darktable/Debian_11/ /' | tee /etc/apt/sources.list.d/graphics:darktable.list && \                                                                                                                                                                 
    curl -fsSL https://download.opensuse.org/repositories/graphics:darktable/Debian_11/Release.key | gpg --dearmor | tee /etc/apt/trusted.gpg.d/graphics_darktable.gpg > /dev/null && \                                                                                                                              
    apt-get update && \                                                                                                                                                                                                                                                                                              
    apt-get dist-upgrade -y && \                                                                                                                                                                                                                                                                                     
    apt-get install -y darktable                                                                                                                                                                                                                                                                                     

# Copy the start script.                                                                                                                                                                                                                                                                                             
COPY startapp.sh /startapp.sh                                                                                                                                                                                                                                                                                        

# Set the name of the application.                                                                                                                                                                                                                                                                                   
ENV APP_NAME="DarkTable"  
ovizii commented 2 years ago

And my startapp.sh

#!/bin/sh                                                                                                                                                                                                                                                                                                            
exec darktable --configdir /config/.config/darktable/ --disable-opencl 

I added '--disable-opencl' as the error above seemed related to opencl, but it didn't help

ovizii commented 2 years ago

Made some progress by adding

export HOME=/config

in startapp.sh

Now getting this error but Darktable runs.

(process:849): GLib-GObject-CRITICAL **: 07:26:03.453: g_object_set: assertion  'G_IS_OBJECT (object)' failed  
ALSA lib seq_hw.c:466:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory

Although it keeps throwing this kind of errors constantly:

(darktable:849): dconf-WARNING **: 07:31:21.225: failed to commit changes to dconf: Failed to execute child process ?dbus-launch? (No such file or directory)

No idea where to take this from here. Will also seek help from Darktable team. Leaving this here, maybe somebody stumbles upon it or picks it up.

Also, Darktable seems to not save any settings I change once it's running. Not sure where the problem lies. See docker-compose further down.

ovizii commented 2 years ago

docker-compose.yml

version: '2.2'                                                                                                                                                                                                                                                                                                       

services:                                                                                                                                                                                                                                                                                                            

# https://github.com/jlesage/docker-baseimage-gui                                                                                                                                                                                                                                                                    
# https://www.darktable.org/                                                                                                                                                                                                                                                                                         
    darktable:                                                                                                                                                                                                                                                                                                       
        build: .                                                                                                                                                                                                                                                                                                     
        image: ovidarktable                                                                                                                                                                                                                                                                                          
        container_name: darktable                                                                                                                                                                                                                                                                                    
        hostname: darktable                                                                                                                                                                                                                                                                                          
        restart: "no"                                                                                                                                                                                                                                                                                                

        ports:                                                                                                                                                                                                                                                                                                       
          - 5805:5800                                                                                                                                                                                                                                                                                                

        environment:                                                                                                                                                                                                                                                                                                 
          - USER_ID=1000                                                                                                                                                                                                                                                                                             
          - GROUP_ID=1000                                                                                                                                                                                                                                                                                            
          - DISPLAY_WIDTH=2560                                                                                                                                                                                                                                                                                       
          - DISPLAY_HEIGHT=1440                                                                                                                                                                                                                                                                                      
          - KEEP_APP_RUNNING=1                                                                                                                                                                                                                                                                                       
          - HOME=/config                                                                                                                                                                                                                                                                                             

        volumes:                                                                                                                                                                                                                                                                                                     
          - /etc/timezone:/etc/timezone:ro                                                                                                                                                                                                                                                                           
          - ./config:/config                                                                                                                                                                                                                                                                                         
          - /sixer/Pictures:/mnt/Pictures                                                                                                                                                                                                                                                                            
        cpu_count: 8                                                                                                                                                                                                                                                                                                 
        mem_limit: 16G                                                                                                                                                                                                                                                                                               

        networks:                                                                                                                                                                                                                                                                                                    
             - multimedia                                                                                                                                                                                                                                                                                            

networks:                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
    multimedia:                                                                                                                                                                                                                                                                                                      
        external: true                                                                                                                                                                                                                                                                                               
        name: multimedia
jlesage commented 2 years ago

(process:849): GLib-GObject-CRITICAL **: 07:26:03.453: g_object_set: assertion 'G_IS_OBJECT (object)' failed
ALSA lib seq_hw.c:466:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory

I would not be too concerned if this doesn't prevent Darktable to run properly.

Although it keeps throwing this kind of errors constantly:

(darktable:849): dconf-WARNING **: 07:31:21.225: failed to commit changes to dconf: Failed to execute child process ? dbus-launch? (No such file or directory)

You could try to install the dbus-x11 package to see if it helps.

Also, Darktable seems to not save any settings I change once it's running.

Do you know where settings are saved in a "normal" environment ? You don't see anything saved under /config?

ovizii commented 1 year ago

Thanks for your input. but I'm closing this as I stopped trying to get it working.