Code Monkey home page Code Monkey logo

xdg-desktop-portal-luminous's People

Contributors

danisdgk avatar decodetalkers avatar nukelet avatar shinyzenith avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

xdg-desktop-portal-luminous's Issues

Remote Desktop is not tested fully

I just use ashpd to test keyboard and pointer, keyboard works, and screencast is also work.

if there is any problem , you should post issue, or to make pr, thanks

I do not know how may people use remote interface..

Runtime error when initiating screencasting

The Settings part of the portal seems to be working perfectly, but when I try to initiate a ScreenCast, I get the following error:

2023-12-29T10:54:58.517785Z  INFO
  dispatch_message {
    msg=Msg {
      type: MethodCall,
      sender: UniqueName(Str(Borrowed(":1.15"))),
      path: ObjectPath("/org/freedesktop/portal/desktop"),
      iface: InterfaceName(Str(Borrowed("org.freedesktop.impl.portal.ScreenCast"))),
      member: MemberName(Str(Borrowed("CreateSession"))), body: Signature("oosa{sv}")
    }
  }:dispatch_method_call {
    msg=Msg {
      type: MethodCall,
      sender: UniqueName(Str(Borrowed(":1.15"))),
      path: ObjectPath("/org/freedesktop/portal/desktop"),
      iface: InterfaceName(Str(Borrowed("org.freedesktop.impl.portal.ScreenCast"))),
      member: MemberName(Str(Borrowed("CreateSession"))),
      body: Signature("oosa{sv}")
    }
  }:dispatch_method_call_try {
    msg=Msg {
      type: MethodCall,
      sender: UniqueName(Str(Borrowed(":1.15"))),
      path: ObjectPath("/org/freedesktop/portal/desktop"),
      iface: InterfaceName(Str(Borrowed("org.freedesktop.impl.portal.ScreenCast"))),
      member: MemberName(Str(Borrowed("CreateSession"))),
      body: Signature("oosa{sv}")
    }
  }:
  xdg_desktop_portal_luminous::screencast:
  Start shot:
    path :/org/freedesktop/portal/desktop/request/1_77/obs4,
    appid: thread 'tokio-runtime-worker' panicked at 'called `Result::unwrap()` on an `Err` value: Connect(NoWaylandLib)', src/screencast.rs:194:63

I am running the binary from the development shell provided through flake.nix, so I assume, that the Wayland library should be present, as it's among the nativeBuildInputs. Also, wayshot works without any issues.

RemoteDesktop: KDE connect doesn't work

KDE connect uses the remotedesktop portal for mouse and keyboard input. It fails with the below output

kdeconnect.plugin.mousepad: Unable to handle remote input. RemoteDesktop portal not authenticated
kdeconnect.plugin.mousepad: authenticating "/org/freedesktop/portal/desktop/request/1_3353/kdeconnect3112798555"
kdeconnect.plugin.mousepad: configuring "/org/freedesktop/portal/desktop/request/1_3353/kdeconnect2341811113"

pkgbuild fix

    |
124 | / cpp_class!(
125 | |     /// Wrapper around [`QColor`][class] class.
126 | |     ///
127 | |     /// [class]: https://doc.qt.io/qt-5/qcolor.html
128 | |     #[derive(Default, Clone, Copy, PartialEq)]
129 | |     pub unsafe struct QColor as "QColor"
130 | | );
    | |_^ the trait `CppTrait` is not implemented for `QColor`
    |
    = note: this error originates in the macro `$crate::__cpp_class_internal` which comes from the expansion of the macro `cpp_class` (in Nightly builds, run with -Z macro-backtrace for more info)

For more information about this error, try `rustc --explain E0277`.

in the environment of pkgbuild, slint will never be built

_pkgname=xdg-desktop-portal-luminous
pkgname="${_pkgname}-git"
pkgver=r78.7118cbe
pkgrel=1
url='https://github.com/waycrate/xdg-desktop-portal-luminous'
pkgdesc='xdg-desktop-portal backend for wlroots based compositors, providing screenshot and screencast'
arch=('x86_64' 'aarch64')
license=('BSD-2-Clause')
depends=('xdg-desktop-portal' 'slurp' 'qt5-base')
provides=("xdg-desktop-portal-impl")
makedepends=('git' 'ninja' 'meson' 'rust' 'clang' 'qt5-base')
source=("${_pkgname}::git+${url}.git")
sha256sums=('SKIP')

build() {
  cd "${_pkgname}"
  meson setup build \
    -Dprefix=/usr \
    -Dlibexecdir=lib \
    -Dbuildtype=release
  meson compile -C build
}

package() {
  cd "${_pkgname}"
  DESTDIR="${pkgdir}" ninja -C build install
}

pkgver() {
  cd "${_pkgname}"
  printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
}

Build Error: Outdated `roxmltree` dependency in a nested dependency chain

While I was trying to build xdg-desktop-portal-luminous for wayshot. I kept getting a cargo build error
Following is the output of ninja -C build with CARGO_LOG=TRACE

  Downloaded roxmltree v0.18.1
   8.795794092s TRACE cargo::ops::cargo_read_manifest: read_package; path=/home/utkarsh/.cargo/registry/src/index.crates.io-6f17d22bba15001f/roxmltree-0.18.1/Cargo.toml; source-id=registry `crates-io`
   8.795800868s TRACE cargo::util::toml: read_manifest; path=/home/utkarsh/.cargo/registry/src/index.crates.io-6f17d22bba15001f/roxmltree-0.18.1/Cargo.toml; source-id=registry `crates-io`
   8.811647043s  WARN cargo::util::rustc: failed to update rustc info cache: failed to write `/home/utkarsh/xdg-desktop-portal-luminous/target/.rustc_info.json`
   8.811727403s DEBUG cargo: exit_with_error; err=CliError { error: Some(failed to download replaced source registry `crates-io`

Caused by:
    0: failed to read `/home/utkarsh/.cargo/registry/src/index.crates.io-6f17d22bba15001f/roxmltree-0.18.1/Cargo.toml`
    1: No such file or directory (os error 2)), exit_code: 101 }
   8.811758534s DEBUG cargo: display_error; err=failed to download replaced source registry `crates-io`

Caused by:
    0: failed to read `/home/utkarsh/.cargo/registry/src/index.crates.io-6f17d22bba15001f/roxmltree-0.18.1/Cargo.toml`
    1: No such file or directory (os error 2)
error: failed to download replaced source registry `crates-io`

Caused by:
  failed to read `/home/utkarsh/.cargo/registry/src/index.crates.io-6f17d22bba15001f/roxmltree-0.18.1/Cargo.toml`

Caused by:
  No such file or directory (os error 2)
FAILED: xdg-desktop-portal-luminous 
/home/utkarsh/.cargo/bin/cargo build && cp /home/utkarsh/xdg-desktop-portal-luminous/target/debug/xdg-desktop-portal-luminous xdg-desktop-portal-luminous
ninja: build stopped: subcommand failed.

To check whether the root cause was roxmltree I created a brand new package with same version of roxmltree and could not also build the same.

This is ultimately caused by the following dependency tree:

screenshotdialog
└─ slint v 1.3.2
    ├── i-slint-backend-selector v 1.4.1
    │   ├── i-slint-backend-linuxkms v 1.4.1
    │       └── i-slint-common  v 1..4.1 
    │                  └── fontdb  v  0.16.2
    │                         └── fontconfig-parser  v  0.5.3
     |                                  └── roxmltree  v  0.18.1

Is there anyway around this or this can be only solved with a dependency update?

PS Tried upgrading slint straight away and didn't fixed it.

Fails to start without config directory

While Luminous portal works fine without config file it fails when the directory is also missing like on the first start by a new user or inside jail/sandbox. Found while packaging and testing in a pristine environment.

$ rm -rf ~/.config/xdg-desktop-portal-luminous/
$ RUST_BACKTRACE=1 /usr/libexec/xdg-desktop-portal-luminous
INFO xdg_desktop_portal_luminous: luminous Start
thread 'tokio-runtime-worker' panicked at 'called `Result::unwrap()` on an `Err` value: Error { kind: Generic("No such file or directory (os error 2)"), paths: [] }', src/main.rs:137:46
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::result::unwrap_failed
   3: xdg_desktop_portal_luminous::main::{{closure}}::{{closure}}
   4: tokio::runtime::task::raw::poll
   5: tokio::runtime::scheduler::multi_thread::worker::Context::run_task
   6: tokio::runtime::task::raw::poll
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Abort trap

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.