GithubHelp home page GithubHelp logo

dev.vencord.vesktop's Introduction

Vesktop Flatpak

This is the flatpak for Vesktop.

Tray icons

This flatpak has the appropriate permissions for tray icons out of the box; however, GNOME does not provide native tray icons support out of the box, due to the current specification being horribly outdated and not being sandbox-friendly.

The extension that should be used to obtain tray icons is appindicator-support. Enable this extension and disable any other alternatives and tray icons will function as expected.

Discord Rich Presence

Native applications

A solution that works short-term is to run ln -sf $XDG_RUNTIME_DIR/{.flatpak/dev.vencord.Vesktop/xdg-run,}/discord-ipc-0. For something longer lasting, run the following:

mkdir -p ~/.config/user-tmpfiles.d
echo 'L %t/discord-ipc-0 - - - - .flatpak/dev.vencord.Vesktop/xdg-run/discord-ipc-0' > ~/.config/user-tmpfiles.d/discord-rpc.conf
systemctl --user enable --now systemd-tmpfiles-setup.service

Now, native applications will be able to use Rich Presence on every system start.

Flatpak applications

Flatpak applications need certain changes inside of the flatpak environment to connect properly:

  1. Permission to access $XDG_RUNTIME_DIR/.flatpak/dev.vencord.Vesktop/
  2. A symlink at $XDG_RUNTIME_DIR/discord-ipc-0 pointing to $XDG_RUNTIME_DIR/.flatpak/dev.vencord.Vesktop/xdg-run/discord-ipc-0

Suggested changes to accomplish these needs :

  1. Add --filesystem=xdg-run/.flatpak/dev.vencord.Vesktop:create and --filesystem=xdg-run/discord-ipc-* to the global Flatpak permissions
  2. Restart

dev.vencord.vesktop's People

Contributors

flathubbot avatar lewisakura avatar somuchforsubtlety avatar stoppedpuma avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

dev.vencord.vesktop's Issues

Flathub Description

Suggestion: note in the description of Vesktop on Flathub that Vesktop supports audio screenshare. Could be a download reason for many people.

it don't work

excuse the silly title but it's really that simple
followed the instructions to a T with no errors thrown at me, launched a game (Bayonetta, which i'm sure is on discord's list of detected games) and checked vesktop, nothing
i'm on fedora 40, not sure what other information would be pertinent

For TTS to work, need libspeechd.so.2 inside the sandbox

Use cases:

  • I want to use the /tts command in text channels.
  • I want to use the VcNarrator Vencord plugin.

These features use the Web Speech API. On Linux, this is gated behind the Electron flag --enable-speech-dispatcher.

These features work outside of Flatpak, but not inside.
Why is that? Chromium dynamically loads the Speech Dispatcher library libspeechd.so.2. Chromium source code for proof. Inside the Flatpak, this library is not included. The host may have it, but that's outside the sandbox.

For me, a very dirty workaround is to copy the host's library directly into the relevant Flatpak runtime:

runtime="$(sed -n 's/^runtime=\(.*\)$/\1/p' /var/lib/flatpak/app/dev.vencord.Vesktop/current/active/metadata)"
# runtime is "org.freedesktop.Platform/x86_64/23.08" in my case
sudo cp /usr/lib/libspeechd.so.2 /var/lib/flatpak/runtime/"$runtime"/active/files/lib/x86_64-linux-gnu/libspeechd.so.2

I propose that the library be added to the sandbox so that the TTS stuff can easily work as long as the --enable-speech-dispatcher flag is passed.

Current arRPC workaround not working

The current guide asks for the permission to access xdg-run/discord-ipc-* however that is currently not working and should be replaced by xdg-run/discord-ipc-0. Below are also a few of my findings:

Native Version:

  • Native with Native apps works flawlessly (properly creates discord-ipc-0 so no need to do it manually)
  • Native with Flatpak apps requires extra perms --filesystem=xdg-run/discord-ipc-0 (discord-ipc-* does not work/nobody runs two Discord clients)

Flatpak Version:

  • Flatpak with Native apps requires symlink file discord-ipc-0 to /run/user/1000/.flatpak/dev.vencord.Vesktop/xdg-run/discord-ipc-0
  • Flatpak with Flatpak apps requires symlink file discord-ipc-0 and --filesystem=xdg-run/discord-ipc-0

Tray icon is missing

Vesktop has no icon in the tray.

tested with Vesktop v0.4.4, [email protected] 53, gnome 44, Fedora Workstation 38.

The icon for other apps loads correctly, as you can see in the screenshot below.

image

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.