#πŸ–₯-vesktop-development

1 messages Β· Page 20 of 1

humble mortar
#

@hybrid fjord

import dbus from "@homebridge/dbus-native";
const sessionBus = dbus.sessionBus();
sessionBus
    .getService("org.freedesktop.portal.Desktop")
    .getInterface("/org/freedesktop/portal/desktop", "org.freedesktop.portal.Settings", function (err, settings) {
        if (err) { return ""; }
        settings.Read("org.freedesktop.appearance", "accent-color", function (err, result) {
            if (err) { return ""; }
            const [r, g, b] = result[1][0][1][0];
            const r255 = Math.round(r * 255);
            const g255 = Math.round(g * 255);
            const b255 = Math.round(b * 255);

            const toHex = (value: number) => value.toString(16).padStart(2, "0");
            const hexColor = `#${toHex(r255)}${toHex(g255)}${toHex(b255)}`;
            console.log(hexColor);
        });
    });

needs to be async but should work

simple groveBOT
simple groveBOT
#

Discord Account

No response

Motivation

discord reactive image (https://reactive.fugi.tech/) is not working properly when using vekstop, which is working on normal discord

Solution

spoof the executable to be similar with dekstop

Alternatives

add option to use normal discord instance in vekstop

Additional context

No response

Request Agreement

  • [X] I have searched the existing issues and found no similar issue
  • [X] This is not a plugin request
  • [X] This ...
humble mortar
#

Modded or alternative clients often do not work because they modify or disable the RPC api

#

yep

#

vRPC when (makes more sense to just upstream patches to arrpc :p)

humble mortar
#

maybe add an rpc checkbox in the issue template for stuff like that

#

@hot juniper YOU 🫡 wdym about the discord:/// embedded in chat stuff

next sundial
#

vesktop environment

simple groveBOT
#

What I am trying to say is that macOS notifications work (from a user perspective) the same way as notifications on iPhones; Discord (and so Vesktop) uses the standard macOS notifications to send notifications. The issue I am describing is that instead of making the message sound go with the notification, it is separate, made by the application itself and not the notification. This is an issue because when you silence the notifications (via for example macOS focus mode (do not disturb)), the ...

hybrid fjord
#

Oor we can somehow mute notification sound on our side and via electron API, if there's any, send native MacOS notifications

humble mortar
#

vesktop is turning into Discord desktop,, so many patches to deal with electron shortcomings

simple groveBOT
hybrid fjord
vernal lintel
#

we just need to avoid making patches for minor things like this one

#

too niche and makes code less maintainable

simple groveBOT
hot juniper
#

guhhh

#

no

#

you need to do <>

humble mortar
hot juniper
#

why

#

did they change it

#

anyway

#

i still think its worth only looking at the path name

#

parse it as a URL

humble mortar
#

they both embed

#

wait no

#

theye hyperlink not embed

hot juniper
#

yes

#

theres a LOT of discord://hostname/ links

#

so do parse it as a URL please

#

you do not want to send users to /hannels/1/2 by accident

#

404 jumpscare

#

or redirect to /channels/@me

simple groveBOT
#

Alright, I figured out that it's a sandbox issue (of the flatpak). The AUR version works so I'm going to be using that from now on.

Specifically the 1.5.2-2 AUR vesktop package (for anyone reading this). vesktop-git, vesktop-bin, and the vesktop flatpak all seem to be broken.

ArRPC plugin is not required.

![image](https://private-user-images.githubusercontent.com/6429283/328528201-b885afa7-57f7-4acc-9236-203da17497bb.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.ey...

humble mortar
#

qhar

#

it wokrs for me πŸ—£οΈ

humble mortar
hot juniper
#

are you sure lol

humble mortar
#

wheres that discord uri scheme gist

#

ill tripple check

hot juniper
#

no

humble mortar
#

wdym no 😭

hot juniper
#

and you arent

humble mortar
#

thats the only thing what ive done doesnt handle

#

discord:/// standalone

hot juniper
#

unless im stupid

humble mortar
#

it wont thatll never happen whar

#

the scheme for that is discord:///channels/@me/

hot juniper
#

you are not stripping the hostname

#

you need to strip the hostname

humble mortar
hot juniper
humble mortar
hot juniper
#

wait no....

#

its even worse

#

im being dumb about this

hot juniper
hot juniper
humble mortar
#

i mean sure?

hot juniper
#

This is a big problem because average discord user brain = brainBasket

humble mortar
#

actually no

hot juniper
#

you could host subdomain of discord.com.yourdomain

#

and open `discord://.yourdomain/

humble mortar
#

lmao

hot juniper
#

and it would open https://discord.com.yourdomain/

humble mortar
#

ok true lmao

hot juniper
#

also

#

nvm

humble mortar
#

why would such a thing ever be called 😭

hot juniper
#

evil people

humble mortar
#

also dont cdns block phishing links likethat

hot juniper
#

no

#

you are running that on the client

#

there is no CDN

#

there is just an insecure client app

#

i would test to see how insecure official app is

#

but

#

i just lobotomised my OS

humble mortar
#

trol

hot juniper
#

bye lol time to explode it more

humble mortar
#

strip the leading / from the passed link easy peasy

hot juniper
#

no

#

easy fix is to parse the URL

humble mortar
#

an attacking url could be anything

hot juniper
#

remove the hostname then

humble mortar
#

enforcing https://branch.discord.com/ is enough

#

itll send to discord 404 if its malformed

hot juniper
#

guhhhhh

#

i will write suggestion soon

humble mortar
#

it doesnt need to be so overcomplicated 😭

hot juniper
#

lol what

humble mortar
#

shrmple

#

solves the url injection and the discord:/// issue

#

if u want 404 page detection thats another thing

hot juniper
#

i don't know how to say this but you do not get my point

humble mortar
#

explain then 😭

hot juniper
#

stop doing substring on the URL

#

parse the URL instead

humble mortar
#

the scheme isnt a url

#

discord handles the redirection

hot juniper
#

treat it like a URL

#

I know it's a special URI scheme

#

hmm

humble mortar
hot juniper
#

Because it is effectively just a URL

#

I want to see how stock discord does it

humble mortar
#

what is the issue in how its done rn

#

thats what i dont understand

hot juniper
#

okay

#

basically

#

a lot of the time people will use - as a hostname for a discord URL scheme

#

your code assumes there will never be a hostname

#

now, do note the hostname effectively doesn't matter

humble mortar
#

can I see who does that

#

because discord itself doesnt

#

also my quick look at how discorrd handles it it didnt look like they did hostname processing

hot juniper
#

it is discarded

#

but parsed

humble mortar
#

alr let me see

#

so i discard discord://*/ basically yeah

hot juniper
#

effectively yes

#

i still think you should use the URL API

#

works in node too iirc

#

@humble mortar im scared

#

discord code so overengineered

#

okay so

#
function extractUrlFromArgs(args) {
  const urlArgIndex = args.indexOf('--url');
  if (urlArgIndex < 0) {
    return null;
  }
  const passThroughArgsIndex = args.indexOf('--');
  if (passThroughArgsIndex < 0 || passThroughArgsIndex < urlArgIndex) {
    return null;
  }
  const url = args[passThroughArgsIndex + 1];
  if (url == null) {
    return null;
  }
  return url;
}
let initialUrl = extractUrlFromArgs(process.argv);
if (!allowMultipleInstances) {
  app.on('second-instance', (_event, args) => {
    if (args != null && args.indexOf('--squirrel-uninstall') > -1) {
      app.quit();
      return;
    }
    const url = extractUrlFromArgs(args);
    if (coreModule) {
      coreModule.handleOpenUrl(url);
    } else if (url != null) {
      initialUrl = url;
    }
    if (!coreModule) {
      appUpdater.focusSplash();
    }
  });
}
app.on('will-finish-launching', () => {
  app.on('open-url', (event, url) => {
    event.preventDefault();
    if (coreModule) {
      coreModule.handleOpenUrl(url);
    } else {
      initialUrl = url;
    }
  });
});
#

this is how discord handles URLs

humble mortar
#

it uses --url????

hot juniper
#

lol they are insane

humble mortar
#

gwuh i tried that on their app and it didnt even work

hot juniper
#

we should NOT do that

humble mortar
#

ik 😭

hot juniper
#

husk husk husk husk husk handleOpenUrl is entirely handled in discord_desktop_core

#

isnt that stored in a config directory lmao

#

im not reverse engineering that

#

time to explode my computer more

humble mortar
#

what are you doing 😭

humble mortar
#
win.loadURL(`https://${subdomain}discord.com/$%7Burl?.replace(/discord:\/\/[^/]*\/?/, "") || "app"}`);

covers:
discord://
discord:///
discord://*/
discord://.domain

#

doesnt cover correct uri but incorrect scheme (will send to discord 404 page

#

could add some logic to detect if the title is Page Not Found | Discord

humble mortar
#

i love \/ escaping!!!

hybrid fjord
#

Is there way to reverse engineree it from discord official?

humble mortar
humble mortar
#
.replace(RegExp("^discord://[^/]*/?")
``` a lot less cursed
hybrid fjord
humble mortar
#

im not reading discord code for this

#

it works

humble mortar
compact frigate
#

!!document.querySelector('img[alt="Nelly serving noodles!"]') would work if you load the dom

humble mortar
#

eh too much effort for something thatll realistically never happen i think

simple groveBOT
vernal lintel
#

how do people not know ctrl +

#

first time using a pc in their life

hot juniper
simple groveBOT
#

Discord Account

Lysec

Operating System

Nobara 40

Linux Only ~ Desktop Environment

KDE Plasma 6

Package Type

Flatpak

What happens when the bug or crash occurs?

Everytime I try to screenshare a fullscreen / borderless window game it seems like it stops rendering on my part however the stream is just fine (meaning I can not do anything inside the game while streaming)

What is the expected behaviour?

Quite "simple" really, it should not freeze the game while scr...

humble mortar
# simple grove

the screen share portal is stealing the frame buffer from the window πŸ’€πŸ’€πŸ’€πŸ¦§

vernal lintel
#

fire

humble mortar
#

@scenic hollow vscodium registers global shortcuts with kde wayland. any idea how its done?

#

oh theres the GlobalShortcuts protocol

#

does electron seriously not implement that yet

#

horror

scenic hollow
vernal lintel
scenic hollow
#

i think someone mentioned gnome having merged a pr idk

humble mortar
#

hyprland seems to have their own implementation here

#

gnome has ways to define custom command binds by the user right?

#

perhaps venbind could set those itself automatically via dbus or similar

#

seems gsettings can interact and set binds

#

thats all venbind really needs to do i think

#

implement GlobalShortcuts and for gnome users automatically set the binds as changed from the client

#

other window manager users can cope and set the binds manually via the --keybind arg

#

support windows
support macos
does electrons own globalShortcut module not work?

vernal lintel
#

it does

#

but it's limited

#

no PTT

humble mortar
#

horror it cant distinguish keyup/down??

vernal lintel
#

it can only do fire once keybinds, not hold

humble mortar
#

ah ok

simple groveBOT
simple groveBOT
#

once again this is not a vesktop issue so commenting here is pointless. locking is implemented by making use of the electron api as described in their docs. make a mininmal reproduction example and report it to electron.

https://github.com/Vencord/Vesktop/blob/af9ed58eef0ced5b4f52bb5be021fc6f71ba7ece/src/main/index.ts#L92-L102

simple groveBOT
#

@alchzh Yes, I'd love to, but sorry to ask how do I load this plugin in Vesktop? I understand that Vencord needs to be built with the plugin, but I wasn't able to figure out where to put the relevant index.ts in order to build it with the Vesktop application.

Build Vencord with the plugin then go to Vesktop Settings in your app and change it to the Vencord/dist directory you just built in

image

hybrid fjord
#

#517 and #686 xd

cyan flame
simple groveBOT
cyan flame
humble mortar
humble mortar
# simple grove

me when I dont look at linked PRS and see numbers in the tray was exploded for readability issues

hybrid fjord
hybrid fjord
#

I'm in

#

Just randomly woke up xd

cyan flame
humble mortar
#

put your phone out of reach

cyan flame
#

throw it to the other side of the room (/joke)

humble mortar
#

no but actually do that

cyan flame
#

please don’t you might break your phone

hybrid fjord
#

import dbus from "@homebridge/dbus-native";
will it explode on non-linux systems?

hot juniper
#

try it and see

humble mortar
vernal lintel
#

lazy import

humble mortar
hybrid fjord
scenic hollow
scenic hollow
#

honestly most of the trouble here comes from wayland

simple groveBOT
humble mortar
scenic hollow
humble mortar
#

I think its gonna be a lot longer than temporary lol

#

also I just realized an issue, since the bind system relies on executing the vesktop bin and relying on electrons lock system– that issue with it just sometimes losing the lock on Linux is gonna be annoying as hell

#

wait a fucking second

#

have all the issue reports on that been from arch and arch based distros

#

that bug report has cachyos and the comment is on arch

#

I'm on arch too and I experience it

scenic hollow
#

huh i wasn't aware of that at all

humble mortar
#

I think it might be an issue with the aur packages using system electron

scenic hollow
#

i'm usually on the flatpak version i don't think that has ever happened to me before
i also don't usually open vesktop multiple times so idk

humble mortar
#

hmm

#

idk how to reliably test it

humble mortar
scenic hollow
humble mortar
scenic hollow
#

yippee

#

ok now onto wayland and gnome

humble mortar
#

(would be nice if the registered binds were mirroed to kdes keybind settings but thats prob hell for non qt apps(you have to use the dbus))

scenic hollow
#

i think xdg-desktop-portal literally does that

humble mortar
#

ah so just an x11 hill issue

#

ok all good

simple groveBOT
humble mortar
hybrid fjord
#

Wtf is that

simple groveBOT
hybrid fjord
#

about no stdout i found this:
looks like dbus skill issue for me

azure verge
#

wacky

hybrid fjord
#

anyway wtf is this logs xdd

#

bro wants us to read machine code with all ram addresses

simple groveBOT
#

https://github.com/Vencord/Vesktop/issues/819#issuecomment-2295369005

@Vendicated, the error message that appears in ABRT is indeed identical. However, the problem is significantly less impactful than that report describes – merely invoking the icon again after the notification appears it adequate to have it run. I don't need to quit it or modify any permissions.

Irrespective, why does it differing to that report ensure that it's an issue with my underlying OS? There is, of course, th...

vernal lintel
#

why do they talk like that

hybrid fjord
#

he looks like worker for some company so probably just habit

vernal lintel
#

nah this is way over the top

#

there's talking professionally and talking in a way that is hardly comprehensible

simple groveBOT
#
  1. i have no idea what you're talking about or what ABRT is. you can just run vesktop from terminal and get the console output
  2. read my reply to that issue, it will solve your issue.
  3. i would advise you to talk more like a human being and using simpler language so other people can better understand you

If you need any further help, use our support channel. GitHub is for tracking actual bugs and features, not support

simple groveBOT
#

https://github.com/Vencord/Vesktop/issues/803#issuecomment-2275409139

@Vendicated, you wanted to know what ABRT is - the aforementioned comment depicts its GNOME GUI. It's an automatic crash reporter.

This means your system isn't allowing chromium to allocate enough virtual memory. I've had this issue too, in every chromium app where about 20% of the time the app would crash on launch and found that it's caused by selinux.

You can either live with it (it only crashes about ev...

humble mortar
#

launch vesktop

#

send to tray

#

open steam

#

attempt to open vesktop from the .desktop or vesktop

#

loses the lock

#

what the hell is steam doing

#

YEP happens with heroic too

#

steam is CEF why is electron having issues with it

#

doesnt happen with spotify (also CEF)

vernal lintel
#

but we don't officially support that anyway

#

you should use packaged electron

humble mortar
vernal lintel
#

then electron / chromium issue

humble mortar
#

mhm

#

ok time to make a minimum viable test app and figure out what electron version this exploded in

simple groveBOT
humble mortar
#

praying they didnt as thatd mean its not just steam that causes the issue

hot juniper
#

the locking everything is starting to get excessive imo

humble mortar
#

actually ill just ping them in the electron bug report

humble mortar
vernal lintel
hot juniper
#

hm

#

true

#

however, I don't think that issue was initially closed for the right reasons

#

isnt it a "electron issue"?

#

additionally, I actually think that has to do with KDE activities

simple groveBOT
#

@RokeJulianLockhart Kind of. The application starts, but no window is rendered, and I get a crash notification in my taskbar (clicking that crash notification is what lead to the screenshot I uploaded). The application's systray icon is visible and its functions (restart, quit, etc.) are still functioning. To quote the report: "Vesktop fails to start up the main window, however the tray icon appears and is functional. An entry on the task manager appears, but attempting to switch focus to it ...

humble mortar
#

I dont use them at all so I dont think so

simple groveBOT
simple groveBOT
humble mortar
#

my mic clearly picks up my keyboard mashing

hybrid fjord
#

Maybe it's discord noise suppression moment

#

I mean that it doesn't work good xd

simple groveBOT
hybrid fjord
#

...why......

humble mortar
#

guhb wont that just make it feel like vesktop takes forever to start

#

or did they make the main window spawn sooner

#

instead of that why not just integrate the splash in the main browser window so it feels more seamless for people who want that

vernal lintel
#

cause its not possible

humble mortar
#

well u can at least spawn the window and set the colour like the splash

#

ive done it locally

#

can i suggest changes to stuff they havent touched uhhh

simple groveBOT
simple groveBOT
#

Discord Account

.artiman.

Motivation

for some reason the registered games setting isnt included in vesktop in the normal discord client there is a registered games settings so i cannot add games/apps to my activity

Solution

i want vesktop to have the registered games setting like the normal discord client

Alternatives

normal discord client with vencord installed

Additional context

![image](https://github.com/user-attachments/assets/6fa014a2-26a4-4ff7-a3c8-17542f2...

simple groveBOT
#

I appear to be running in a similar issues as described above. The tray icon is present but the window does not appear. Every now and then the main window does come up after a couple of minutes.

/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=startvesktop dev.vencord.Vesktop
Using NVIDIA on Wayland, disabling gpu sandbox
Wayland socket is available, running natively on Wayland.
To disable, remove the --socket=wayland permission.
Passing the following arguments to Elec...
simple groveBOT
simple groveBOT
#

@RokeJulianLockhart I launched it three times, and got two different behaviours. The first launch got stuck on an infinite loading screen, but still had the desktop notification that "vesktop.bin" had crashed.
Screencast_20240820_204216.webm

The second launch had no crash notification, but the window was still not being drawn. And then the updater for Vencord pops up.
[Screencast_20240820_204354.webm](http...

simple groveBOT
simple groveBOT
humble mortar
#

wow discords process detection is really lacking on the native linux games front

#

i wonder if we should maintain a db for that

#

actually maybe a ui for selecting a process to add to map to an existing rpc id

#

wait doesnt discord have a ui like that

#

huh wait

#

discord desktop detects native linux half life

#

but arrpc cant because its not in detectable.json

#

i wonder if discord desktop is doing process name scanning as well

hybrid fjord
humble mortar
#

thats what I thought

#

so they obviously are doing more than just matching to that

hybrid fjord
humble mortar
#

@hot juniper whyd you initialize i at 1 instead of 0 in arrpc | PR #75

it skips processes that dont have the path in their cmdline

hot juniper
#

i made that 4 months ago

#

it probably had something to do with ".exe" in path names

#

or path separators

#

maybe I need to take a look at that again

#

though if I were to touch it again

#

i'd want to do much more related to game detection as a whole

humble mortar
#

yeah i was looking at why i couldnt get arrpc to detect obs (trying to implement auto streamer mode)

humble mortar
#

its very hacky rn

hot juniper
humble mortar
#

:3

humble mortar
hot juniper
#

my brain is too cooked to understand my 4 month old fucked up code and i dont even understand what what behaviour specifically you are talking about at the moment blobcatcozy

humble mortar
#

ok so like

#

[ 'obs' ] gets exploded and doesnt reach the compare to detectable db stage

#

[ '', 'usr', 'bin', 'obs' ] would

#

oh actually

#

that leading ''

#

i wonder if the leading / is causing that and thats what you were avoiding

#

nope

hot juniper
#

OHHHHHH

humble mortar
#

guhh maybe you just typed 1 as it worked for most processes

humble mortar
hot juniper
humble mortar
hot juniper
#

yes i know

#

thanks for explaining my 4 month old shitcode to me

humble mortar
#

wait what 😭

hot juniper
#

i meant i understand my old code now blobcatcozy

#

i mean i could read it all myself

#

but brain is brainBasket right now

humble mortar
#

me too

#

im arguing with git about a file that doesnt exist but it thinks it does

#

did i fucking break git hello it wont recognize content changes 😭

hot juniper
# humble mortar im arguing with git about a file that doesnt exist but it thinks it does

quick reminder that

The name "git" was given by Linus Torvalds when he wrote the very
first version. He described the tool as "the stupid content tracker"
and the name as (depending on your mood):

  • random three-letter combination that is pronounceable, and not
    actually used by any common UNIX command. The fact that it is a
    mispronunciation of "get" may or may not be relevant.
  • stupid. contemptible and despicable. simple. Take your pick from the
    dictionary of slang.
  • "global information tracker": you're in a good mood, and it actually
    works for you. Angels sing, and a light suddenly fills the room.
  • "goddamn idiotic truckload of sh*t": when it breaks
humble mortar
#

I cant access webpack/common inside main right

#

ill need to register an ipc event to communicate to renderer right

hybrid fjord
#

From main to renderer = IPC event

simple groveBOT
hybrid fjord
#

We 100% update electron asap

humble mortar
#

discord hides this on web what do I search for to find what controls the hiding

grizzled hemlock
humble mortar
grizzled hemlock
#

love that

humble mortar
#

why does this show changes requested theyre all resolved 😭

humble mortar
#

outdated πŸ—£οΈ

grizzled hemlock
#

they have to resolve them for it go away

humble mortar
#

theyre all resolved 😭

#

I dont understand github

woeful current
#

insane

dreamy kiln
#

Can't cookie resolve them herself?

humble mortar
#

should I disable the patch to show the auto streamermode toggle if the env is flatpak Vesktop | PR #822

#

actually no cause what if the user uses the webrpc plugin to connect to a non flatpaked arrpc server

#

said arrpc server would need to have the patches that add obs scanning tho

vernal lintel
humble mortar
#

can flatpaks request a user service to start

#

@sly cairnyou flatpak goob

humble mortar
hybrid fjord
#

Locally it's easy)

humble mortar
#

wdym

hybrid fjord
# humble mortar wdym

I mean that bumping new electron version usually takes a long time for our main branch
Also there is no guarantee that nothing explodes when we update

simple groveBOT
#

Discord Account

Joohnyde#7471

Operating System

Linux Mint 22

Linux Only ~ Desktop Environment

X-Cinnamon

Package Type

Flatpak

What happens when the bug or crash occurs?

If I happen to idly watch someone's screen-share in full-screen my screen will lock itself and after some time will go to sleep. I think this happens because my operating system doesn't detect it as a full-screen application.

What is the expected behaviour?

I expect to be able to watch a stre...

humble mortar
#

@hybrid fjord twice now ive managed to get the tray to show i have a mention despite not having one

#

happens when in vc and im pinged

hybrid fjord
#

It's reproducible or random?

#

And tell your settings in both stock notification settings and Vesktop/Vencord notification settings

humble mortar
#

nah idk how to

humble mortar
#

@vernal lintel Im trying to use pnpm patch to fix the patch for the auto streamermode pr but I get  ERR_PNPM_NO_MATCHING_VERSION  No matching version found for arrpc@3.4.0 howd you generate the original patch?

#

oHH i made the patch on 3.4.0 but the pinned version in package.json is a few commits later

simple groveBOT
#

Discord Account

No response

Motivation

Since discord is based on chromium, it would be very cool if we are able to include chromium extensions when building. This can make the Experience better.
For example, a better spellcheck like LanguageTool or Grammarly can make correcting spelling easier and suggest better way to structure sentence in discord.
Currently, running discord in a browser is the only way to have these feature with discord at the same time.

Solution

Allow ...

simple groveBOT
simple groveBOT
humble mortar
# simple grove

if this is an issue with web too it should be reported to them right?

simple groveBOT
simple groveBOT
#

I got flatsteal open, Trying to figure out what exactly the command was so i can get it working again. (The deb packages are broken for me, And the commands were talking about the offical discord and not vesktop's rpc.)

exactly why i had to stop using official discord "unable to satisfy dependencies" debs are just broken (and i mean even when it was working it was annoying having to download a new deb multiple times a day instead of it updating on its own)

hybrid fjord
simple groveBOT
humble mortar
#

why are they using vesktop on windows gwyuh

humble mortar
hybrid fjord
simple groveBOT
humble mortar
cyan flame
humble mortar
#

ok then ig @upper pine needs to cook venmic on windows πŸ’€ πŸ’€ πŸ’€

wary ridgeBOT
silk elkBOT
cyan flame
#

:trolly:

upper pine
#

Afaict audio stuff like this requires a Kernel driver on windows to work

upper pine
vernal lintel
#

tessie doesn't like automod screenshots πŸ§™πŸ»β€β™‚οΈπŸ„

humble mortar
#

wait then how tf does discord desktop do it

upper pine
#

Not sure but I think recording is possible without (although still really ugly, not sure tho), rerouting it is what's fucked

I guess if we made a fake audio node we could feed the input into it and add it to the screen share stream

#

If we do it the latter way we could probably cook it up fairly easily with gstreamer maybe

humble mortar
#

not worth it just install linux

upper pine
#

Looks like gstreamer supports it

#

I'd be up to try it

humble mortar
#

windows is getting venmic before mac 😭 😭

upper pine
#

Mac development is actually hell - I've added MacOS support to saucer a few days ago

#

And it was so aids to develop for

#

I mean it wasn't half as bad after it was done

#

But eh, the process wasn't too nice

simple groveBOT
humble mortar
simple groveBOT
upper pine
simple groveBOT
#

Discord Account

Liarus

Motivation

Hello! i've now been using Vesktop for quite a while and i'm liking it a lot, however there's a couple of features that i would like to have, as i noticed a couple of discrepancies between the versions of vesktop i use every day, my main Desktop runs on Linux, and my laptop runs on Windows, i noticed that on windows the vesktop icon doesn't have a pride flag like it does on linux, (or, linux has a pride flag added compared to windows i guess)

I...

vernal lintel
#

10 millionth duplicate

hybrid fjord
#

what if we autoclose issues where there is word "pride"

humble mortar
vernal lintel
#

but still a blatant duplicate

hot juniper
#

but this time actually look at the contents instead of just locking issues?

simple groveBOT
compact frigate
humble mortar
upper pine
#

People also use tauri

#

Also, most game launchers use CEF and are written in C++

simple groveBOT
simple groveBOT
humble mortar
#

wait is static/icon.ico unused

humble mortar
#

@hybrid fjord can you hook into and replace the default tray icon faster so there isnt a moment or two where the default tray shows

hybrid fjord
#

wha

simple groveBOT
#

@Mouwrice Yep, that makes everything work fine. No crashes. Here's the output of the command line in case it's relevant:

[niroku@Room-Desktop-PC ~]$ /usr/bin/flatpak run --nosocket=wayland --branch=stable --arch=x86_64 --command=startvesktop dev.vencord.Vesktop
Passing the following arguments to Electron: --enable-speech-dispatcher
[3:0824/171447.304916:ERROR:bus.cc(407)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or direc...
simple groveBOT
simple groveBOT
hybrid fjord
humble mortar
#

close vesktop fully

#

start vesktop and watch the tray icon

#

it starts as the default icon then switches when renderer loads

hybrid fjord
#

Ohh okay I'll take a look

hybrid fjord
simple groveBOT
simple groveBOT
simple groveBOT
vernal lintel
#

working on a new feature that will finally make everyone happy

humble mortar
humble mortar
simple groveBOT
simple groveBOT
humble mortar
simple groveBOT
humble mortar
simple groveBOT
humble mortar
vernal lintel
#

always have

#

u have lower bitrate limit without nitro

humble mortar
#

wait so is the lag present on stock discord then?

vernal lintel
#

no

#

cause you're limited to shit quality anyway

simple groveBOT
simple groveBOT
#

ohh i see now, for some reason it was broken for me too so i ran(not as root user) this script to restart xdg-desktop-portal-hyprland and xdg-desktop-portal

#!/bin/bash

sleep 1
# kill all possible running xdg-desktop-portals
killall -e xdg-desktop-portal-hyprland
killall -e xdg-desktop-portal-gnome
killall -e xdg-desktop-portal-kde
killall -e xdg-desktop-portal-lxqt
killall -e xdg-desktop-portal-wlr
killall -e xdg-desktop-portal-gtk
killall -e xdg-desktop-portal
slee...
simple groveBOT
hybrid fjord
simple groveBOT
#

Hello, tried the script above & still not working, will print xdph & vesktop logs below.

xdph

[LOG] [screencopy] SHAREDATA returned selection 0
[LOG] [screencopy] Start:
[LOG] [screencopy]  | /org/freedesktop/portal/desktop/request/1_438/webrtc502186565
[LOG] [screencopy]  | /org/freedesktop/portal/desktop/session/1_438/webrtc_session1828766388
[LOG] [screencopy]  | appid: 
[LOG] [screencopy]  | parent_window: 
[LOG] [pw] Building modifiers for dma
[LOG] [screencopy] Sharing i...
humble mortar
simple groveBOT
simple groveBOT
simple groveBOT
#

are there any workarounds at the moment to enable global push to talk in vesktop?

Does building with #326 or #609 work for your use case?

<details>
<summary>Alternate/standalone workarounds</summary>
If not, there are a few projects on GitHub to do this globally, by using the Pipewire API to toggle the entire mic. <a href="https://github.com/cyrinux/push2talk">Push2talk</a> is quite polished, but does not currently support binding mouse buttons. I ended up kludging a <a href="https:...

#

Discord Account

No response

Motivation

Hey, I've installed Vesktop on Arch because of Wayland (screenshare problem) but I don't like this Icon of the app, anyway to use Discord's official one?

Solution

Adding an option in the setting to use the Discord's official icon

Alternatives

Discord official app

Additional context

No response

Request Agreement

  • [X] I have searched the existing issues and found no similar issue
  • [X] This is not a plugin request
  • ...
humble mortar
# simple grove

seriously how are people so dumb?? they know u can change the icon to whatever u want locally right???

hot juniper
#

maybe update it to say you can use your desktop environment to override the icon

simple groveBOT
#

Updates all dependencies to the latest version, mostly includes Electron v32 which should have improved the screensharing situation when using Pipewire on Linux.

Related: PipeWire capturer: fix some possible threading issues which is included in Chromium M127, Electron v32 ships with M128
Related: https://github.com/Vencord/Vesktop/issues/629

I personally haven't seen a significant difference on GNOME...

simple groveBOT
hybrid fjord
simple groveBOT
simple groveBOT
simple groveBOT
simple groveBOT
#

are there any workarounds at the moment to enable global push to talk in vesktop?

Does building with #326 or #609 work for your use case?

<details>
<summary>Alternate/standalone workarounds</summary>
If not, there are a few projects on GitHub to do this globally, by using the Pipewire API to toggle the entire mic. <a href="https://github.com/cyrinux/push2talk">Push2talk</a> is quite polished, but does not currently support binding mouse buttons. I ended up kludging a <a href...

simple groveBOT
simple groveBOT
vernal lintel
#

master yapper

#

this is why I usually lock issues after close

#

(the icon issue)

#

the other one is fine the hyperlandrs can figure their problems out collectively

hybrid fjord
simple groveBOT
simple groveBOT
simple groveBOT
simple groveBOT
#

Doesn't appear to be working on Hyprland or wayland in general. I can't even start the instance. Here's the full stack trace if that helps:

thread '<unnamed>' panicked at src/lib.rs:16:44:
called `Result::unwrap()` on an `Err` value: Message("todo")
stack backtrace:
   0:     0x7e1f3eae23d5 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h3692694645b1bb6a
   1:     0x7e1f3eb0661b - core::fmt::write::h5131d80b4c69b88d
   2:     0x7e1f3eadff8f -...
hybrid fjord
#

yeah err messages "TODO" is really what will help

simple groveBOT
scenic hollow
humble mortar
humble mortar
hybrid fjord
humble mortar
#

I think an implementation like so would work & be modular so if hyprland users want to they could pr their protocol support

Linux:

  • X11
    Venbind itself listens for button presses as X11 exposes this to all apps
  • Wayland:
    • GlobalShortcuts protocol
    • Gnome via registering binds with gsettings/dbus
    • Hyprland protocol (not rly required)
      Windows:
  • Idk cope
    Darwin:
  • iirc macos uses x11 so it's prob similar if not the same to linux x11
    Venbind Arg:
  • venbind --keybind <id>
  • All platform
  • Non explicitly supported linux Wayland des can use this by binding keys to the command

Main Venbind process would interact with each element depending on detected support

#

While writing this i found https://github.com/tauri-apps/global-hotkey/

Seems to have most of the work done (also rust so :p) Why not just fork add the needed Wayland elements(ofc upstream) & add the node bindings @scenic hollow

scenic hollow
#

that doesn't support wayland and i think it doesn't support ptt

#

wait i can't read

#

but still i don't think it supports ptt

#

and by the looks of things bolting on wayland support is probably gonna require waayyy more than upstream is willing to change

scenic hollow
#

oh

scenic hollow
humble mortar
humble mortar
scenic hollow
#

still tho we are using libuiohook in venbind i don't think mac and windows would be particularly hard either ways

scenic hollow
humble mortar
#

mhm

scenic hollow
humble mortar
#

flatpak is cope anyway (arrpc process scanning doesnt work)

#

just dont use flatpak if u dont want global hotkeys on gnome

#

could also just tell gnome users to cope and wait for the portal to be merged on their side

#

flatpak's libportal doesnt even support GlobalShortcuts yet

scenic hollow
#

oh yeah no it doesn't

#

even kde's impl is kinda garbage

humble mortar
#

i say atp just go for minimum support

#

raw dbus GlobalShortcut impl

scenic hollow
#

technically ashpd (the rust library for xdp) supports it

#

so it's fine

humble mortar
#

oh easy peasy

#

oh they have a flatpak demo interesting

scenic hollow
#

that doesn't have global shortcuts

#

there is a pr for it though

#

it's made by the same guy that made the global shortcuts api for gnome

humble mortar
#

just the demo is missing it not ashpd itself?

scenic hollow
#

yeah

humble mortar
#

ok so that works then

#

minimum wayland support with ashpd then

#

what've you done locally?

scenic hollow
humble mortar
#

is it using the caption or desktopFileName or something?

#

try setting the static title to rule out caption

scenic hollow
#

although now that you mention it i am not using the window handle thing in the api

#

but apparently it's only supposed to be used for dialog positioning it shouldn't use that

humble mortar
#

try to manually register a shortcut with dbus-send or gdbus to rule out an ashpd issue

scenic hollow
humble mortar
#

whats the command u were using?

scenic hollow
#

i was making a rust program with zbus lol

humble mortar
#

horror

scenic hollow
#

no because

humble mortar
#

u sure u used all the right args?

scenic hollow
# scenic hollow no because

xdp has a thing where you have to have subscribed to a "request" signal before you make an actual request so it's kinda annoying to have to do all that in shell

scenic hollow
scenic hollow
humble mortar
#

it creates a new session every launch yeah

#

it seems to enerate a random id

#

also since i set "lowercase_G" as the bind it eats the key lol (normal settins ui doesnt allow that u need a modifier)

humble mortar
#

wait

#

@scenic hollow do u have to call create session every time?? cant u just store the session token

scenic hollow
#

and apparently you aren't supposed to and it probably won't work

#

i haven't tested it though

humble mortar
#

gujjhhh

scenic hollow
#

yeah i think we'd have to bug the kde people about it

humble mortar
#

WTF is free smiley dealer

#

maybe ping him in that thread

#

or email or twitter dm

scenic hollow
#

i'll see if i can email him

scenic hollow
scenic hollow
#

it doesn't ok emailing now...

humble mortar
simple groveBOT
simple groveBOT
#

Content

Hi,

After installing Vencord on my Windows computer, I noticed that the window snapping functionality for Discord is no longer working. Specifically, I am unable to drag the Discord window to the left or right side of the screen to automatically resize and dock it. This is a standard feature in Windows, where dragging a window to the screen's edge resizes it to fit that side, but with Vencord installed, this functionality seems to be disabled for Discord.

**Steps to Reprodu...

vernal lintel
#

in vesktop repo wires

hybrid fjord
simple groveBOT
humble mortar
hybrid fjord
humble mortar
#

nono venmic on windows

hybrid fjord
#

explode

upper pine
vernal lintel
#

LMAO

#

I told her to put that

simple groveBOT
humble mortar
simple groveBOT
humble mortar
#

@hybrid fjord theres def something funky with joining/vcs & the tray

hybrid fjord
#

Bruh

humble mortar
#

its seemingly random idk 😭

hybrid fjord
hybrid fjord
#

Lol can you please add simple log calls to print "State changed to state and so on? And when you catch something again we can check it and try to reproduce

humble mortar
#

send me a patch file

simple groveBOT
simple groveBOT
humble mortar
humble mortar
#

it would be so cool if someone reviewed some prs

#

🦧

next sundial
simple groveBOT
simple groveBOT
simple groveBOT
#

Discord Account

t0x1c_ch3m1ca1s

Operating System

Linux mint

Linux Only ~ Desktop Environment

Kde

Package Type

Flatpak

What happens when the bug or crash occurs?

bug happens just by using vencord,

What is the expected behaviour?

it only has options for input such as: HDA intel PCH, ALC255 Analog-Default Audio device, HDA intel PCH, Alc255 Analog-Front output / input, and HDA Intel PCH-USb Stream Output. I use my internal mic. Vencord does not detect Intern...

simple groveBOT
#

Discord Account

No response

Operating System

Arch Linux

Linux Only ~ Desktop Environment

Hyprland on Wayland

Package Type

AUR (vesktop-bin)

What happens when the bug or crash occurs?

When I use screen share with the default resolution and fps everything is alright, however when I enable the fake nitro plugin and try higher resolution or/and higher fps, the stream is black. As mentioned in the DO NOT REPORT, this is not a system issue of screen sharing, but a plu...

humble mortar
#

another hyprland screen share issue 🦧

sudden trout
#

I tried to reproduce the hyprland issues and it works fine on both the aur build and flatpak so they probably fucked up the portals or smth

vernal lintel
simple groveBOT
simple groveBOT
simple groveBOT
#

Had the same problem on Ubuntu with X11 and PulseAudio. Not sure if this could help for troubleshooting. I have an Intel 11th gen cpu (i7-11700) and an Amd graphics card(6650 xt) on a Dell motherboard (not sure the model). The vesktop version was up to date and not altered by any customization script i could have added. I used it as downloaded. Both vesktop and videogame suffered for massive fps drops when screensharing was active(less than 20 fps for both).

I now switched for Fedora so i ...

hybrid fjord
hot juniper
next sundial
#

VolumeBooster doesn't seem to work for Vesktop ( #plugin-news )

#

tested with 1000% and didn't notice any difference

hybrid fjord
next sundial
heady merlin
#

does it really not work...

simple groveBOT
simple groveBOT
hybrid fjord
vernal lintel
#

yeah it doesnt work on vesktop

#

did u even test 😭 @heady merlin

simple groveBOT
#

Discord Account

totetosh

Operating System

Windows 10

Linux Only ~ Desktop Environment

No response

Package Type

Setup exe

What happens when the bug or crash occurs?

Vesktop doesn't show current activity to friends.

What is the expected behaviour?

Show current activity, like what game am I playing, to my friends.

How do you recreate this bug or crash?

I start the game and the activity isn't there.

Debug Logs

[arRPC > ipc] listening...
simple groveBOT
#

Discord Account

TheStreamer

Motivation

i cant open the app in 2 separate widnows (from 2 separate folders) to use 2 different account .
when i open one then try to open the second its jump to the opened one.
if i open 1 then close it then open the 2nd it works fine.
please provide this feature .

Solution

..

Alternatives

..

Additional context

..

Request Agreement

  • [X] I have searched the existing issues and found no similar issue
  • [X] This is not a ...
heady merlin
#

never imagined vesktop would act different

grizzled hemlock
heady merlin
#

uhj

#

ugh

grizzled hemlock
#

Nop

grizzled hemlock
heady merlin
#

I'll merge later along with more

grizzled hemlock
simple groveBOT
#

I've heard people say to me that my mic is cutting off when I'm talking so
I don't think it's only the case for mic test

On Tue, Aug 27, 2024, 8:27β€―PM lew @.***> wrote:

How strange, also seems to be the case here

β€”
Reply to this email directly, view it on GitHub
https://github.com/Vencord/Vesktop/issues/795#issuecomment-2313135564,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BCKKYJ3WA3RHW445D5CWM6LZTSZHHAVCNFSM6AAAAABL6IZZTWVHI2DSMVQWIX...

next sundial
#

btw VolumeBooster plugin option is technically incorrect on Vesktop: it asks for volume multiplier, and default is 2, but it considers 200%, whereas Vesktop (Discord web) only allows 100%

the default being 2 would imply you would get up to 200%, but instead you get 400% on Vesktop

#

I think a copy of the VolumeBooster plugin could be made as a required plugin for Vesktop users, and its only function would be to allow up to 200%

then, if the user enables the main VolumeBooster plugin for extra volume above 200%, we automatically disable this Vesktop-only plugin internally

#

I read that for it to work it requires patches from VolumeBooster; my idea is a mini-version of it only for Discord web so it doesn't interfere with the main plugin

grizzled hemlock
#

sounds too complicated tbh
does it really matter that much

next sundial
# grizzled hemlock sounds too complicated tbh does it really matter that much

does it really matter that much

1- enabling by default for Vesktop users? yes

2- fixing the inconsistency between multiplier value? not so much; a way to solve it would be to make the minimal multiplier value 2, so it's always 200% even with the lowest multiplier (then values would be 2, 3, 4, 5, 6, 7, 8, 9, 10)

vernal lintel
#

or better solution get rid of the multiplier cause it's confusing

#

instead make a slider

#

maximum volume %

#

you can set anything from 200% to 1000%

#

default 400%

#

people will love 1000%

next sundial
#

^ fine by me, good idea too

#

if we set default 200% we would be able to make it enabled by default on vesktop

#

but then it wouldn't make sense as the plugin's default

grizzled hemlock
#

i think 400 is a fine default for all platforms

next sundial
#

I dunno, I feel this may be a little too high by default, and was thinking about 300

#

but, yeah, whatever, 400 seems fine too

#

we could also make volumebooster enabled by default even for normal vencord

grizzled hemlock
next sundial
#

yep, I know that

#

I was thinking in the fact that we will mess up people's muscle memory that just set slider to the max thinking it will go up to 200%

#

the problem of needing this on Vesktop would still be a problem

#

a possible solution would be to mark the volumebooster plugin as required

#

even if it is somewhat a lie, it solves the problem

grizzled hemlock
#

!remind 4.5d volume booster slider

small lionBOT
#

Alright @grizzled hemlock, in 5 days: volume booster slider

simple groveBOT
hot juniper
hot juniper
grizzled hemlock
#

It’s not web

#

Vesktop has is veskrop

hot juniper
#

This is a 3 line "fix"

cyan flame
#

IS_WEB | IS_VESKTOP | IS_DESKTOP

sterile osprey
#

so no IS_DESKTOP

simple groveBOT
humble mortar
simple groveBOT
simple groveBOT
#

This same exact thing is happening to me
System Info
OS: EndevourOS
Desktop: Hyprland (Wayland)
XDG Desktop Portal: Hyprland
GPU: Nvidia RTX 4070
Vesktop Version: 1.5.3

`[11283:0902/120952.547443:ERROR:interface_endpoint_client.cc(722)] Message 6 rejected by interface blink.mojom.WidgetHost
[11283:0902/120952.547466:ERROR:interface_endpoint_client.cc(722)] Message 7 rejected by interface blink.mojom.WidgetHost
[11321:0902/120952.631968:ERROR:angle_platform_impl.cc(44)] ImageEGL.c...

#
hybrid fjord
simple groveBOT
simple groveBOT
simple groveBOT
simple groveBOT
humble mortar
# simple grove

how does one even find this issue and comment but NOT find the other closed invalid won't fix one with "registered games" in the title 😭😭

hybrid fjord
#

And explode

humble mortar
#

be normal and clear the default filters

simple groveBOT
hybrid fjord
#

xddd

simple groveBOT
#

Discord Account

No response

Operating System

Windows 11

Linux Only ~ Desktop Environment

No response

Package Type

Setup

What happens when the bug or crash occurs?

Whenever i open Vesktop i only get a white screen and nothing happens.

What is the expected behaviour?

to open normally

How do you recreate this bug or crash?

  1. Search for Vesktop
  2. Click on it
  3. Get a white screen

Debug Logs

Failed to parse Vesktop state.json: SyntaxError: U...

simple groveBOT
#

Discord Account

No response

Operating System

Archlinux

Linux Only ~ Desktop Environment

KDE Plasma 6.1.4

Package Type

AUR/tar.gz

What happens when the bug or crash occurs?

Try screensharing Crab Rave on youtube. Screensharing works but there is no audio. I have tested in other videos and games as well.

What is the expected behaviour?

People can hear crab rave or game audio

How do you recreate this bug or crash?

  1. Screenshare
  2. Go on youtube.com
    3...
simple groveBOT
simple groveBOT
#

Discord Account

superzekes

Operating System

CachyOS 6.9.9

Linux Only ~ Desktop Environment

Gnome with Wayland

Package Type

Flatpak

What happens when the bug or crash occurs?

When I screenshare the screenshare preview looks just fine on my end but my friends said the colors look very messed up. As if they went color blind in a way, same thing with my camera.

What is the expected behaviour?

I expected that the colors on the page would be what they are and I ha...

simple groveBOT
simple groveBOT
simple groveBOT
simple groveBOT
#

Discord Account

arsimael

Operating System

Arch Linux

Linux Only ~ Desktop Environment

Plasma 6 on Wayland

Package Type

Flatpak

What happens when the bug or crash occurs?

Regular usage of vesktop. No spechialities

What is the expected behaviour?

A clear and understandable Audio connection.

How do you recreate this bug or crash?

  1. Open Vesktop
  2. Connect to any Audio channel or even giong to the settzings and doing a "self test"
  3. hearing very bad au...
simple groveBOT
#

Discord Account

No response

Motivation

Teamspeak 3 had a very useful feature where you could position users around in a virtual 2D top-view space, making individual audio sources easier to distinguish in big crowds of users. They marketed it as 3D audio.

Solution

A simple implementation that would position user audio sources around the listener on fixed angle intervals would be good enough.

Alterna...

vernal lintel
#

insane

simple groveBOT
humble mortar
#

I am in your left ear canal

simple groveBOT
simple groveBOT
hybrid fjord
#

note that problems are always with nobara))

#

i don't know what they cooked

simple groveBOT
simple groveBOT
hybrid fjord
#

yeah youre welcome

simple groveBOT
simple groveBOT
simple groveBOT
compact frigate
#

you love randoms approving prs

vernal lintel
small lionBOT
#

@grizzled hemlock, <t:1725247777:R>: volume booster slider

simple groveBOT
tired oak
#

I tried to avoid it but ofc someone needs something on an old distro

cyan flame
tired oak
simple groveBOT
simple groveBOT
humble mortar
simple groveBOT
#

Discord Account

No response

Operating System

fedora 40-based

Linux Only ~ Desktop Environment

kde

Package Type

flatpak

What happens when the bug or crash occurs?

clicking "edit server profile" goes to "user profile"

What is the expected behaviour?

open server-specific profile settings

How do you recreate this bug or crash?

click on your username in chat to enter the profile menu.

Debug Logs

Replace this text with your crash-log. Do not rem...
small lionBOT
#

@grizzled hemlock, <t:1725679937:R>: volume booster slider

simple groveBOT
tired oak
#

love debian 12 02heart

simple groveBOT
#

@zoobporsor just start vesktop with the --enable-blink-features=MiddleClickAutoscroll as provided by pointydev.

If launching from terminal, just add it as an argument.

To launch vesktop with autoscroll from desktop, just add the argument to the desktop entry. For KDE just rightclick on the vesktop entry when you search it up > edit application > application > add the argument to the "Arguments" menu entry. Steps should be similar for other desktop environments.

grizzled hemlock
#

wait you can do that

#

i love

hot juniper
hot juniper
grizzled hemlock
#

idfk never used swift

#

lang of the devil

simple groveBOT
#

Discord Account

kode54

Operating System

Arch Linux

Linux Only ~ Desktop Environment

Wayfire

Package Type

AUR vesktop-bin

What happens when the bug or crash occurs?

When streaming my desktop, I can enable audio capture of an application, which then triggers two desktop selection popups with xdg-desktop-portal, but begins audio capture. However, if I use the desktop selector to disable audio capture by leaving it at the default setting of "None", it continues to cap...

simple groveBOT
simple groveBOT
grizzled hemlock
#

is there a reason why a native module isnt used for keybinds like venmic

scenic hollow
grizzled hemlock
scenic hollow
#

maybe for windows and mac yeah

#

there is already a pr for wayland and i've implemented x11

grizzled hemlock
#

oh god id need to learn rust

scenic hollow
grizzled hemlock
#

@scenic hollow what is your env for dev work on it

scenic hollow
#

uhhh the devenv.nix file in the root technically but that needs nix and everything

grizzled hemlock
#

you want windows support, right

#

im working on this on my window laptop

scenic hollow
#

without the devenv.nix i think you'd need at least libclang and cmake and whatever else libuiohook requires

grizzled hemlock
#

do you know what this error is

   Compiling uiohook-sys v0.1.0 (C:\Users\meyer\dev\venbind\uiohook-sys)
warning: venbind@0.0.2: downloading nodejs: https://nodejs.org/dist/v22.7.0/win-x64/node.lib to: "C:\\Users\\meyer\\AppData\\Local\\Temp\\node_bindgen_build_1725864378804906200\\node-v22.7.0.lib"
error: failed to run custom build command for `uiohook-sys v0.1.0 (C:\Users\meyer\dev\venbind\uiohook-sys)`

Caused by:
  process didn't exit successfully: `C:\Users\meyer\dev\venbind\target\debug\build\uiohook-sys-10e0cc4c3b1473a2\build-script-build` (exit code: 101)
  --- stdout
  cargo:rerun-if-changed=build.rs
  CMAKE_TOOLCHAIN_FILE_aarch64-pc-windows-msvc = None
  CMAKE_TOOLCHAIN_FILE_aarch64_pc_windows_msvc = None
  HOST_CMAKE_TOOLCHAIN_FILE = None
  CMAKE_TOOLCHAIN_FILE = None
  CMAKE_GENERATOR_aarch64-pc-windows-msvc = None
  CMAKE_GENERATOR_aarch64_pc_windows_msvc = None
  HOST_CMAKE_GENERATOR = None
  CMAKE_GENERATOR = None
  CMAKE_PREFIX_PATH_aarch64-pc-windows-msvc = None
  CMAKE_PREFIX_PATH_aarch64_pc_windows_msvc = None
  HOST_CMAKE_PREFIX_PATH = None
  CMAKE_PREFIX_PATH = None
  CMAKE_aarch64-pc-windows-msvc = None
  CMAKE_aarch64_pc_windows_msvc = None
  HOST_CMAKE = None
  CMAKE = None
  running: "cmake" "C:\\Users\\meyer\\dev\\venbind\\uiohook-sys\\vendor" "-G" "Visual Studio 17 2022" "-Thost=x64" "-AARM64" "-DUSE_XINERAMA=OFF" "-DUSE_XTEST=OFF" "-DUSE_XT=OFF" "-DCMAKE_INSTALL_LIBDIR=lib" "-DCMAKE_INSTALL_PREFIX=C:\\Users\\meyer\\dev\\venbind\\target\\debug\\build\\uiohook-sys-00a93a85133c08e0\\out" "-DCMAKE_C_FLAGS= -nologo -MD -Brepro" "-DCMAKE_C_FLAGS_DEBUG= -nologo -MD -Brepro" "-DCMAKE_CXX_FLAGS= -nologo -MD -Brepro" "-DCMAKE_CXX_FLAGS_DEBUG= -nologo -MD -Brepro" "-DCMAKE_ASM_FLAGS= -nologo -MD -Brepro" "-DCMAKE_ASM_FLAGS_DEBUG= -nologo -MD -Brepro" "-DCMAKE_BUILD_TYPE=Debug"

  --- stderr
  CMake Warning:
    Ignoring extra path from command line:

     "C:\Users\meyer\dev\venbind\uiohook-sys\vendor"


  CMake Error: The source directory "C:/Users/meyer/dev/venbind/uiohook-sys/vendor" does not appear to contain CMakeLists.txt.  
  Specify --help for usage, or press the help button on the CMake GUI.
  thread 'main' panicked at C:\Users\meyer\.cargo\registry\src\index.crates.io-6f17d22bba15001f\cmake-0.1.50\src\lib.rs:1098:5: 

  command did not execute successfully, got: exit code: 1

  build script failed, must exit now
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
PS C:\Users\meyer\dev\venbind> 
#

when i run cargo build

scenic hollow
#

oh you need to clone with submodules

#

do git submodule update --init

grizzled hemlock
#

how do you load a dev version of this into vesktop

scenic hollow
#

i usually do the test in lib.rs

#

cargo test

#

wait

#

cargo test -- --nocapture

grizzled hemlock
#

also got this error

scenic hollow
#

right that's the file you have to implement

#

yeahh there is a lot you have to go through to get things running

grizzled hemlock
#

where does this file name come from

scenic hollow
#

in uiohook_sys/build.rs

#

you might not need the helper bindings though

grizzled hemlock
#

fun fact

#

ive never used rust before

scenic hollow
#

ik 😭

grizzled hemlock
#

ill sleep now and do this tomorrow

simple groveBOT
#

Discord Account

No response

Operating System

Artix Linux Openrc

Linux Only ~ Desktop Environment

Hyprland

Package Type

Flatpak

What happens when the bug or crash occurs?

On startup

What is the expected behaviour?

Vesktop to open

How do you recreate this bug or crash?

  1. Try opening Vesktop
  2. Fail

Debug Logs

[user@artix ~]$ flatpak run dev.vencord.Vesktop
Wayland socket is available, running natively on Wayland.
To disable, remove the -...
simple groveBOT
#

@rbutera Since you mention Hyprland: they have support for the pass dispatcher, which you can use. See also https://github.com/hyprwm/Hyprland/issues/2072

Thanks @cpiber i was able to get discords official push to talk working using the pass dispatcher.

For some reason Vesktop doesnt respond to push to talk even if I'm using that dispatcher. I can bind the key in voice/video but even if Vesktop is focused I can't get my mic to activate.

@tuxinal do you think your work will be relevant ...

simple groveBOT
simple groveBOT
#

Content

Updates from pisscord regularly break vencord entirely. It becomes extremely cumbersome to open pisscord as often as once or even twice a day and see that vencord has broken because pisscord has updated itself.

As we can't prevent pisscord from updating please I beg, put special attention into allowing the linux installations of vencord to be updated automatically. It should be simple enough to at least script in a hook that when pisscord has updated, vencord will itself updat...

simple groveBOT
simple groveBOT
#

The only thing I noticed is that equalizer apo effects don't work in chrome-based browsers when everything works in the same firefox

In which case, you should report the issue to the Equalizer APO developers and see if it's an issue with them or with Chromium. Discord uses a native module to handle voice, so that's most likely the reason why you aren't experiencing issues on the official client.

simple groveBOT
#

Discord Account

Zsolt1000_II

Motivation

everytime i wanna minimize Vesktop, i would move my mouse, go to right and up corner very fast and click
it not going to close, its going to change size of Vesktop

https://github.com/user-attachments/assets/8cd594e4-f60a-4cf2-9d09-93134dd5ad8c

Solution

An options to disable "change Vesktop window size" in Vesktop setting.

Alternatives

make "X" hitbox bigger.

Additional context

if its old chromium's problem, im so sor...

simple groveBOT
humble mortar
scenic hollow
#

i did and i was told to make a bug report

#

-# i haven't done that yet huskfluent

#

apparently my kde portal's version is ancient i'm gonna try updating before doing that

scenic hollow
#

nop made it update

#

...and nothing changed currently making the bug report

simple groveBOT
#

I have determined that it's slightly different from what I originally posted.

It doesn't have anything to do with restarting the stream or not. Instead, it has to do with the audio source selector remembering what was last selected. It will still stay on the last app source selected, but upon opening the dialog again, the visible selection will always say "None". I have to manually select something else, such as the current selection, then select "None" again, to disable audio streaming.
...

humble mortar
#

@sly cairn are you sure flatpak supports wildcards in the --filesystem arg

#

--filesystem=xdg-run/discord-ipc-* doesnt work but --filesystem=xdg-run/discord-ipc-0 does

sly cairn
#

it should

#

because its wroked for others

#

try putting it in quotes

humble mortar
#

nop

#

google says * wildcards arent supported

simple groveBOT
simple groveBOT
#

@zoobporsor just start vesktop with the --enable-blink-features=MiddleClickAutoscroll as provided by pointydev.

If launching from terminal, just add it as an argument.

To launch vesktop with autoscroll from desktop, just add the argument to the desktop entry. For KDE just rightclick on the vesktop entry when you search it up > edit application > application > add the argument to the "Arguments" menu entry. Steps should be similar for other desktop environments.

Even bette...

simple groveBOT
#

This all looks really good - will it come to the binary releases sometime soon? I'm looking forward to this - it's the biggest thing I'm missing when moving from discord to vesktop, because I disable the noise and pop-outs of notifications, so having the tray icon with a red dot is pretty-much how I know to go check what's going on

Also not a fan of the VC tray icon - it's, imo, not clearly identifiable enough (easy to scan) - an artifact, probably, of an icon which works ok at larger size...

#

Discord Account

@themarlstar

Operating System

Windows 11 Pro

Linux Only ~ Desktop Environment

No response

Package Type

Setup executable (through winget)

What happens when the bug or crash occurs?

When I have sized the vesktop window as part of a splitscreen, clicking on a desktop notification for a received message focuses the window as expected but also resizes the window. The window changes back to the size it was before becoming a splitscreen tile. This only ...

upper pine
sterile osprey
#

idk gotta ask @tired oak for that

upper pine
#

Maybe we should provide two npm packages and have vesktop try the non static one first before falling back to the static one

sly cairn
#

i dont really like the people behind equicord

#

i get its an open source project and whatnot but they kinda just include a bunch of in-dev PRs and ship it as an "extended" mod when a lot of the PRs are still work in progress or unstable

#
  • i dont think they even ask the people who authored the PRs for permission
#

they can technically do it since the contributions are under GPL, but they should be asking for permission since the authors were contributing to vencord, not equicord

sly cairn
#

the vesktop flatpak was a redo of it

#

oh, you meant the asterisk in the readme?

#

no you're meant to replace that with the ipc number

humble mortar
sly cairn
#

i think its meant to be that anyway

#

it was from the armcord docs xd

humble mortar
#

also theres some patches like a setting for the middle click auto scroll launch arg

sly cairn
#

the patches are fine if they wrote them themselves, i wish they PRed them upstream though

#

we might just end up rewriting them ourselves if needed and they're useful

#

but the main issue is the taking of other people's PRs

humble mortar
sly cairn
#

funny

sly cairn
#

theo nly difference is the misc section, because they changed how the settings ui worked

#

but also its too small to justify it as "yes they copied it"

humble mortar
sly cairn
#

with static you have to link the entirety of libstdc++ even if its installed on the host machine, and we still have to link against glibc separately

#

curve however did say on the original PR we could either ship a working libstdc++ separately or as he just said here we can provide two packages

upper pine
#

Thats why we should either use two packages or we can try some shared library shenanigans

tired oak
tired oak
tired oak
#

In general I don't care for equicord its a project I picked up because I was bored

#

I would leave but no one else would dev it and if I eol it I would need another test project

sly cairn
tired oak
#

I don't plan on being the main dev for equicord for much longer invalid now

#

its whoever wants it to figure out

upper pine
tired oak
#

alr thanks

simple groveBOT
#

I am trying to make the dock icon more appealing for my personal desktop style.

Is there any app ID that can be used to replace the Vesktop app icon in the GNOME launcher and dock?

I am aware that icon themes on Linux can replace app icons, but I really don't know much about it and whether it would properly replace the app icon when the app is running too.

In general, the path is something like this: ~/.local/share/icons/hicolor/512x512/apps/vesktop.svg but again, I don't know enou...

#

Discord Account

No response

Motivation

I'd like to install Vesktop for my 70 year old mother, but there's no way that she can keep up with installing .rpm files manually.

Solution

Is there any chance of creating a Fedora COPR repo? It's possible to make web-hooks that build such a repo's RPM file automatically from the latest source code after every release, for example:

https://copr.fedorainfracloud.org/

Then Fedora users can run the following commands:

sud...
simple groveBOT
vernal lintel
#

damn 70yo

#

the seniors are discovering vesktop

#

😎

simple groveBOT
simple groveBOT
#

Hmm okay, that's surprising. I wouldn't have thought that Vesktop could update itself when it's installed to a system (read-only) location.

Hopefully the app container itself auto-updates, not just the internal web code. Since Electron exploits can appear over time and it's important to have an updated app runtime binary (Electron Chrome Sandbox).

I guess I'll wait and find out if that works. :)

Glad to see that the temp file issue was fixed by the way. Thanks! :)

#

I read the https://www.electron.build/auto-update page now and it seems like it behaves exactly as I feared: Updates the internal HTML/JS/CSS but doesn't update the Electron runtime.

That's only solvable by setting up a repo such as COPR. Which can be done via GitHub web hooks so that anytime a release is tagged here at Vesktop, it fetches the source code and makes a RPM automatically.

If security matters to Vesktop, I would suggest considering that.

grizzled hemlock
simple groveBOT
#

Discord Account

No response

Motivation

Currently, Vesktop does not register itself to handle Discord links, so the browser won't offer to open Vesktop instead.

I am not sure if this can be solved.

Solution

The required MIME type for "Open in Discord App" support can be added with this command:

sudo desktop-file-edit --add-mime-type=x-scheme-handler/discord /usr/share/applications/vesktop.desktop

That command adds the following line to the .desktop fil...

simple groveBOT
#

So is it possible to change the taskbar/notification area Icon to actually resemble Discord, or not?

Yes it's possible, on Linux. As follows:

It will change the launcher icon and taskbar/dock icon.

It will not change the notification area icon (but that feature is coming to Vesktop itself later, as the 1st post in this thread explains).

It ...

simple groveBOT
#

Discord Account

No response

Operating System

Fedora 40

Linux Only ~ Desktop Environment

Gnome on Wayland

Package Type

RPM

What happens when the bug or crash occurs?

Vesktop is misconfigured internally to disable Game Activity by default.

What is the expected behaviour?

Since Vesktop defaults to enabling "Rich Presence", it is strange that the actual "Game Activity" is blocked by default.

How do you recreate this bug or crash?

  1. Everyone has been try...
simple groveBOT
#

@AutumnVN Oh thank you for that information! I was actually looking for something like that but didn't find it. And now I know why I didn't see that setting!

When troubleshooting this, I searched for "Rich Presence" in the Settings search box. Which brought up this result with NOTHING else in the panel:

image

To see the setting you mentioned, the user cannot use the search box and must go to it manual...

#

I read the https://www.electron.build/auto-update page now and it behaves exactly as I feared: It only updates the internal HTML/JS/CSS but doesn't update the Electron runtime (so /opt/Vesktop/chrome-sandbox never gets security fixes). Which will then stagnate over time and have exploits.

it updates the entire app

I just found absolute confirmation that this ticket should be reopened:
https://www.electronjs.org/docs/latest/api/auto-updater

this is not what vesktop uses.