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

Package request: Pop shell (Pop!_OS's tiling windows manager extension for GNOME shell) #92769

Closed
operator-name opened this issue Jul 9, 2020 · 11 comments
Labels
0.kind: packaging request Request for a new package to be added 6.topic: GNOME GNOME desktop environment and its underlying platform

Comments

@operator-name
Copy link

Project description

Pop Shell is a keyboard-driven layer for GNOME Shell which allows for quick and sensible navigation and management of windows. The core feature of Pop Shell is the addition of advanced tiling window management — a feature that has been highly-sought within our community. For many — ourselves included — i3wm has become the leading competitor to the GNOME desktop.

Metadata

@operator-name operator-name added the 0.kind: packaging request Request for a new package to be added label Jul 9, 2020
@Technical27
Copy link
Contributor

Here is what I use, anyone is free to go ahead and merge this (or fix it):

{ stdenv, fetchFromGitHub, nodejs, nodePackages, glib }:

stdenv.mkDerivation rec {
  pname = "gnome-shell-extension-popshell";
  version = "1.0.0";

  src = fetchFromGitHub {
    owner = "pop-os";
    repo = "shell";
    rev = "master_focal";
    sha256 = "1ygqzmvh6fjl1yc9rxb9mmis7ywaxqfnx6hn3clhl4y3vv5f19gn";
  };

  nativeBuildInputs = [ nodePackages.typescript glib ];

  makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ];
}

@jtojnar
Copy link
Member

jtojnar commented Jul 9, 2020

I am pretty sure I saw that somewhere but cannot find other than:

https://github.com/FelschR/nixos-config/blob/f56d52f32434904e3a95e29a761714e4ffd35e05/desktop/gnome.nix#L5-L21

Edit: It was here: https://discourse.nixos.org/t/making-gsettings-see-a-schema-from-a-derivation/6295

@veprbl veprbl added the 6.topic: GNOME GNOME desktop environment and its underlying platform label Jul 10, 2020
@mogorman
Copy link
Contributor

mogorman commented Aug 13, 2020

leaving this here while i work on it for myself. its running but by default a lot of its needed keys are clobbered. going to need some home-manager or nixos system dconf to work properly.

{ stdenv, fetchFromGitHub, nodejs, nodePackages, glib }:

stdenv.mkDerivation rec {
  pname = "gnome-shell-extension-pop-shell";
  version = "2020-08-13";

  src = fetchFromGitHub {
    owner = "pop-os";
    repo = "shell";
    rev = "55c40ce66a5a51e83c083063a704372e18ca49e5";
    sha256 = "1pv01jc85g1a3dbamcnvm9iwr03llxycnywx5p7ng04xyq5l6923";
  };

  uuid = "[email protected]";

  nativeBuildInputs = [ glib nodePackages.typescript];

  makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ];

  postInstall = ''
    mkdir -p $out/share/gsettings-schemas/pop-shell-${version}/glib-2.0

    schemadir=${glib.makeSchemaPath "$out" "${pname}-${version}"}
    mkdir -p $schemadir
    cp -r $out/share/gnome-shell/extensions/$uuid/schemas/* $schemadir
  
  '';

  meta = with stdenv.lib; {
    description = "i3wm-like keyboard-driven layer for GNOME Shell";
    homepage = "https://github.com/pop-os/shell";
    license = licenses.gpl3;
    maintainers = with maintainers; [ mog ];
    platforms = platforms.linux;
  };
}

@mogorman
Copy link
Contributor

hmm it doesnt seem to work with wayland so im not going to try it till they get that sorted

@stale
Copy link

stale bot commented Feb 12, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Feb 12, 2021
@ratsclub
Copy link
Member

ratsclub commented Jul 18, 2021

As I can tell there are two PRs (see below) trying to package it. Which one should I give a try?

#104160
#102150

@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jul 18, 2021
@jtojnar
Copy link
Member

jtojnar commented Jul 19, 2021

Neither will work with GNOME 40.

@ratsclub
Copy link
Member

Isn't there a way to use the old GNOME 3.0 package?

@buckley310
Copy link
Contributor

Theoretically yes, but I don't think it's easy.
Among other things, I believe the GNOME 3.38->40 update is linked to the GTK 3->4 update, which is fairly invasive.

@ratsclub
Copy link
Member

Oh, I see. I'll then wait until October's update that might give GNOME 40 support!

@genofire
Copy link
Contributor

genofire commented Dec 2, 2021

Solved in #147542 - i believe we could close this ISSUE.
Maybe you add yourself to maintainers ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.kind: packaging request Request for a new package to be added 6.topic: GNOME GNOME desktop environment and its underlying platform
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants