adds pano alpha and fixes for gnome extensions
This commit is contained in:
parent
ac7376f606
commit
c0626c9d27
@ -1,7 +1,7 @@
|
|||||||
{ pkgs-unstable, pkgs, ... }:
|
{ pkgs-unstable, pkgs, ... }:
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# GUI Applications
|
# GUI Application
|
||||||
## Utilities
|
## Utilities
|
||||||
pkgs-unstable.mission-center
|
pkgs-unstable.mission-center
|
||||||
gnome.gnome-tweaks
|
gnome.gnome-tweaks
|
||||||
|
@ -1,24 +1,37 @@
|
|||||||
{ config, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
home.packages = with pkgs.gnomeExtensions; [
|
config,
|
||||||
tailscale-qs
|
pkgs-unstable,
|
||||||
gsconnect
|
pkgs,
|
||||||
blur-my-shell
|
...
|
||||||
weather-oclock
|
}:
|
||||||
space-bar
|
{
|
||||||
gtk4-desktop-icons-ng-ding
|
# We run most extensions from unstable because they are more up-to-date
|
||||||
logo-menu
|
home.packages =
|
||||||
media-controls
|
with pkgs.gnomeExtensions;
|
||||||
burn-my-windows
|
[
|
||||||
coverflow-alt-tab
|
user-themes
|
||||||
dash-to-dock
|
weather-oclock
|
||||||
appindicator
|
native-window-placement
|
||||||
user-themes
|
]
|
||||||
autohide-battery
|
++ (with pkgs-unstable.gnomeExtensions; [
|
||||||
battery-health-charging
|
tiling-shell
|
||||||
just-perfection
|
lilypad
|
||||||
pano
|
tailscale-qs
|
||||||
];
|
gsconnect
|
||||||
|
blur-my-shell
|
||||||
|
space-bar
|
||||||
|
gtk4-desktop-icons-ng-ding
|
||||||
|
logo-menu
|
||||||
|
media-controls
|
||||||
|
burn-my-windows
|
||||||
|
coverflow-alt-tab
|
||||||
|
dash-to-dock
|
||||||
|
appindicator
|
||||||
|
autohide-battery
|
||||||
|
battery-health-charging
|
||||||
|
just-perfection
|
||||||
|
smile-complementary-extension
|
||||||
|
]);
|
||||||
|
|
||||||
# Copy burn-my-windows profile to user config
|
# Copy burn-my-windows profile to user config
|
||||||
home.file.".config/burn-my-windows/profiles/default.conf".text = ''
|
home.file.".config/burn-my-windows/profiles/default.conf".text = ''
|
||||||
@ -34,6 +47,7 @@
|
|||||||
"org/gnome/shell" = {
|
"org/gnome/shell" = {
|
||||||
disable-user-extensions = false;
|
disable-user-extensions = false;
|
||||||
enabled-extensions = [
|
enabled-extensions = [
|
||||||
|
"lilypad@shendrew.github.io"
|
||||||
"tilingshell@ferrarodomenico.com"
|
"tilingshell@ferrarodomenico.com"
|
||||||
"gsconnect@andyholmes.github.io"
|
"gsconnect@andyholmes.github.io"
|
||||||
"blur-my-shell@aunetx"
|
"blur-my-shell@aunetx"
|
||||||
@ -52,6 +66,7 @@
|
|||||||
"user-theme@gnome-shell-extensions.gcampax.github.com"
|
"user-theme@gnome-shell-extensions.gcampax.github.com"
|
||||||
"autohide-battery@sitnik.ru"
|
"autohide-battery@sitnik.ru"
|
||||||
"just-perfection-desktop@just-perfection"
|
"just-perfection-desktop@just-perfection"
|
||||||
|
"native-window-placement@gnome-shell-extensions.gcampax.github.com"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
};
|
};
|
||||||
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/emotes" = {
|
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/emotes" = {
|
||||||
binding = "<Super>e";
|
binding = "<Super>e";
|
||||||
command = "flatpak run com.tomjwatson.Emote";
|
command = "smile";
|
||||||
name = "emotes";
|
name = "emotes";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,37 +1,4 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
{
|
{
|
||||||
# Enable NetworkManager with Wireguard support
|
|
||||||
networking = {
|
|
||||||
networkmanager = {
|
|
||||||
enable = true;
|
|
||||||
plugins = with pkgs; [
|
|
||||||
networkmanager-vpnc
|
|
||||||
networkmanager-openvpn
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Add NetworkManager connection profiles
|
|
||||||
environment.etc."NetworkManager/system-connections/work-vpn.nmconnection".source = "${config.home.homeDirectory}/dotfiles/secrets/wireguard/work.wg0.conf";
|
|
||||||
|
|
||||||
# Ensure NetworkManager Wireguard support is installed
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
networkmanager-wireguard
|
|
||||||
wireguard-tools
|
|
||||||
];
|
|
||||||
|
|
||||||
# Add a systemd service to set proper permissions and reload NetworkManager connections
|
|
||||||
systemd.services.reload-networkmanager-connections = {
|
|
||||||
description = "Set permissions and reload NetworkManager Connections";
|
|
||||||
wantedBy = [ "multi-user.target" ];
|
|
||||||
after = [ "NetworkManager.service" ];
|
|
||||||
serviceConfig = {
|
|
||||||
Type = "oneshot";
|
|
||||||
RemainAfterExit = true;
|
|
||||||
ExecStart = pkgs.writeShellScript "reload-nm-connections" ''
|
|
||||||
chmod 600 /etc/NetworkManager/system-connections/*
|
|
||||||
${pkgs.networkmanager}/bin/nmcli connection reload
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,12 @@
|
|||||||
{ ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
files = builtins.removeAttrs (builtins.readDir ./.) [ "default.nix" ];
|
||||||
|
|
||||||
|
# Import all other .nix files as modules
|
||||||
|
moduleFiles = builtins.map (fname: ./. + "/${fname}") (builtins.attrNames files);
|
||||||
|
in
|
||||||
{
|
{
|
||||||
imports = [ ];
|
# Import all the package modules
|
||||||
|
imports = moduleFiles;
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
{ ... }:
|
{ config, pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
# Import all the package modules
|
||||||
imports = [
|
imports = [
|
||||||
./steam.nix
|
|
||||||
./1password.nix
|
./1password.nix
|
||||||
./flatpak.nix
|
./flatpak.nix
|
||||||
|
./steam.nix
|
||||||
|
./pano.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
10
config/nixos/packages/workstation/pano.nix
Normal file
10
config/nixos/packages/workstation/pano.nix
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
environment.systemPackages = [ (pkgs.callPackage ./pano { }) ];
|
||||||
|
}
|
60
config/nixos/packages/workstation/pano/default.nix
Normal file
60
config/nixos/packages/workstation/pano/default.nix
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
{
|
||||||
|
stdenv,
|
||||||
|
fetchzip,
|
||||||
|
lib,
|
||||||
|
gnome,
|
||||||
|
glib,
|
||||||
|
libgda,
|
||||||
|
gsound,
|
||||||
|
substituteAll,
|
||||||
|
wrapGAppsHook,
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "gnome-shell-extension-pano";
|
||||||
|
version = "v23-alpha3";
|
||||||
|
|
||||||
|
src = fetchzip {
|
||||||
|
url = "https://github.com/oae/gnome-shell-pano/releases/download/${version}/pano@elhan.io.zip";
|
||||||
|
sha256 = "LYpxsl/PC8hwz0ZdH5cDdSZPRmkniBPUCqHQxB4KNhc=";
|
||||||
|
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/pano@elhan.io
|
||||||
|
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 ];
|
||||||
|
};
|
||||||
|
}
|
@ -0,0 +1,10 @@
|
|||||||
|
--- 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';
|
Loading…
x
Reference in New Issue
Block a user