Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue tracker for Full GNOME 46 support #271

Open
3 of 4 tasks
Totto16 opened this issue Mar 30, 2024 · 56 comments
Open
3 of 4 tasks

Issue tracker for Full GNOME 46 support #271

Totto16 opened this issue Mar 30, 2024 · 56 comments
Assignees
Labels
enhancement New feature or request Priority High Priority High

Comments

@Totto16
Copy link
Collaborator

Totto16 commented Mar 30, 2024

Since #264 adds support for gnome 46 it should be good in terms of GJS changes, but while working on #265 I noticed some changes in the gnome-shell UI libraries, we also use. There are some changes that I, and presumably others didn't notice, since e.g. Source from here doesn't have showNotification anymore since GNOME 46, but it's called addNotification. But the types suggested it before, so while fixing types over at https://github.com/gjsify/gnome-shell we should check, if we need to change more types to check for gnome 45 / 46 compatibility at runtime.

Task list:

Optional:

@Totto16 Totto16 added the enhancement New feature or request label Mar 30, 2024
@Totto16 Totto16 self-assigned this Mar 30, 2024
@Totto16 Totto16 added the Priority High Priority High label Mar 30, 2024
@RushingAlien
Copy link

I would like to add that due to direct scanout for full screen windows under Wayland, pano will fail do display when a window is fullscreen, the solution for this is using Meta.disable_unredirect_for_display() when the pano dialog/panel pops up. References on how to do this can be found in G-dH/window-thumbnails@bb87507 and icedman/search-light@25b43ea.

This is only needed until GNOME supports overlay planes which will allow layered and non-fullscreen direct scanout.

Note from window-thumbnail dev about disable_unredirect: G-dH/window-thumbnails#7 (comment)

@Totto16
Copy link
Collaborator Author

Totto16 commented Apr 1, 2024

I would like to add that due to direct scanout for full screen windows under Wayland, pano will fail do display when a window is fullscreen, the solution for this is using Meta.disable_unredirect_for_display() when the pano dialog/panel pops up. References on how to do this can be found in G-dH/window-thumbnails@bb87507 and icedman/search-light@25b43ea.

This is only needed until GNOME supports overlay planes which will allow layered and non-fullscreen direct scanout.

Note from window-thumbnail dev about disable_unredirect: G-dH/window-thumbnails#7 (comment)

Thanks for the suggestion 👍🏼 I will test that and also fix it 👍🏼

@marcinjahn
Copy link

@Totto16 The README mentions Gnome 46 as being supported, while EGO is still on Gnome 45. I assume that I could just get the latest zip from Releases and it will work on G46, right? It seems that the only "issue" there is highlight.js still being embedded.

@Totto16
Copy link
Collaborator Author

Totto16 commented May 3, 2024

@marcinjahn Correct, the "issue" with highlight.js is, that EGO doesn't want to have that too much third party dependencies in published extensions. So The master branch fully supports GNOME 46, but for a release on EGO I have to complete #278 (which might take some time).

To install it locally, follow the steps here

You have to download the latest files from the master branch tough, the latest release doesn't support gnome 46 yet and we didn't make a new release yet 😓

@marcinjahn
Copy link

Sure, thanks for the clarification!

@theGeekyLad
Copy link

Does this issue also pertain to GNOME 46.1 (currently breaking)?

@Totto16
Copy link
Collaborator Author

Totto16 commented May 5, 2024

Does this issue also pertain to GNOME 46.1 (currently breaking)?

Not really, this is mainly for Gnome 46.0 support (and the EGO release for that) .

That said, just open a new issue with the exact details and I'll look into it separately. The EGO topic might take a while.
But fixing compatibility for gnome 46.1 would take a higher priority.

This is really interesting, since minor releases shouldn't break anything, but I'm not surprised, gnome 45.3 broke some things too 🤦🏼‍♂️

@oae
Copy link
Owner

oae commented May 6, 2024

I tested the master branch on 46.1 and saw no issues.

@Totto16
Copy link
Collaborator Author

Totto16 commented May 6, 2024

I tested the master branch on 46.1 and saw no issues.

Interesting, then he probably meant the public EGO release 😓
Or am I wrong @theGeekyLad

@talesam
Copy link
Contributor

talesam commented May 9, 2024

Testei a filial principal em 46.1 e não vi problemas.

I am one of the Biglinux Devs and I take care of the Gnome version, it is on 46.1 and is based on Manjaro and it is not working, it says that the extension is not compatible with version 46.1

@Totto16
Copy link
Collaborator Author

Totto16 commented May 9, 2024

Testei a filial principal em 46.1 e não vi problemas.

I am one of the Biglinux Devs and I take care of the Gnome version, it is on 46.1 and is based on Manjaro and it is not working, it says that the extension is not compatible with version 46.1

The version on EGO doesn't yet support 46 due to some concern on some third party libraries from the side of the EGO reviewers, we are working on that, see #278

but you can self "compile" (transpile) the master branch and than it works

@Malix-Labs
Copy link

Is there an ETA as of when pano will be available for Gnome 46 ?

@Totto16
Copy link
Collaborator Author

Totto16 commented May 20, 2024

Is there an ETA as of when pano will be available for Gnome 46 ?

I have started to do the needed work, quite a while ago, (see #278 ) but I had some "more important" things to do, so I didn't have time for quite a while, I can use the extension by self building it so it also climbed down my priority list 😓 (which is kinda egostic and not a good excuse 😓 ).

I see that there is "high" demand and that Gnome 46 is out on many distros for a while (almost a month on Ubuntu, Fedora etc.)
So I am trying my best to schedule the needed work for as soon as possible 😓

@logicito
Copy link

Is there an ETA as of when pano will be available for Gnome 46 ?

I have started to do the needed work, quite a while ago, (see #278 ) but I had some "more important" things to do, so I didn't have time for quite a while, I can use the extension by self building it so it also climbed down my priority list 😓 (which is kinda egostic and not a good excuse 😓 ).

I see that there is "high" demand and that Gnome 46 is out on many distros for a while (almost a month on Ubuntu, Fedora etc.) So I am trying my best to schedule the needed work for as soon as possible 😓

Thank you very much, there is no better clipboard manager than Pano

@daethlor
Copy link

@marcinjahn Correct, the "issue" with highlight.js is, that EGO doesn't want to have that too much third party dependencies in published extensions. So The master branch fully supports GNOME 46, but for a release on EGO I have to complete #278 (which might take some time).

To install it locally, follow the steps here

You have to download the latest files from the master branch tough, the latest release doesn't support gnome 46 yet and we didn't make a new release yet 😓

On 24.04, when trying to self build I get:

00h00m00s 0/0: : ERROR: [Errno 2] No such file or directory: 'install'
00h00m00s 0/0: : ERROR: [Errno 2] No such file or directory: 'build'

Would love to have even partial usability on 24.04 at this point.

@back-lacking
Copy link

is there an eta on gnome 45/46 support or is it currently still unknown?

@Totto16 Totto16 pinned this issue Jun 2, 2024
@Totto16
Copy link
Collaborator Author

Totto16 commented Jun 2, 2024

I published a pre-release, that has to be installed manually, but at least you don't need to self-built the extension.
Until I finally fix everything, and we can release it on EGO, it might take a while😓

@7system7
Copy link

7system7 commented Jun 2, 2024

OMG. This extension is (sadly) irreplaceable. Thank you.

@johnstonesnow
Copy link

I published a pre-release, that has to be installed manually, but at least you don't need to self-built the extension. Until I finally fix everything, and we can release it on EGO, it might take a while😓

Hi, is there any chance someone could explain how to install it please? I am on Fedora 40 and lost without Pano. thanks

@Dkoeddnsnp
Copy link

I'm the only one with this problem?

I have this issue as well. I took me a lot of time to find what causes the vrr to break.

@thyttan
Copy link

thyttan commented Jun 27, 2024

BUG:

  • Single-finger tap (left mouse button click) on icon opens clipboard AND top bar menu.
  • Tap again hides the top bar menu.
  • Tap a third time hides the clipboard.

EXPECTED:

To only display the clipboard. (One click should show. If I click again it should hide)

SYSTEM

Fedora Linux 40
About 20 other extensions

Can anyone confirm they see this too?

Not sure if this only happens on Gnome 46 or on older versions as well.

@Totto16
Copy link
Collaborator Author

Totto16 commented Jun 28, 2024

@lorenzo0932 @Dkoeddnsnp Could you file a separate issue for the bug. Then I'll look into it ❤️

@Totto16
Copy link
Collaborator Author

Totto16 commented Jun 28, 2024

BUG:

* Single-finger tap (left mouse button click) on icon opens clipboard AND top bar menu.

* Tap again hides the top bar menu.

* Tap a third time hides the clipboard.

EXPECTED:

To only display the clipboard. (One click should show. If I click again it should hide)

SYSTEM

Fedora Linux 40 About 20 other extensions

Can anyone confirm they see this too?

Not sure if this only happens on Gnome 46 or on older versions as well.

Could you please file a seperate issue, thank you ❤️

@iconoclasthero
Copy link

iconoclasthero commented Jun 30, 2024

I'm not sure this is the same error:

$ sudo apt install gir1.2-gda-5.0 gir1.2-gsound-1.0
gir1.2-gda-5.0 is already the newest version (5.2.10-4.1build1).
gir1.2-gsound-1.0 is already the newest version (1.0.3-3.2build2).
$ neofetch
OS: Rhino Linux 2024.1 (server) x86_64 
Kernel: Linux 6.9.1-060901-generic 
DE: GNOME 46.2 (Wayland) 
WM: Mutter 

image

edit:

just found this in extensions ... i was looking in extension manager before. great they're so distinct-sounding:

The settings of extension [email protected] had an error:

SyntaxError: import declarations may only appear at top level of a module @ resource:///org/gnome/Shell/Extensions/js/misc/extensionUtils.js:4:0

Stack trace:
  @file:///home/$USER/.local/share/gnome-shell/extensions/[email protected]/prefs.js:2:12
  _init/GLib.MainLoop.prototype.runAsync/</<@resource:///org/gnome/gjs/modules/core/overrides/GLib.js:266:34
  

If it is not, the alpha fixes the above errors so...

Just for future reference, is it standard to put the files in a zip like that without putting them in a directory? I was expecting to just unzip [email protected].

@Seqaeon
Copy link

Seqaeon commented Jul 24, 2024

Screenshot from 2024-07-24 19-46-42

image

Stilll not working in GNOME 46

@teohhanhui
Copy link

@Seqaeon
Copy link

Seqaeon commented Jul 24, 2024

That worked. Thanks a lot @teohhanhui.

A small question, it seems to copy everything I double click and I can't seem to see an option to get it to only copy stuff I press CTRL +C on

@teohhanhui
Copy link

it seems to copy everything I double click and I can't seem to see an option to get it to only copy stuff I press CTRL +C on

It's in the settings. You'd want to use an extension manager like https://flathub.org/apps/com.mattjakeman.ExtensionManager (the best) to be able to access extension settings in general. But for Pano, you can right click on the widget and go to Settings.

@Seqaeon
Copy link

Seqaeon commented Jul 24, 2024

it seems to copy everything I double click and I can't seem to see an option to get it to only copy stuff I press CTRL +C on

It's in the settings. You'd want to use an extension manager like https://flathub.org/apps/com.mattjakeman.ExtensionManager (the best) to be able to access extension settings in general. But for Pano, you can right click on the widget and go to Settings.

I was using the gnome-extension app to edit its settings but couldn't figure out how to make it stop.
image_2024-07-25_00-54-32
image_2024-07-25_00-54-21

@hockdudu
Copy link

It's under "sync primary"

@Seqaeon
Copy link

Seqaeon commented Jul 25, 2024

It's under "sync primary"

I disabled that and it didn't change

@Seqaeon
Copy link

Seqaeon commented Jul 25, 2024

It's under "sync primary"

image_2024-07-25_10-04-05

See trying to select some stuff and it starts copying straight from the first character selected. Also like each cell I try to move from in a spreadsheet is copied

@hockdudu
Copy link

Weird... This setting should disable exactly that. Are the settings being actually persisted? What's the output of the following command?

dconf dump /org/gnome/shell/extensions/pano/

It should output this line, among others

sync-primary=false

@Seqaeon
Copy link

Seqaeon commented Jul 25, 2024

Weird... This setting should disable exactly that. Are the settings being actually persisted? What's the output of the following command?

dconf dump /org/gnome/shell/extensions/pano/

It should output this line, among others

sync-primary=false

`[/]

global-shortcut=['v']

history-length=500

icon-pack=uint32 0

incognito-shortcut=['v']

item-size=200

paste-on-select=true

sync-primary=false

window-position=uint32 0
`

@hockdudu
Copy link

Strange... Does this persist when you restart the computer? Maybe is another extension or tool conflicting with this extension, could you try disabling other extensions and seeing if this persists?

If this doesn't work, I believe it's best to open a new issue, as this seems to be a bug.

@Seqaeon
Copy link

Seqaeon commented Jul 25, 2024

Strange... Does this persist when you restart the computer? Maybe is another extension or tool conflicting with this extension, could you try disabling other extensions and seeing if this persists?

If this doesn't work, I believe it's best to open a new issue, as this seems to be a bug.

Wow, it's been fixed, the issue seems to be I had GPaste also installed.

@zvictor
Copy link

zvictor commented Oct 23, 2024

For anyone interested, this is how I managed to run v23-alpha2 in Nix:

  • gnome-shell-extension-pano.patch:
--- a/extension.js
+++ b/extension.js
@@ -1,3 +1,7 @@
+import GIRepository from 'gi://GIRepository';
+GIRepository.Repository.prepend_search_path('@gda_path@');
+GIRepository.Repository.prepend_search_path('@gsound_path@');
+
 import Gio from 'gi://Gio';
 import GLib from 'gi://GLib';
 import * as extension_js from 'resource:///org/gnome/shell/extensions/extension.js';
  • gnome-shell-extension-pano.nix:
{ stdenv, fetchzip, lib, gnome, glib, libgda, gsound, substituteAll, wrapGAppsHook }:

stdenv.mkDerivation rec {
  pname = "gnome-shell-extension-pano";
  version = "v23-alpha2";
  
  src = fetchzip {
    url = "https://github.com/oae/gnome-shell-pano/releases/download/${version}/[email protected]";
    sha256 = "Y8WgVUHX094RUwYKdt7OROPZMl3dakK0zOU9OTdyqxc=";
    stripRoot = false;
  };

  patches = [
    (substituteAll {
      src = ./gnome-shell-extension-pano.patch;
      gsound_path = "${gsound}/lib/girepository-1.0";
      gda_path = "${libgda}/lib/girepository-1.0";
    })
  ];

  buildInputs = [
    gnome.gnome-shell
    libgda
    gsound
  ];

  nativeBuildInputs = [
    wrapGAppsHook
  ];

  installPhase = ''
    runHook preInstall
    local_ext_dir=$out/share/gnome-shell/extensions/[email protected]
    install -d $local_ext_dir
    cp -r * $local_ext_dir

    # Ensure typelibs are directly accessible
    mkdir -p $out/lib/girepository-1.0
    ln -s ${gsound}/lib/girepository-1.0/* $out/lib/girepository-1.0/
    ln -s ${libgda}/lib/girepository-1.0/* $out/lib/girepository-1.0/

    runHook postInstall
  '';

  meta = with lib; {
    description = "Pano GNOME Shell Clipboard Management Extension (${version} pre-release)";
    homepage = "https://github.com/oae/gnome-shell-pano";
    license = licenses.gpl2Plus;
    platforms = platforms.linux;
    maintainers = [ maintainers.zvictor ];
  };

@EmreKaratopuk
Copy link

Thank you for the pre-release, it works very well. Is there an ETA for full Gnome 46 support?

@carmen-gh
Copy link

and here comes Gnome 47 with latest Fedora release... I hope I can use it someday again :)

@Tanguille
Copy link

and here comes Gnome 47 with latest Fedora release... I hope I can use it someday again :)

I am using the pre-release on fedora 41 without issues so far.

@Malix-Labs
Copy link

Malix-Labs commented Nov 3, 2024

If it is working without (or with minor) issues, could it be pushed to EGO again ?

@Totto16
Copy link
Collaborator Author

Totto16 commented Nov 3, 2024

If it is working without (or with minor) issues, could you please push it to EGO ?

That's not possible, as we have some external dependencies, that they no longer accept, for more information see #271 (comment)

@teohhanhui
Copy link

Correct, the "issue" with highlight.js is, that EGO doesn't want to have that too much third party dependencies in published extensions.

They don't accept bundled dependencies? 😱

@Malix-Labs
Copy link

Malix-Labs commented Nov 3, 2024

Blocker Explanation

The blocker to make Pano available in GNOME Shell Extensions again is too complex, only @Totto16 and @oae could solve it and make it mainstream again

@PiotrGrobelak kindly proposed to help but it is apparently not feasible

See #278 (comment) for details

@Totto16
Copy link
Collaborator Author

Totto16 commented Nov 3, 2024

Correct, the "issue" with highlight.js is, that EGO doesn't want to have that too much third party dependencies in published extensions.

They don't accept bundled dependencies? 😱

Some small ones, but not something like highlightjs 😓

We use that package for code highlighting 😓

Since I started #278 a half year ago, we also could just remove that functionality for now, and then re-add that later, when I managed to do that. For context, we can use subprocesses, that call to an executable, that a user can optionally install, but doing that correctly and without huge cpu load (when we scan up to 500 clipboard contents, to determine if they are code and then highlight them if they are) is not that easy 😓

I'll look into this this week, since deactivating functionailuty isn't that complicated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Priority High Priority High
Projects
None yet
Development

No branches or pull requests