GithubHelp home page GithubHelp logo

Comments (8)

jpeeler avatar jpeeler commented on May 22, 2024 1

Thanks for fixing up the minor issues I found. Turns out, I believe I confused myself while working remotely and forgot that I was running the compositor proxy inside a container. So that's why it couldn't find the expected binaries. Perhaps it should be mentioned in the docs that gstreamer plugins are required and note the useful tool gst-inspect-1.0 for verifying plugin installation.

All that said I got things working! Need to play around with it a bit more.

from greenfield.

Zubnix avatar Zubnix commented on May 22, 2024

Does this happen for all applications or a specific one?

As for the documentation & ffmpeg issue, there was recently a big update so some things might have slipped through. Thanks for reporting these!

from greenfield.

jpeeler avatar jpeeler commented on May 22, 2024

It was for both applications I tried - I assume I didn't mess the config up.

from greenfield.

Zubnix avatar Zubnix commented on May 22, 2024

I was able to reproduce the errors, however they are not the cause of the failed application launch as qalculate-gtk works just fine here. The reason qalculate-gtk is not launching is because the compositor-proxy-cli can not find it "message": "spawn qalculate-gtk ENOENT".

from greenfield.

jpeeler avatar jpeeler commented on May 22, 2024

I saw that. I don't know how it is unable to find it though?

❯ type qalculate-gtk
qalculate-gtk is /usr/bin/qalculate-gtk

Am I completely misunderstanding what the compositor-proxy-cli is capable of?

from greenfield.

Zubnix avatar Zubnix commented on May 22, 2024

I don’t think you are doing anything wrong or misunderstanding anything. The name of the application is basically used in a fork call so theoretically if it’s on the PATH of the compositor-proxy-cli it should be found. You could try with the absolute path if for some reason the PATH environment variable is not working. I’m a bit confused why it’s not being picked up in your case 🤔

from greenfield.

jpeeler avatar jpeeler commented on May 22, 2024

Yeah that's why I'm confused, I already tried both the full path and just the base name as in the examples. I can retry later in the week locally as I'm currently executing on a remote machine. But I have my doubts that the path is not being included in a standard linux binary directory.

from greenfield.

Zubnix avatar Zubnix commented on May 22, 2024

I've fixed the build errors and added argument and environment logging when launching child applications. You will need to rebuild compositor-proxy. If all went well, you should see something like this:

10:52 $ yarn workspace @gfld/compositor-proxy-cli start
{time:"2023-11-13T09:52:32.802Z",name:"main",msg:"Starting compositor proxy with args: {
  applications: {
    '/gtk4-demo': { name: 'GTK Demo', executable: 'gtk4-demo', args: [], env: {} },
    '/kwrite': { name: 'KWrite', executable: 'kwrite', args: [], env: {} },
    '/calc': { name: 'Calc', executable: 'qalculate-gtk', args: [], env: {} },
    '/kitty': { name: 'Kitty', executable: 'kitty', args: [], env: {} },
    '/xterm': { name: 'XTerm', executable: 'xterm', args: [], env: {} }
  },
  help: false,
  'bind-ip': '0.0.0.0',
  'bind-port': '8081',
  'allow-origin': 'http://localhost:8080',
  'base-url': 'ws://localhost:8081',
  'render-device': '/dev/dri/renderD128',
  encoder: 'x264',
  'basic-auth': undefined
}"}
{time:"2023-11-13T09:52:32.807Z",name:"main",msg:"Compositor proxy started. Listening on 0.0.0.0:8081"}
{time:"2023-11-13T09:52:46.706Z",name:"main",msg:"No proxy session exists for this compositor, spawning a new one."}
Supported EGL client extensions: EGL_EXT_platform_base EGL_EXT_device_base EGL_EXT_device_enumeration EGL_EXT_device_query EGL_KHR_client_get_all_proc_addresses EGL_EXT_client_extensions EGL_KHR_debug EGL_KHR_platform_x11 EGL_EXT_platform_x11 EGL_EXT_platform_device EGL_MESA_platform_surfaceless EGL_EXT_explicit_device EGL_KHR_platform_wayland EGL_EXT_platform_wayland EGL_KHR_platform_gbm EGL_MESA_platform_gbm EGL_EXT_platform_xcb
[EGL] command: eglQueryDevicesEXT, error: EGL_BAD_ALLOC (0x3003), message: EGL_BAD_ALLOC error: In eglQueryDevicesEXT: Failed to allocate device list.

[EGL] command: eglQueryDevicesEXT, error: EGL_BAD_ALLOC (0x3003), message: EGL_BAD_ALLOC error: In eglQueryDevicesEXT: Failed to allocate device list.

Using EGL device /dev/dri/renderD128

Using EGL 1.5

Supported EGL display extensions: EGL_ANDROID_blob_cache EGL_ANDROID_native_fence_sync EGL_EXT_create_context_robustness EGL_EXT_image_dma_buf_import EGL_EXT_image_dma_buf_import_modifiers EGL_IMG_context_priority EGL_KHR_cl_event2 EGL_KHR_config_attribs EGL_KHR_context_flush_control EGL_KHR_create_context EGL_KHR_create_context_no_error EGL_KHR_fence_sync EGL_KHR_get_all_proc_addresses EGL_KHR_gl_colorspace EGL_KHR_gl_renderbuffer_image EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_3D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_image_base EGL_KHR_no_config_context EGL_KHR_reusable_sync EGL_KHR_surfaceless_context EGL_EXT_pixel_format_float EGL_KHR_wait_sync EGL_MESA_configless_context EGL_MESA_drm_image EGL_MESA_image_dma_buf_export EGL_MESA_query_driver EGL_WL_bind_wayland_display 

Supported EGL device extensions: EGL_EXT_device_drm EGL_EXT_device_drm_render_node

EGL vendor: Mesa Project

EGL DMA-BUF format modifiers supported
Obtained high priority context
Using EGL_PLATFORM_DEVICE_EXT
{time:"2023-11-13T09:52:48.278Z",name:"native-compositor-session",msg:"Listening on: WAYLAND_DISPLAY="wayland-0"."}
unlinking stale lock file /tmp/.X1-lock
xserver listening on display :1
{time:"2023-11-13T09:52:48.280Z",name:"compositor-proxy-session",msg:"Session created."}
{time:"2023-11-13T09:52:48.280Z",name:"session-process",msg:"Session started."}
{time:"2023-11-13T09:52:48.281Z",name:"qalculate-gtk",msg:"Launching application qalculate-gtk with args [] and environment {"TERM_SESSION_ID":"bc88fe53-bde1-47c8-a738-1c8cd2cf4b1e","GJS_DEBUG_TOPICS":"JS ERROR;JS LOG","XDG_ACTIVATION_TOKEN":"gnome-shell/IntelliJ IDEA Ultimate 2023.2.5/47238-0-erik-XPS-15-9560_TIME62727356","LESSOPEN":"| /usr/bin/lesspipe %s","USER":"erik","LC_TIME":"nl_BE.UTF-8","npm_config_user_agent":"yarn/3.6.3 npm/? node/v18.15.0 linux x64","XDG_SESSION_TYPE":"x11","BUN_INSTALL":"/home/erik/.bun","npm_node_execpath":"/tmp/xfs-6648df37/node","SHLVL":"1","HOME":"/home/erik","DESKTOP_SESSION":"ubuntu-xorg","NVM_BIN":"/home/erik/.nvm/versions/node/v18.15.0/bin","npm_package_json":"/home/erik/git/greenfield/packages/compositor-proxy-cli/package.json","NVM_INC":"/home/erik/.nvm/versions/node/v18.15.0/include/node","TERMINAL_EMULATOR":"JetBrains-JediTerm","GIO_LAUNCHED_DESKTOP_FILE":"/home/erik/.local/share/applications/jetbrains-idea.desktop","COREPACK_ROOT":"/home/erik/.nvm/versions/node/v18.15.0/lib/node_modules/corepack","GNOME_SHELL_SESSION_MODE":"ubuntu","GTK_MODULES":"gail:atk-bridge","LC_MONETARY":"nl_BE.UTF-8","MANAGERPID":"46586","SYSTEMD_EXEC_PID":"47238","DBUS_SESSION_BUS_ADDRESS":"unix:path=/run/user/1000/bus","LIBVIRT_DEFAULT_URI":"qemu:///system","GIO_LAUNCHED_DESKTOP_FILE_PID":"48077","NVM_DIR":"/home/erik/.nvm","DEBUGINFOD_URLS":"https://debuginfod.ubuntu.com ","LOGNAME":"erik","JOURNAL_STREAM":"8:373935","_":"/home/erik/.nvm/versions/node/v18.15.0/bin/yarn","XDG_SESSION_CLASS":"user","GIT_BRANCH":"master","USERNAME":"erik","TERM":"xterm-256color","GNOME_DESKTOP_SESSION_ID":"this-is-deprecated","WINDOWPATH":"2","GTK_IM_MODULES":"ibus","PATH":"/tmp/xfs-6648df37:/tmp/xfs-5a0db80e:/home/erik/gems/bin:/home/erik/.bun/bin:/home/erik/.yarn/bin:/home/erik/.config/yarn/global/node_modules/.bin:/home/erik/.nvm/versions/node/v18.15.0/bin:/home/erik/.cargo/bin:/home/erik/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/erik/.local/share/JetBrains/Toolbox/scripts:/home/erik/git/greenfield/node_modules/.bin","SESSION_MANAGER":"local/erik-XPS-15-9560:@/tmp/.ICE-unix/47162,unix/erik-XPS-15-9560:/tmp/.ICE-unix/47162","INVOCATION_ID":"5c0fd2029bb34f539a9051d92add0840","npm_package_name":"@gfld/compositor-proxy-cli","XDG_MENU_PREFIX":"gnome-","LC_ADDRESS":"nl_BE.UTF-8","XDG_RUNTIME_DIR":"/run/user/1000","DISPLAY":":1","DESKTOP_STARTUP_ID":"gnome-shell/IntelliJ IDEA Ultimate 2023.2.5/47238-0-erik-XPS-15-9560_TIME62727356","LANG":"en_US.UTF-8","XDG_CURRENT_DESKTOP":"ubuntu:GNOME","LC_TELEPHONE":"nl_BE.UTF-8","XMODIFIERS":"@im=ibus","XDG_SESSION_DESKTOP":"ubuntu-xorg","XAUTHORITY":"/run/user/1000/gdm/Xauthority","LS_COLORS":"rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.swp=00;90:*.tmp=00;90:*.dpkg-dist=00;90:*.dpkg-old=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:","SSH_AGENT_LAUNCHER":"openssh","SSH_AUTH_SOCK":"/run/user/1000/keyring/ssh","PROJECT_CWD":"/home/erik/git/greenfield","SHELL":"/bin/bash","LC_NAME":"nl_BE.UTF-8","npm_package_version":"1.0.0-alpha.0","npm_lifecycle_event":"start","QT_ACCESSIBILITY":"1","GDMSESSION":"ubuntu-xorg","YARN_IGNORE_CWD":"1","GEM_HOME":"/home/erik/gems","LESSCLOSE":"/usr/bin/lesspipe %s %s","LC_MEASUREMENT":"nl_BE.UTF-8","__GIT_PROMPT_SHOW_UNTRACKED_FILES":"","GPG_AGENT_INFO":"/run/user/1000/gnupg/S.gpg-agent:0:1","GJS_DEBUG_OUTPUT":"stderr","LC_IDENTIFICATION":"nl_BE.UTF-8","QT_IM_MODULE":"ibus","PWD":"/home/erik/git/greenfield/packages/compositor-proxy-cli","BERRY_BIN_FOLDER":"/tmp/xfs-6648df37","npm_execpath":"/tmp/xfs-6648df37/yarn","XDG_CONFIG_DIRS":"/etc/xdg/xdg-ubuntu-xorg:/etc/xdg","NVM_CD_FLAGS":"","FIG_JETBRAINS_SHELL_INTEGRATION":"1","XDG_DATA_DIRS":"/usr/share/ubuntu-xorg:/usr/share/gnome:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop","LC_NUMERIC":"nl_BE.UTF-8","LC_PAPER":"nl_BE.UTF-8","QT_IM_MODULES":"ibus","INIT_CWD":"/home/erik/git/greenfield/packages/compositor-proxy-cli","WAYLAND_DISPLAY":"wayland-0"}"}
{time:"2023-11-13T09:52:48.288Z",name:"qalculate-gtk",msg:"Child process started."}

from greenfield.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.