summaryrefslogtreecommitdiffstats
path: root/krebs
diff options
context:
space:
mode:
Diffstat (limited to 'krebs')
-rw-r--r--krebs/3modules/os-release.nix38
-rw-r--r--krebs/5pkgs/simple/flameshot-once/flameshot/default.nix1
-rw-r--r--krebs/5pkgs/simple/flameshot-once/flameshot/flameshot-12.applauncher.patch26
-rw-r--r--krebs/5pkgs/simple/q-power_supply.nix146
4 files changed, 49 insertions, 162 deletions
diff --git a/krebs/3modules/os-release.nix b/krebs/3modules/os-release.nix
index bfd352825..929ec45d9 100644
--- a/krebs/3modules/os-release.nix
+++ b/krebs/3modules/os-release.nix
@@ -8,28 +8,34 @@ let
nixos-version = "${nixos-version-id} (${nixos-codeName})";
nixos-pretty-name = "NixOS ${nixos-version}";
- stockholm-version-id = let
- eval = builtins.tryEval (removeSuffix "\n" (readFile <stockholm-version>));
- in
- if eval.success then eval.value else "unknown";
-
- stockholm-version = "${stockholm-version-id}";
+ stockholm-version = "${config.krebs.os-release.stockholm-version-id}";
stockholm-pretty-name = "stockholm ${stockholm-version}";
version = "${stockholm-version}/${nixos-version}";
- version-id = "${stockholm-version-id}/${nixos-version-id}";
+ version-id = "${config.krebs.os-release.stockholm-version-id}/${nixos-version-id}";
pretty-name = "${stockholm-pretty-name} / ${nixos-pretty-name}";
home-url = http://cgit.ni.krebsco.de/stockholm;
in
{
- # http://0pointer.de/public/systemd-man/os-release.html
- environment.etc."os-release".text = mkForce ''
- NAME="stockholm/NixOS"
- ID=stockholm
- VERSION="${version}"
- VERSION_ID="${version-id}"
- PRETTY_NAME="${pretty-name}"
- HOME_URL="${home-url}"
- '';
+ options.krebs.os-release = {
+ stockholm-version-id = lib.mkOption {
+ type = lib.types.str;
+ default = let
+ eval = builtins.tryEval (removeSuffix "\n" (readFile <stockholm-version>));
+ in
+ if eval.success then eval.value else "unknown";
+ };
+ };
+ config = {
+ # http://0pointer.de/public/systemd-man/os-release.html
+ environment.etc."os-release".text = mkForce ''
+ NAME="stockholm/NixOS"
+ ID=stockholm
+ VERSION="${version}"
+ VERSION_ID="${version-id}"
+ PRETTY_NAME="${pretty-name}"
+ HOME_URL="${home-url}"
+ '';
+ };
}
diff --git a/krebs/5pkgs/simple/flameshot-once/flameshot/default.nix b/krebs/5pkgs/simple/flameshot-once/flameshot/default.nix
index f60acef08..43cfdb00d 100644
--- a/krebs/5pkgs/simple/flameshot-once/flameshot/default.nix
+++ b/krebs/5pkgs/simple/flameshot-once/flameshot/default.nix
@@ -12,5 +12,6 @@ pkgs.flameshot.overrideAttrs (old: rec {
patches = old.patches or [] ++ [
./flameshot-12.imgur.patch
./flameshot-12.history.patch
+ ./flameshot-12.applauncher.patch
];
})
diff --git a/krebs/5pkgs/simple/flameshot-once/flameshot/flameshot-12.applauncher.patch b/krebs/5pkgs/simple/flameshot-once/flameshot/flameshot-12.applauncher.patch
new file mode 100644
index 000000000..6937c55b3
--- /dev/null
+++ b/krebs/5pkgs/simple/flameshot-once/flameshot/flameshot-12.applauncher.patch
@@ -0,0 +1,26 @@
+diff --git a/src/tools/launcher/applauncherwidget.cpp b/src/tools/launcher/applauncherwidget.cpp
+index 8a202c89..7427aeb9 100644
+--- a/src/tools/launcher/applauncherwidget.cpp
++++ b/src/tools/launcher/applauncherwidget.cpp
+@@ -20,6 +20,7 @@
+ #include <QProcess>
+ #include <QStandardPaths>
+ #include <QTabWidget>
++#include <stdlib.h>
+
+ namespace {
+ #if defined(Q_OS_WIN)
+@@ -66,7 +67,12 @@ AppLauncherWidget::AppLauncherWidget(const QPixmap& p, QWidget* parent)
+ QDir appsDirLocal(dirLocal);
+ m_parser.processDirectory(appsDirLocal);
+
+- QString dir = QStringLiteral("/usr/share/applications/");
++ const char *USER = secure_getenv("USER");
++ QString dirUser = "/etc/profiles/per-user/" + QString::fromUtf8(USER) + "/share/applications/";
++ QDir appsDirUser(dirUser);
++ m_parser.processDirectory(appsDirUser);
++
++ QString dir = QStringLiteral("/run/current-system/sw/share/applications/");
+ QDir appsDir(dir);
+ m_parser.processDirectory(appsDir);
+ #endif
diff --git a/krebs/5pkgs/simple/q-power_supply.nix b/krebs/5pkgs/simple/q-power_supply.nix
deleted file mode 100644
index ef133bfbd..000000000
--- a/krebs/5pkgs/simple/q-power_supply.nix
+++ /dev/null
@@ -1,146 +0,0 @@
-{ gawk, gnused, writeDashBin }:
-
-writeDashBin "q-power_supply" ''
- power_supply() {(
- set -efu
- uevent=$1
- eval "$(${gnused}/bin/sed -n '
- s/^\([A-Z_]\+=[0-9A-Za-z_-]*\)$/export \1/p
- ' $uevent)"
- case $POWER_SUPPLY_NAME in
- AC|Mains)
- exit # not battery
- ;;
- esac
- exec </dev/null
- exec ${gawk}/bin/awk '
- function die(s) {
- printf "%s: %s\n", name, s
- exit 1
- }
-
- function print_hm(h, m) {
- m = (h - int(h)) * 60
- return sprintf("%dh%dm", h, m)
- }
-
- function print_bar(r) {
- return \
- (r >= .1 ? bar_gradient[0] : bar_background) "■" \
- (r >= .2 ? bar_gradient[1] : bar_background) "■" \
- (r >= .3 ? bar_gradient[2] : bar_background) "■" \
- (r >= .4 ? bar_gradient[3] : bar_background) "■" \
- (r >= .5 ? bar_gradient[4] : bar_background) "■" \
- (r >= .6 ? bar_gradient[5] : bar_background) "■" \
- (r >= .7 ? bar_gradient[6] : bar_background) "■" \
- (r >= .8 ? bar_gradient[7] : bar_background) "■" \
- (r >= .9 ? bar_gradient[8] : bar_background) "■" \
- (r >= 1 ? bar_gradient[9] : bar_background) "■" \
- sgr()
- }
-
- function rgb(r, g, b) {
- return sgr("38;2;" r ";" g ";" b)
- }
-
- function sgr(p) {
- return "\x1b[" p "m"
- }
-
- BEGIN {
- bar_gradient[0] = rgb(216, 100, 83)
- bar_gradient[1] = rgb(210, 113, 72)
- bar_gradient[2] = rgb(201, 125, 65)
- bar_gradient[3] = rgb(190, 137, 63)
- bar_gradient[4] = rgb(178, 148, 67)
- bar_gradient[5] = rgb(166, 158, 75)
- bar_gradient[6] = rgb(153, 167, 88)
- bar_gradient[7] = rgb(140, 174, 104)
- bar_gradient[8] = rgb(127, 181, 122)
- bar_gradient[9] = rgb(116, 187, 141)
- bar_background = rgb( 64, 64, 64)
- }
-
- END {
- name = ENVIRON["POWER_SUPPLY_NAME"]
- status = ENVIRON["POWER_SUPPLY_STATUS"]
-
- charge_unit = "Ah"
- charge_now = ENVIRON["POWER_SUPPLY_CHARGE_NOW"] / 10^6
- charge_full = ENVIRON["POWER_SUPPLY_CHARGE_FULL"] / 10^6
-
- current_unit = "A"
- current_now = ENVIRON["POWER_SUPPLY_CURRENT_NOW"] / 10^6
-
- energy_unit = "Wh"
- energy_now = ENVIRON["POWER_SUPPLY_ENERGY_NOW"] / 10^6
- energy_full = ENVIRON["POWER_SUPPLY_ENERGY_FULL"] / 10^6
-
- power_unit = "W"
- power_now = ENVIRON["POWER_SUPPLY_POWER_NOW"] / 10^6
-
- voltage_unit = "V"
- voltage_now = ENVIRON["POWER_SUPPLY_VOLTAGE_NOW"] / 10^6
- voltage_min_design = ENVIRON["POWER_SUPPLY_VOLTAGE_MIN_DESIGN"] / 10^6
-
- #printf "charge_now: %s\n", charge_now
- #printf "charge_full: %s\n", charge_full
- #printf "current_now: %s\n", current_now
- #printf "energy_now: %s\n", energy_now
- #printf "energy_full: %s\n", energy_full
- #printf "energy_full: %s\n", ENVIRON["POWER_SUPPLY_ENERGY_FULL"]
- #printf "energy_full: %s\n", ENVIRON["POWER_SUPPLY_ENERGY_FULL"] / 10^6
- #printf "power_now: %s\n", power_now
- #printf "voltage_now: %s\n", voltage_now
-
- if (current_now == 0 && voltage_now != 0) {
- current_now = power_now / voltage_now
- }
- if (power_now == 0) {
- power_now = current_now * voltage_now
- }
- if (charge_now == 0 && voltage_min_design != 0) {
- charge_now = energy_now / voltage_min_design
- }
- if (energy_now == 0) {
- energy_now = charge_now * voltage_min_design
- }
- if (charge_full == 0 && voltage_min_design != 0) {
- charge_full = energy_full / voltage_min_design
- }
- if (energy_full == 0) {
- energy_full = charge_full * voltage_min_design
- }
-
- if (charge_now == 0 || charge_full == 0) {
- die("unknown charge")
- }
-
- charge_ratio = charge_now / charge_full
-
- out = out name
- out = out sprintf(" %s", print_bar(charge_ratio))
- out = out sprintf(" %d%", charge_ratio * 100)
- out = out sprintf(" %.2f%s", charge_now, charge_unit)
- if (current_now != 0) {
- out = out sprintf("/%.1f%s", current_now, current_unit)
- }
- out = out sprintf(" %d%s", energy_full, energy_unit)
- if (power_now != 0) {
- out = out sprintf("/%.1f%s", power_now, power_unit)
- }
- if (current_now != 0) {
- out = out sprintf(" %s", print_hm(charge_now / current_now))
- }
-
- out = out " " status
-
- print out
- }
- '
- )}
-
- for uevent in /sys/class/power_supply/*/uevent; do
- power_supply "$uevent" || :
- done
-''