This commit is contained in:
dusk 2021-12-25 16:19:03 +03:00
parent e145f8bdac
commit 9eafa9f3bf
Signed by: dusk
GPG Key ID: 1D8F8FAF2294D6EA
4 changed files with 48 additions and 74 deletions

View File

@ -29,7 +29,7 @@
type = "git"; type = "git";
submodules = true; submodules = true;
inputs.nixpkgs.follows = "nixos"; inputs.nixpkgs.follows = "nixos";
};*/ };*/
nixosPersistence.url = "github:nix-community/impermanence"; nixosPersistence.url = "github:nix-community/impermanence";
nixpkgsWayland = { nixpkgsWayland = {
url = "github:colemickens/nixpkgs-wayland"; url = "github:colemickens/nixpkgs-wayland";
@ -46,7 +46,7 @@
, nixosPersistence , nixosPersistence
, nixpkgsWayland , nixpkgsWayland
, rnixLsp , rnixLsp
#, helix #, helix
, ... , ...
} @ inputs: } @ inputs:
digga.lib.mkFlake digga.lib.mkFlake

View File

@ -1,12 +1,10 @@
_: prev: _: prev:
let let
pkgs = prev; cliArgs =
lib = pkgs.lib;
chromiumWayland =
let let
flags = [ flags = [
"--flag-switches-begin" "--flag-switches-begin"
"--enable-features=UseOzonePlatform,WebRTCPipeWireCapturer,IgnoreGPUBlocklist" "--enable-features=WebUIDarkMode,UseOzonePlatform,WebRTCPipeWireCapturer,IgnoreGPUBlocklist,Vulkan"
"--flag-switches-end" "--flag-switches-end"
"--ozone-platform=wayland" "--ozone-platform=wayland"
"--enable-webrtc-pipewire-capturer" "--enable-webrtc-pipewire-capturer"
@ -15,40 +13,13 @@ let
"--enable-zero-copy" "--enable-zero-copy"
"--disable-gpu-driver-bug-workarounds" "--disable-gpu-driver-bug-workarounds"
"--force-dark-mode" "--force-dark-mode"
"--process-per-site"
]; ];
in in
pkgs.writeScriptBin "chromium-wayland" '' prev.lib.concatStringsSep " " flags;
#!${pkgs.stdenv.shell}
${pkgs.chromium}/bin/chromium ${lib.concatStringsSep " " flags}
'';
in in
{ {
chromiumWayland = chromium = prev.chromium.override {
let commandLineArgs = cliArgs;
pname = "chromium"; };
desktop = pkgs.makeDesktopItem {
name = pname;
exec = pname;
icon = "chromium-browser";
desktopName = "Chromium Wayland";
genericName = "Web Browser";
};
in
lib.hiPrio (pkgs.stdenv.mkDerivation {
inherit pname;
version = pkgs.chromium.version;
nativeBuildInputs = [ pkgs.makeWrapper ];
phases = [ "installPhase" "fixupPhase" ];
installPhase = ''
mkdir -p $out/bin
install -m755 ${chromiumWayland}/bin/${pname}-wayland $out/bin/${pname}
cp -r ${desktop}/share $out/share
'';
/*fixupPhase = ''
wrapProgram $out/bin/${pname} \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath (with pkgs; [ vulkan-loader libGL ])} \
--prefix VK_ICD_FILENAMES : "${pkgs.amdvlk}/share/vulkan/icd.d/amd_icd64.json:${pkgs.driversi686Linux.amdvlk}/share/vulkan/icd.d/amd_icd32.json"
'';*/
});
} }

View File

@ -1,17 +1,16 @@
final: prev: rec { final: prev: rec {
discord-canary-system = prev.callPackage mkDiscord (rec { discord-canary-system = prev.callPackage mkDiscord (rec {
pname = "discord-canary"; pname = "discord-canary";
version = "0.0.126"; version = "0.0.131";
binaryName = "DiscordCanary"; binaryName = "DiscordCanary";
desktopName = "Discord Canary"; desktopName = "Discord Canary";
src = prev.fetchurl { src = prev.fetchurl {
url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz"; url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
sha256 = "sha256-EraTDRKd6t0c9U68tSRdGkeB1hfqNS4KUewEXwkL8io="; sha256 = "sha256-ZYPdE02Jq79LmvXu7KIJFugJX++Nnj0Og/mBuaP/+SA=";
}; };
isWayland = true; isWayland = true;
enableVulkan = true; enableVulkan = false;
extraOptions = [ extraOptions = [
"--enable-vulkan"
"--ignore-gpu-blocklist" "--ignore-gpu-blocklist"
"--enable-gpu-rasterization" "--enable-gpu-rasterization"
"--enable-zero-copy" "--enable-zero-copy"
@ -74,6 +73,7 @@ final: prev: rec {
, vulkan-loader , vulkan-loader
, vulkan-extension-layer , vulkan-extension-layer
, libGL , libGL
, pipewire
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
inherit pname version src; inherit pname version src;
@ -138,6 +138,7 @@ final: prev: rec {
vulkan-loader vulkan-loader
vulkan-extension-layer vulkan-extension-layer
libGL libGL
pipewire
]; ];
flags = (lib.optionals isWayland [ flags = (lib.optionals isWayland [

View File

@ -27,7 +27,6 @@ in
gtkUsePortal = true; gtkUsePortal = true;
extraPortals = with pkgs; [ extraPortals = with pkgs; [
xdg-desktop-portal xdg-desktop-portal
xdg-desktop-portal-gtk
xdg-desktop-portal-wlr xdg-desktop-portal-wlr
]; ];
}; };
@ -42,19 +41,34 @@ in
wireshark.enable = false; wireshark.enable = false;
}; };
security.pam.services.patriot = { security = {
enableGnomeKeyring = true; pam.services.patriot = {
enableKwallet = false; enableGnomeKeyring = true;
enableKwallet = false;
};
sudo.extraRules = [
{
users = [ "patriot" ];
commands = [{
command = "${pkgs.profile-sync-daemon}/bin/psd-overlay-helper";
options = [ "SETENV" "NOPASSWD" ];
}];
}
];
}; };
services = { services = {
psd.enable = true;
gnome = { gnome = {
gnome-keyring.enable = true; gnome-keyring.enable = true;
core-utilities.enable = false;
tracker-miners.enable = false;
tracker.enable = false;
}; };
xserver = { xserver = {
enable = true; enable = true;
desktopManager = { desktopManager = {
plasma5.enable = false; plasma5.enable = false;
gnome.enable = false; gnome.enable = true;
xterm.enable = false; xterm.enable = false;
}; };
displayManager = { displayManager = {
@ -64,11 +78,11 @@ in
}; };
lightdm.enable = false; lightdm.enable = false;
gdm = { gdm = {
enable = false; enable = true;
wayland = true; wayland = true;
}; };
sddm.enable = false; sddm.enable = false;
startx.enable = true; startx.enable = false;
}; };
}; };
}; };
@ -222,15 +236,15 @@ in
fonts = [ fontComb ]; fonts = [ fontComb ];
extraEnv = '' extraEnv = ''
# export SDL_VIDEODRIVER=wayland export SDL_VIDEODRIVER=wayland
# needs qt5.qtwayland in systemPackages # needs qt5.qtwayland in systemPackages
export QT_QPA_PLATFORM=wayland export QT_QPA_PLATFORM=wayland
export QT_WAYLAND_DISABLE_WINDOWDECORATION="1" #export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
# Fix for some Java AWT applications (e.g. Android Studio), # Fix for some Java AWT applications (e.g. Android Studio),
# use this if they aren't displayed properly: # use this if they aren't displayed properly:
export _JAVA_AWT_WM_NONREPARENTING=1 export _JAVA_AWT_WM_NONREPARENTING=1
export QT_QPA_PLATFORMTHEME=qt5ct #export QT_QPA_PLATFORMTHEME=qt5ct
export QT_PLATFORM_PLUGIN=qt5ct #export QT_PLATFORM_PLUGIN=qt5ct
''; '';
in in
{ {
@ -273,12 +287,7 @@ in
dejavu_fonts dejavu_fonts
(nerdfonts.override { fonts = [ "Iosevka" ]; }) (nerdfonts.override { fonts = [ "Iosevka" ]; })
# Programs # Programs
# discord-canary-system discord-canary-system
# element-desktop
# gh
openbox
openbox-menu
sublime4
vulkan-tools vulkan-tools
audacity audacity
krita krita
@ -286,12 +295,10 @@ in
kdenlive kdenlive
gnome3.seahorse gnome3.seahorse
gnome3.gnome-boxes gnome3.gnome-boxes
#wine-staging
cachix cachix
appimage-run appimage-run
bitwarden bitwarden
pfetch pfetch
neofetch
gnupg gnupg
imv imv
mpv mpv
@ -308,13 +315,8 @@ in
xdg_utils xdg_utils
tagref tagref
libreoffice-fresh libreoffice-fresh
mako
hydrus hydrus
musikcube
qt5ct
phantomstyle
papirus-icon-theme papirus-icon-theme
pcmanfm-qt
wl-clipboard wl-clipboard
rust-analyzer rust-analyzer
(lib.hiPrio (steam.override { (lib.hiPrio (steam.override {
@ -331,7 +333,7 @@ in
wayland.windowManager = { wayland.windowManager = {
sway = { sway = {
enable = true; enable = false;
extraSessionCommands = extraEnv; extraSessionCommands = extraEnv;
wrapperFeatures.gtk = true; wrapperFeatures.gtk = true;
extraConfig = '' extraConfig = ''
@ -443,7 +445,7 @@ in
}; };
chromium = { chromium = {
enable = true; enable = true;
package = pkgs.chromiumWayland; package = pkgs.chromium;
extensions = [ extensions = [
"gcbommkclmclpchllfjekcdonpmejbdp" # https everywhere "gcbommkclmclpchllfjekcdonpmejbdp" # https everywhere
"cjpalhdlnbpafiamejdnhcphjbkeiagm" # ublock "cjpalhdlnbpafiamejdnhcphjbkeiagm" # ublock
@ -538,12 +540,12 @@ in
dotDir = ".config/zsh"; dotDir = ".config/zsh";
history.path = ".local/share/zsh/history"; history.path = ".local/share/zsh/history";
envExtra = extraEnv; envExtra = extraEnv;
loginExtra = /*loginExtra =
'' ''
if [ "$(${pkgs.coreutils}/bin/tty)" = "/dev/tty1" ]; then if [ "$(${pkgs.coreutils}/bin/tty)" = "/dev/tty1" ]; then
exec sway exec sway
fi fi
''; '';*/
initExtra = '' initExtra = ''
export TERM=alacritty export TERM=alacritty
@ -575,7 +577,7 @@ in
acc = "#${acColor}"; acc = "#${acColor}";
in in
{ {
enable = true; enable = false;
cycle = true; cycle = true;
font = fontComb; font = fontComb;
terminal = pkgBin "alacritty"; terminal = pkgBin "alacritty";