making some config changes to better setup qt environments
This commit is contained in:
parent
1e2cc2c916
commit
982b86059f
16
README.org
16
README.org
|
@ -165,7 +165,7 @@ services.pipewire = {
|
||||||
wireplumber.enable = true;
|
wireplumber.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Needed for some pipewire progs
|
# Needed for some pipewire progs and other gtk apps
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
@ -175,13 +175,15 @@ To make sure certain things are setup properly I'll modify the shells a bit.
|
||||||
# Set default shell to be dash for speed
|
# Set default shell to be dash for speed
|
||||||
# Apparently this is bad because a lot of nix relies on bash
|
# Apparently this is bad because a lot of nix relies on bash
|
||||||
# environment.binsh = "${pkgs.dash}/bin/dash";
|
# environment.binsh = "${pkgs.dash}/bin/dash";
|
||||||
|
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
EDITOR = "emacsclient -t -a";
|
EDITOR = "emacsclient -t -a";
|
||||||
VISUAL = "emacsclient -c -a";
|
VISUAL = "emacsclient -c -a";
|
||||||
|
|
||||||
# Fixing Qt apps in other environments
|
# Fixing Qt apps in other environments
|
||||||
|
# Thought I needed this but apparently they are working fine without it.
|
||||||
# QT_XCB_GL_INTEGRATION = "xcb_egl";
|
# QT_XCB_GL_INTEGRATION = "xcb_egl";
|
||||||
QT_QPA_PLATFORM_PLUGIN_PATH = "${pkgs.qt5.qtbase.bin}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms";
|
# QT_QPA_PLATFORM_PLUGIN_PATH = "${pkgs.qt5.qtbase.bin}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms";
|
||||||
};
|
};
|
||||||
environment.homeBinInPath = true;
|
environment.homeBinInPath = true;
|
||||||
programs.fish.enable = true;
|
programs.fish.enable = true;
|
||||||
|
@ -218,6 +220,7 @@ services.samba = {
|
||||||
};
|
};
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
Now lets turn on docker and podman. I create a lot of containers for my job.
|
||||||
#+NAME: podman
|
#+NAME: podman
|
||||||
#+begin_src nix
|
#+begin_src nix
|
||||||
virtualisation.podman.enable = true;
|
virtualisation.podman.enable = true;
|
||||||
|
@ -273,6 +276,7 @@ rofi-emoji
|
||||||
nerdfonts
|
nerdfonts
|
||||||
latte-dock
|
latte-dock
|
||||||
bat
|
bat
|
||||||
|
jq
|
||||||
alacritty
|
alacritty
|
||||||
libsForQt5.bismuth
|
libsForQt5.bismuth
|
||||||
libnotify
|
libnotify
|
||||||
|
@ -299,6 +303,7 @@ btop
|
||||||
qrencode
|
qrencode
|
||||||
brave
|
brave
|
||||||
scribus
|
scribus
|
||||||
|
qutebrowser
|
||||||
# firefox
|
# firefox
|
||||||
kate
|
kate
|
||||||
kdialog
|
kdialog
|
||||||
|
@ -338,6 +343,7 @@ quickemu
|
||||||
OVMFFull
|
OVMFFull
|
||||||
element-desktop-wayland
|
element-desktop-wayland
|
||||||
scrcpy
|
scrcpy
|
||||||
|
python
|
||||||
# hyprland
|
# hyprland
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
@ -422,7 +428,7 @@ Emacs service
|
||||||
#+begin_src nix
|
#+begin_src nix
|
||||||
services.emacs = {
|
services.emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = with pkgs; ((emacsPackagesFor emacsPgtkNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ]));
|
package = with pkgs; ((emacsPackagesFor emacsNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ]));
|
||||||
};
|
};
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
@ -1217,7 +1223,7 @@ I also use home-manager for managing dotfiles. This means that everything is con
|
||||||
source = ../fish/functions;
|
source = ../fish/functions;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.qutebrowser.enable = true;
|
# programs.qutebrowser.enable = true;
|
||||||
home.file.".config/qutebrowser" = {
|
home.file.".config/qutebrowser" = {
|
||||||
source = ../qutebrowser;
|
source = ../qutebrowser;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
|
@ -1294,7 +1300,7 @@ I also use home-manager for managing dotfiles. This means that everything is con
|
||||||
myip = "curl icanhazip.com";
|
myip = "curl icanhazip.com";
|
||||||
};
|
};
|
||||||
initExtra = ''
|
initExtra = ''
|
||||||
pfetch
|
macchina
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
75
flake.lock
75
flake.lock
|
@ -1,37 +1,18 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"flake-compat": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1650374568,
|
|
||||||
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "b4a34015c698c7793d592d66adbab377907a2be8",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"nmd": "nmd",
|
|
||||||
"nmt": "nmt",
|
|
||||||
"utils": "utils"
|
"utils": "utils"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1655594877,
|
"lastModified": 1656927578,
|
||||||
"narHash": "sha256-AQ39Vlb6zhsJqIRz2cN923+ESBxHmeHMHoPqA80xOCE=",
|
"narHash": "sha256-ZSFrM/1PlJOqCb3mN88ZUh9dkQvNLU/nkoQ2tu02/FM=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "5197e5df7d3a148b1ad080235f70800987bc3549",
|
"rev": "f2445620d177e295e711c1b2bc6c01ed6df26c16",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -49,11 +30,11 @@
|
||||||
"wlroots": "wlroots"
|
"wlroots": "wlroots"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1655497428,
|
"lastModified": 1656957531,
|
||||||
"narHash": "sha256-B1P/EDJvho3lBxqtGAXKBlPDXlF/7bLHeC+h2aTPkWc=",
|
"narHash": "sha256-pdbXjyWo9nkK+Uun6AjwCMPFgfS32pF91bsoD1ebq6I=",
|
||||||
"owner": "vaxerski",
|
"owner": "vaxerski",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "f7bdc2e87020ea7308035bceaa2ab659af91d2de",
|
"rev": "cc8b8f595fa5c20b394394fe777451d4873608b3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -64,11 +45,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1655567057,
|
"lastModified": 1656753965,
|
||||||
"narHash": "sha256-Cc5hQSMsTzOHmZnYm8OSJ5RNUp22bd5NADWLHorULWQ=",
|
"narHash": "sha256-BCrB3l0qpJokOnIVc3g2lHiGhnjUi0MoXiw6t1o8H1E=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e0a42267f73ea52adc061a64650fddc59906fc99",
|
"rev": "0ea7a8f1b939d74e5df8af9a8f7342097cdf69eb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -78,38 +59,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nmd": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1653339422,
|
|
||||||
"narHash": "sha256-8nc7lcYOgih3YEmRMlBwZaLLJYpLPYKBlewqHqx8ieg=",
|
|
||||||
"owner": "rycee",
|
|
||||||
"repo": "nmd",
|
|
||||||
"rev": "9e7a20e6ee3f6751f699f79c0b299390f81f7bcd",
|
|
||||||
"type": "gitlab"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "rycee",
|
|
||||||
"repo": "nmd",
|
|
||||||
"type": "gitlab"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nmt": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1648075362,
|
|
||||||
"narHash": "sha256-u36WgzoA84dMVsGXzml4wZ5ckGgfnvS0ryzo/3zn/Pc=",
|
|
||||||
"owner": "rycee",
|
|
||||||
"repo": "nmt",
|
|
||||||
"rev": "d83601002c99b78c89ea80e5e6ba21addcfe12ae",
|
|
||||||
"type": "gitlab"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "rycee",
|
|
||||||
"repo": "nmt",
|
|
||||||
"type": "gitlab"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
|
@ -136,11 +85,11 @@
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"host": "gitlab.freedesktop.org",
|
"host": "gitlab.freedesktop.org",
|
||||||
"lastModified": 1654618691,
|
"lastModified": 1655824477,
|
||||||
"narHash": "sha256-8y3u8CoigjoZOVbA2wCWBHlDNEakv0AVxU46/cOC00s=",
|
"narHash": "sha256-1kskHOLsnisR3kqIL5IHrQbQG/4xoXxeEf1ExMV6/RU=",
|
||||||
"owner": "wlroots",
|
"owner": "wlroots",
|
||||||
"repo": "wlroots",
|
"repo": "wlroots",
|
||||||
"rev": "b89ed9015c3fbe8d339e9d65cf70fdca6e5645bc",
|
"rev": "5c4384a1330faedf975c8b8644881d50390f3613",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
173
mpv/scripts/chapters.js
Normal file
173
mpv/scripts/chapters.js
Normal file
|
@ -0,0 +1,173 @@
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
//display chapter on osd and easily switch between chapters by click on title of chapter
|
||||||
|
mp.register_event("file-loaded", init);
|
||||||
|
mp.observe_property("chapter", "number", onChapterChange);
|
||||||
|
mp.observe_property("chapter-list/count", "number", init);
|
||||||
|
var options = {
|
||||||
|
font_size: 16,
|
||||||
|
font_color: "00FFFF",
|
||||||
|
border_size: 1.0,
|
||||||
|
border_color: "000000",
|
||||||
|
font_color_currentChapter: "C27F1B",
|
||||||
|
};
|
||||||
|
var playinfo = {
|
||||||
|
chapters: [], //array
|
||||||
|
chaptercount: "", // int
|
||||||
|
assinterface: [], //array(deprecated, use single assdraw instead)
|
||||||
|
currentChapter: "", //int
|
||||||
|
loaded:false,
|
||||||
|
};
|
||||||
|
var toggle_switch = false;
|
||||||
|
var assdraw = mp.create_osd_overlay("ass-events");
|
||||||
|
var autohidedelay = mp.get_property_number("cursor-autohide");
|
||||||
|
//function
|
||||||
|
function init() {
|
||||||
|
playinfo.chapters = getChapters();
|
||||||
|
playinfo.chaptercount = playinfo.chapters.length;
|
||||||
|
if(playinfo.chaptercount == 0){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
while (playinfo.chaptercount * options.font_size > 1000 / 1.5) {
|
||||||
|
options.font_size = options.font_size - 1;
|
||||||
|
}
|
||||||
|
drawChapterList();
|
||||||
|
mp.msg.info("initiated");
|
||||||
|
playinfo.loaded = true;
|
||||||
|
}
|
||||||
|
function getChapters() {
|
||||||
|
var chapterCount = mp.get_property("chapter-list/count");
|
||||||
|
if (chapterCount === 0) {
|
||||||
|
return ["null"];
|
||||||
|
} else {
|
||||||
|
var chaptersArray = [];
|
||||||
|
for (var index = 0; index < chapterCount; index++) {
|
||||||
|
var chapterTitle = mp.get_property_native(
|
||||||
|
"chapter-list/" + index + "/title"
|
||||||
|
);
|
||||||
|
|
||||||
|
if (chapterTitle != undefined) {
|
||||||
|
chaptersArray.push(chapterTitle);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return chaptersArray;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawChapterList() {
|
||||||
|
var resY = 0;
|
||||||
|
var resX = 0;
|
||||||
|
var assdrawdata = "";
|
||||||
|
function setPos(str, _X, _Y) {
|
||||||
|
str = str + "{\\pos(" + _X + ", " + _Y + ")}";
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
function setborderSize(str) {
|
||||||
|
str = str + "{\\bord" + options.border_size + "}";
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
function setborderColor(str) {
|
||||||
|
str = str + "{\\3c&H" + options.border_color + "&}";
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
function setFontColor(str, index) {
|
||||||
|
var _color;
|
||||||
|
if (playinfo.currentChapter == index) {
|
||||||
|
_color = options.font_color_currentChapter;
|
||||||
|
} else {
|
||||||
|
_color = options.font_color;
|
||||||
|
}
|
||||||
|
str = str + "{\\c&H" + _color + "&}";
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
function setFont(str) {
|
||||||
|
str = str + "{\\fs" + options.font_size + "}";
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
function setEndofmodifiers(str) {
|
||||||
|
str = str + "{\\p0}";
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
function setEndofLine(str) {
|
||||||
|
str = str + "\n";
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
playinfo.chapters.forEach(function (element, index) {
|
||||||
|
assdrawdata = setPos(assdrawdata, resX, resY);
|
||||||
|
assdrawdata = setborderSize(assdrawdata);
|
||||||
|
assdrawdata = setborderColor(assdrawdata);
|
||||||
|
assdrawdata = setFontColor(assdrawdata, index);
|
||||||
|
assdrawdata = setFont(assdrawdata);
|
||||||
|
assdrawdata = setEndofmodifiers(assdrawdata);
|
||||||
|
assdrawdata = assdrawdata + element;
|
||||||
|
assdrawdata = setEndofLine(assdrawdata);
|
||||||
|
resY += options.font_size;
|
||||||
|
});
|
||||||
|
assdraw.data = assdrawdata
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggleOverlay() {
|
||||||
|
if(!playinfo.loaded){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!toggle_switch) {
|
||||||
|
drawChapterList();
|
||||||
|
assdraw.update();
|
||||||
|
mp.set_property("cursor-autohide", "no");
|
||||||
|
toggle_switch = !toggle_switch;
|
||||||
|
} else {
|
||||||
|
assdraw.remove();
|
||||||
|
mp.set_property("cursor-autohide", autohidedelay);
|
||||||
|
toggle_switch = !toggle_switch;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function onChapterChange() {
|
||||||
|
playinfo.currentChapter = mp.get_property_native("chapter");
|
||||||
|
if (playinfo.currentChapter != undefined) {
|
||||||
|
drawChapterList();
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((playinfo.currentChapter != undefined) & toggle_switch) {
|
||||||
|
assdraw.update();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function pos2chapter(x, y, overallscale) {
|
||||||
|
var vectical = y / (options.font_size * overallscale);
|
||||||
|
if(vectical > playinfo.chaptercount){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
var intVectical = Math.floor(vectical);
|
||||||
|
var lengthofTitleClicked = playinfo.chapters[intVectical].length;
|
||||||
|
var lengthofTitleClicked_px =
|
||||||
|
(lengthofTitleClicked * options.font_size) / overallscale;
|
||||||
|
if (x < lengthofTitleClicked_px) {
|
||||||
|
return intVectical;
|
||||||
|
} else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function getOverallScale() {
|
||||||
|
return mp.get_osd_size().height / 720;
|
||||||
|
}
|
||||||
|
function onMBTN_LEFT() {
|
||||||
|
//get mouse position
|
||||||
|
if(!playinfo.loaded){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (toggle_switch) {
|
||||||
|
var overallscale = getOverallScale();
|
||||||
|
var pos = mp.get_mouse_pos();
|
||||||
|
var chapterClicked = pos2chapter(pos.x, pos.y, overallscale);
|
||||||
|
if (chapterClicked != null) {
|
||||||
|
mp.set_property_native("chapter", chapterClicked);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mp.add_key_binding("TAB", "tab", function () {
|
||||||
|
toggleOverlay();
|
||||||
|
});
|
||||||
|
mp.add_key_binding("MBTN_LEFT", "mbtn_left", function () {
|
||||||
|
onMBTN_LEFT();
|
||||||
|
});
|
|
@ -1547,6 +1547,7 @@ c.hints.selectors['all'].append('mdc-switch__native-control')
|
||||||
c.hints.selectors['all'].append('[for="checkbox"]')
|
c.hints.selectors['all'].append('[for="checkbox"]')
|
||||||
c.hints.selectors['all'].append('label')
|
c.hints.selectors['all'].append('label')
|
||||||
c.hints.selectors['all'].append('hui-button-card')
|
c.hints.selectors['all'].append('hui-button-card')
|
||||||
|
c.hints.selectors['all'].append('a[class="button"]')
|
||||||
|
|
||||||
## Make characters in hint strings uppercase.
|
## Make characters in hint strings uppercase.
|
||||||
## Type: Bool
|
## Type: Bool
|
||||||
|
|
2
scripts/kde-fflof
Executable file
2
scripts/kde-fflof
Executable file
|
@ -0,0 +1,2 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
ww -fa firefox -c firefox
|
4
scripts/kde-list-windows.js
Normal file
4
scripts/kde-list-windows.js
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
const clients = workspace.clientList();
|
||||||
|
for (var i = 0; i < clients.length; i++) {
|
||||||
|
print(clients[i].caption);
|
||||||
|
};
|
37
scripts/kde-list-windows.py
Executable file
37
scripts/kde-list-windows.py
Executable file
|
@ -0,0 +1,37 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
# Author: Andrew Shark
|
||||||
|
|
||||||
|
# This script lists windows in kwin on wayland. It is useful, because wmctrl does not work on wayland.
|
||||||
|
# I read journalctl because printing in kwin script is currently broken. See https://bugs.kde.org/show_bug.cgi?id=445058
|
||||||
|
# https://unix.stackexchange.com/questions/706477/is-there-a-way-to-get-list-of-windows-on-kde-wayland - described this script here.
|
||||||
|
|
||||||
|
import subprocess
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
|
||||||
|
def get_list_of_windows():
|
||||||
|
datetime_now = datetime.now()
|
||||||
|
|
||||||
|
script = "/home/chris/.dotfiles/scripts/kde-list-windows.js"
|
||||||
|
|
||||||
|
reg_script_number = subprocess.run("dbus-send --print-reply --dest=org.kde.KWin \
|
||||||
|
/Scripting org.kde.kwin.Scripting.loadScript \
|
||||||
|
string:" + script + " | awk 'END {print $2}'",
|
||||||
|
capture_output=True, shell=True).stdout.decode().split("\n")[0]
|
||||||
|
|
||||||
|
subprocess.run("dbus-send --print-reply --dest=org.kde.KWin /" + reg_script_number + " org.kde.kwin.Script.run",
|
||||||
|
shell=True, stdout=subprocess.DEVNULL)
|
||||||
|
subprocess.run("dbus-send --print-reply --dest=org.kde.KWin /" + reg_script_number + " org.kde.kwin.Script.stop",
|
||||||
|
shell=True, stdout=subprocess.DEVNULL) # unregister number
|
||||||
|
|
||||||
|
since = str(datetime_now)
|
||||||
|
|
||||||
|
msg = subprocess.run("journalctl _COMM=kwin_wayland -o cat --since \"" + since + "\"",
|
||||||
|
capture_output=True, shell=True).stdout.decode().rstrip().split("\n")
|
||||||
|
msg = [el.lstrip("js: ") for el in msg]
|
||||||
|
|
||||||
|
return msg
|
||||||
|
|
||||||
|
|
||||||
|
print('\n'.join(get_list_of_windows()))
|
14
scripts/kdewindows
Executable file
14
scripts/kdewindows
Executable file
|
@ -0,0 +1,14 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
script="/home/chris/.dotfiles/scripts/kde-list-windows.js"
|
||||||
|
|
||||||
|
num=$(dbus-send --print-reply --dest=org.kde.KWin \
|
||||||
|
/Scripting org.kde.kwin.Scripting.loadScript \
|
||||||
|
string:"$script" | awk 'END {print $2}' )
|
||||||
|
|
||||||
|
dbus-send --print-reply --dest=org.kde.KWin /$num \
|
||||||
|
org.kde.kwin.Script.run
|
||||||
|
# I'm not sure if some delay is in order here to let your script complete?
|
||||||
|
sleep 1
|
||||||
|
dbus-send --print-reply --dest=org.kde.KWin /$num \
|
||||||
|
org.kde.kwin.Script.stop
|
9
scripts/miner-unpaid.sh
Executable file
9
scripts/miner-unpaid.sh
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
eth=$(curl -X GET "https://eth.2miners.com/api/accounts/bc1qarhl2mwgdnatdn3q8fjy794c7jtmhtvjvsztd4" -H "accept: application/json" | jq '.stats.balance' | sed 's/^/0\.00/')
|
||||||
|
echo "current eth: $eth"
|
||||||
|
|
||||||
|
rate=$(curl rate.sx/eth | rg avg | awk '{print $2}' | sed 's/\$//')
|
||||||
|
echo $rate
|
||||||
|
|
||||||
|
dollar=$(echo "$eth * $rate" | bc -l)
|
||||||
|
echo $dollar
|
|
@ -64,8 +64,6 @@
|
||||||
# desktopManager.gnome.enable = true;
|
# desktopManager.gnome.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# programs.qt5ct.enable = true;
|
|
||||||
|
|
||||||
# Configure keymap in X11
|
# Configure keymap in X11
|
||||||
services.xserver.layout = "us";
|
services.xserver.layout = "us";
|
||||||
# services.xserver.xkbOptions = "eurosign:e";
|
# services.xserver.xkbOptions = "eurosign:e";
|
||||||
|
@ -84,7 +82,7 @@
|
||||||
wireplumber.enable = true;
|
wireplumber.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Needed for some pipewire progs
|
# Needed for some pipewire progs and other gtk apps
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
|
|
||||||
# Turn on flatpak
|
# Turn on flatpak
|
||||||
|
@ -96,13 +94,14 @@
|
||||||
# Set default shell to be dash for speed
|
# Set default shell to be dash for speed
|
||||||
# Apparently this is bad because a lot of nix relies on bash
|
# Apparently this is bad because a lot of nix relies on bash
|
||||||
# environment.binsh = "${pkgs.dash}/bin/dash";
|
# environment.binsh = "${pkgs.dash}/bin/dash";
|
||||||
|
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
EDITOR = "emacsclient -t -a";
|
EDITOR = "emacsclient -t -a";
|
||||||
VISUAL = "emacsclient -c -a";
|
VISUAL = "emacsclient -c -a";
|
||||||
|
|
||||||
# Fixing Qt apps in other environments
|
# Fixing Qt apps in other environments
|
||||||
# QT_XCB_GL_INTEGRATION = "xcb_egl";
|
# QT_XCB_GL_INTEGRATION = "xcb_egl";
|
||||||
QT_QPA_PLATFORM_PLUGIN_PATH = "${pkgs.qt5.qtbase.bin}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms";
|
# QT_QPA_PLATFORM_PLUGIN_PATH = "${pkgs.qt5.qtbase.bin}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms";
|
||||||
};
|
};
|
||||||
environment.homeBinInPath = true;
|
environment.homeBinInPath = true;
|
||||||
programs.fish.enable = true;
|
programs.fish.enable = true;
|
||||||
|
@ -188,6 +187,7 @@
|
||||||
nerdfonts
|
nerdfonts
|
||||||
latte-dock
|
latte-dock
|
||||||
bat
|
bat
|
||||||
|
jq
|
||||||
alacritty
|
alacritty
|
||||||
libsForQt5.bismuth
|
libsForQt5.bismuth
|
||||||
libnotify
|
libnotify
|
||||||
|
@ -214,6 +214,7 @@
|
||||||
qrencode
|
qrencode
|
||||||
brave
|
brave
|
||||||
scribus
|
scribus
|
||||||
|
qutebrowser
|
||||||
# firefox
|
# firefox
|
||||||
kate
|
kate
|
||||||
kdialog
|
kdialog
|
||||||
|
@ -253,6 +254,7 @@
|
||||||
OVMFFull
|
OVMFFull
|
||||||
element-desktop-wayland
|
element-desktop-wayland
|
||||||
scrcpy
|
scrcpy
|
||||||
|
python
|
||||||
# hyprland
|
# hyprland
|
||||||
blender
|
blender
|
||||||
neofetch
|
neofetch
|
||||||
|
@ -326,7 +328,7 @@
|
||||||
|
|
||||||
services.emacs = {
|
services.emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = with pkgs; ((emacsPackagesFor emacsPgtkNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ]));
|
package = with pkgs; ((emacsPackagesFor emacsNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ]));
|
||||||
};
|
};
|
||||||
services.samba-wsdd.enable = true;
|
services.samba-wsdd.enable = true;
|
||||||
services.samba = {
|
services.samba = {
|
||||||
|
|
|
@ -64,8 +64,6 @@
|
||||||
desktopManager.plasma5.enable = true;
|
desktopManager.plasma5.enable = true;
|
||||||
# desktopManager.gnome.enable = true;
|
# desktopManager.gnome.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# programs.qt5ct.enable = true;
|
|
||||||
|
|
||||||
# Configure keymap in X11
|
# Configure keymap in X11
|
||||||
services.xserver.layout = "us";
|
services.xserver.layout = "us";
|
||||||
|
@ -89,7 +87,7 @@
|
||||||
wireplumber.enable = true;
|
wireplumber.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Needed for some pipewire progs
|
# Needed for some pipewire progs and other gtk apps
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
|
|
||||||
# Turn on flatpak
|
# Turn on flatpak
|
||||||
|
@ -123,13 +121,14 @@
|
||||||
# Set default shell to be dash for speed
|
# Set default shell to be dash for speed
|
||||||
# Apparently this is bad because a lot of nix relies on bash
|
# Apparently this is bad because a lot of nix relies on bash
|
||||||
# environment.binsh = "${pkgs.dash}/bin/dash";
|
# environment.binsh = "${pkgs.dash}/bin/dash";
|
||||||
|
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
EDITOR = "emacsclient -t -a";
|
EDITOR = "emacsclient -t -a";
|
||||||
VISUAL = "emacsclient -c -a";
|
VISUAL = "emacsclient -c -a";
|
||||||
|
|
||||||
# Fixing Qt apps in other environments
|
# Fixing Qt apps in other environments
|
||||||
# QT_XCB_GL_INTEGRATION = "xcb_egl";
|
# QT_XCB_GL_INTEGRATION = "xcb_egl";
|
||||||
QT_QPA_PLATFORM_PLUGIN_PATH = "${pkgs.qt5.qtbase.bin}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms";
|
# QT_QPA_PLATFORM_PLUGIN_PATH = "${pkgs.qt5.qtbase.bin}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms";
|
||||||
};
|
};
|
||||||
environment.homeBinInPath = true;
|
environment.homeBinInPath = true;
|
||||||
programs.fish.enable = true;
|
programs.fish.enable = true;
|
||||||
|
@ -202,6 +201,7 @@
|
||||||
nerdfonts
|
nerdfonts
|
||||||
latte-dock
|
latte-dock
|
||||||
bat
|
bat
|
||||||
|
jq
|
||||||
alacritty
|
alacritty
|
||||||
libsForQt5.bismuth
|
libsForQt5.bismuth
|
||||||
libnotify
|
libnotify
|
||||||
|
@ -228,6 +228,7 @@
|
||||||
qrencode
|
qrencode
|
||||||
brave
|
brave
|
||||||
scribus
|
scribus
|
||||||
|
qutebrowser
|
||||||
# firefox
|
# firefox
|
||||||
kate
|
kate
|
||||||
kdialog
|
kdialog
|
||||||
|
@ -267,6 +268,7 @@
|
||||||
OVMFFull
|
OVMFFull
|
||||||
element-desktop-wayland
|
element-desktop-wayland
|
||||||
scrcpy
|
scrcpy
|
||||||
|
python
|
||||||
# hyprland
|
# hyprland
|
||||||
neofetch
|
neofetch
|
||||||
afetch
|
afetch
|
||||||
|
@ -343,7 +345,7 @@
|
||||||
|
|
||||||
services.emacs = {
|
services.emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = with pkgs; ((emacsPackagesFor emacsPgtkNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ]));
|
package = with pkgs; ((emacsPackagesFor emacsNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ]));
|
||||||
};
|
};
|
||||||
services.samba-wsdd.enable = true;
|
services.samba-wsdd.enable = true;
|
||||||
services.samba = {
|
services.samba = {
|
||||||
|
|
|
@ -340,7 +340,7 @@
|
||||||
source = ../fish/functions;
|
source = ../fish/functions;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.qutebrowser.enable = true;
|
# programs.qutebrowser.enable = true;
|
||||||
home.file.".config/qutebrowser" = {
|
home.file.".config/qutebrowser" = {
|
||||||
source = ../qutebrowser;
|
source = ../qutebrowser;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
|
|
Loading…
Reference in a new issue