Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 21 additions & 22 deletions pkgs/desktops/gnome/extensions/collisions.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,42 +3,41 @@
"Applications_Menu@rmy.pobox.com",
"apps-menu@gnome-shell-extensions.gcampax.github.com"
],
"persian-calendar": [
"PersianCalendar@oxygenws.com",
"persian-calendar@iamrezamousavi.gmail.com"
"battery-time": [
"batime@martin.zurowietz.de",
"battery-time@eetumos.github.com",
"batterytime@typeof.pw"
],
"system-monitor": [
"System_Monitor@bghome.gmail.com",
"system-monitor@gnome-shell-extensions.gcampax.github.com"
"eur-usd": [
"eur-usd-gshell@vezza.github.com",
"usd-mxn-gshell@kinduff.github.com"
],
"fullscreen-to-empty-workspace": [
"fullscreen-to-empty-workspace2@corgijan.dev",
"fullscreen-to-empty-workspace@aiono.dev"
],
"fuzzy-clock": [
"FuzzyClock@fire-man-x",
"FuzzyClock@johngoetz",
"fuzzy-clock@keepawayfromfire.co.uk"
"FuzzyClock@johngoetz"
],
"battery-time": [
"batime@martin.zurowietz.de",
"battery-time@eetumos.github.com",
"batterytime@typeof.pw"
"mouse-follows-focus": [
"mouse-follows-focus@crisidev.org",
"mousefollowsfocus@matthes.biz"
],
"nepali-calendar": [
"nepali-calendar-gs-extension@subashghimire.info.np",
"nepali-date@biplab"
],
"mouse-follows-focus": [
"mouse-follows-focus@crisidev.org",
"mousefollowsfocus@matthes.biz"
"persian-calendar": [
"PersianCalendar@oxygenws.com",
"persian-calendar@iamrezamousavi.gmail.com"
],
"power-profile-indicator": [
"power-profile-indicator@laux.wtf",
"power-profile@fthx"
],
"fullscreen-to-empty-workspace": [
"fullscreen-to-empty-workspace2@corgijan.dev",
"fullscreen-to-empty-workspace@aiono.dev"
],
"eur-usd": [
"eur-usd-gshell@vezza.github.com",
"usd-mxn-gshell@kinduff.github.com"
"system-monitor": [
"System_Monitor@bghome.gmail.com",
"system-monitor@gnome-shell-extensions.gcampax.github.com"
]
}
2 changes: 1 addition & 1 deletion pkgs/desktops/gnome/extensions/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ rec {
gnome48Extensions = mapUuidNames (produceExtensionsList "48");

# Keep the last three versions in here
gnomeExtensions = lib.trivial.pipe (gnome45Extensions // gnome46Extensions // gnome47Extensions) [
gnomeExtensions = lib.trivial.pipe (gnome46Extensions // gnome47Extensions // gnome48Extensions) [
(v: builtins.removeAttrs v [ "__attrsFailEvaluation" ])
# Apply some custom patches for automatically packaged extensions
(callPackage ./extensionOverrides.nix { })
Expand Down
19 changes: 0 additions & 19 deletions pkgs/desktops/gnome/extensions/extensionOverrides.nix
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
{
lib,
fetchFromGitLab,
fetchzip,
cpio,
ddcutil,
easyeffects,
gjs,
glib,
nautilus,
gobject-introspection,
gsound,
hddtemp,
libgda6,
libgtop,
libhandy,
liquidctl,
Expand Down Expand Up @@ -171,22 +168,6 @@ lib.trivial.pipe super [
}
))

(patchExtension "pano@elhan.io" (
final: prev: {
version = "23-alpha3";
src = fetchzip {
url = "https://github.com/oae/gnome-shell-pano/releases/download/v${final.version}/pano@elhan.io.zip";
hash = "sha256-LYpxsl/PC8hwz0ZdH5cDdSZPRmkniBPUCqHQxB4KNhc=";
stripRoot = false;
};
preInstall = ''
substituteInPlace extension.js \
--replace-fail "import Gda from 'gi://Gda?version>=5.0'" "imports.gi.GIRepository.Repository.prepend_search_path('${libgda6}/lib/girepository-1.0'); const Gda = (await import('gi://Gda')).default" \
--replace-fail "import GSound from 'gi://GSound'" "imports.gi.GIRepository.Repository.prepend_search_path('${gsound}/lib/girepository-1.0'); const GSound = (await import('gi://GSound')).default"
'';
}
))

(patchExtension "system-monitor@gnome-shell-extensions.gcampax.github.com" (old: {
patches = [
(replaceVars
Expand Down
1 change: 0 additions & 1 deletion pkgs/desktops/gnome/extensions/extensionRenames.nix
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
"System_Monitor@bghome.gmail.com" = "system-monitor-2";

"FuzzyClock@fire-man-x" = "fuzzy-clock-3";
"fuzzy-clock@keepawayfromfire.co.uk" = "fuzzy-clock-2";
"FuzzyClock@johngoetz" = "fuzzy-clock";

"battery-time@eetumos.github.com" = "battery-time-3";
Expand Down
2 changes: 2 additions & 0 deletions pkgs/desktops/gnome/extensions/manuallyPackaged.nix
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,6 @@
"unite@hardpixel.eu" = callPackage ./unite { };
"valent@andyholmes.ca" = callPackage ./valent { };
"window-corner-preview@fabiomereu.it" = callPackage ./window-corner-preview { };
# Can be removed when https://github.com/oae/gnome-shell-pano/issues/271 resolved
"pano@elhan.io" = callPackage ./pano { };
}
55 changes: 55 additions & 0 deletions pkgs/desktops/gnome/extensions/pano/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
{
lib,
stdenv,
fetchzip,
glib,
libgda6,
gsound,
}:

stdenv.mkDerivation (finalAttrs: {
pname = "gnome-shell-extension-pano";
version = "23-alpha5";

src = fetchzip {
url = "https://github.com/oae/gnome-shell-pano/releases/download/v${finalAttrs.version}/pano@elhan.io.zip";
hash = "sha256-kTaJOSyFtBa/fl3Mot8Q8qyhwJwhcbBY4FvdztqUP4w=";
stripRoot = false;
};

nativeBuildInputs = [
glib
];

buildPhase = ''
runHook preBuild
glib-compile-schemas --strict schemas
runHook postBuild
'';

preInstall = ''
substituteInPlace extension.js \
--replace-fail "import Gda from 'gi://Gda?version>=5.0'" "imports.gi.GIRepository.Repository.prepend_search_path('${libgda6}/lib/girepository-1.0'); const Gda = (await import('gi://Gda')).default" \
--replace-fail "import GSound from 'gi://GSound'" "imports.gi.GIRepository.Repository.prepend_search_path('${gsound}/lib/girepository-1.0'); const GSound = (await import('gi://GSound')).default"
'';

installPhase = ''
runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r -T . $out/share/gnome-shell/extensions/pano@elhan.io
runHook postInstall
'';

passthru = {
extensionPortalSlug = "pano";
extensionUuid = "pano@elhan.io";
};

meta = with lib; {
description = "Next-gen Clipboard Manager for Gnome Shell";
homepage = "https://github.com/oae/gnome-shell-pano";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ honnip ];
platforms = platforms.linux;
};
})
4 changes: 2 additions & 2 deletions pkgs/desktops/gnome/extensions/update-extensions.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
}

# shell versions that we want to put into the gnomeExtensions attr set
versions_to_merge = ["45", "46", "47"]
versions_to_merge = ["46", "47", "48"]

# Some type alias to increase readability of complex compound types
PackageName = str
Expand Down Expand Up @@ -351,7 +351,7 @@ def find_collisions(
package_name_registry.setdefault(pname, set()).add(uuid)
return {
pname: sorted(uuids)
for pname, uuids in package_name_registry.items()
for pname, uuids in sorted(package_name_registry.items())
if len(uuids) > 1
}

Expand Down