Compare commits

...

2 commits

Author SHA1 Message Date
Jurn Wubben
0ece7c4a29 Fixed mako; added visicut 2025-07-27 23:12:03 +02:00
Jurn Wubben
f79aa0d5d6 WLUMA: was peaking out cpu usgage via dbus?!? 2025-07-27 23:11:24 +02:00
7 changed files with 64 additions and 41 deletions

View file

@ -7,6 +7,7 @@
imports = [
inputs.git-hooks-nix.flakeModule
./hosts
./pkgs
];
perSystem = {

View file

@ -2,14 +2,17 @@
pkgs,
lib,
osConfig,
self,
...
}: {
home.packages = lib.mkIf osConfig.niksos.desktop.apps [
home.packages =
lib.optionals osConfig.niksos.desktop.apps [
pkgs.spotify
pkgs.signal-desktop
pkgs.bambu-studio
pkgs.gimp
pkgs.inkscape
pkgs.thunderbird
];
]
++ lib.optional osConfig.niksos.hardware.portable.enable self.packages.${pkgs.system}.visicut;
}

View file

@ -3,6 +3,6 @@
in {
services.mako = {
inherit (osConfig.programs.hyprland) enable;
settings.default_timeout = 5000;
settings.default-timeout = 5000;
};
}

View file

@ -2,7 +2,6 @@
imports = [
./hardware-configuration.nix
./virt.nix
./wluma.nix
];
programs.appimage.enable = true;

View file

@ -1,31 +0,0 @@
{
hardware.sensor.iio.enable = true; # brightness sensor
home-manager.users.jsw.services.wluma = {
enable = true;
settings = {
als.iio = {
path = "/sys/bus/iio/devices";
thresholds = {
"0" = "night";
"10" = "dark";
"100" = "normal";
"20" = "dim";
"200" = "bright";
"500" = "outdoors";
};
};
output.backlight = [
{
capturer = "none";
name = "eDP-1";
path = "/sys/class/backlight/amdgpu_bl1";
}
{
capturer = "none";
name = "keyboard";
path = "/sys/bus/platform/devices/cros-keyboard-leds.5.auto/leds/chromeos::kbd_backlight";
}
];
};
};
}

8
pkgs/default.nix Normal file
View file

@ -0,0 +1,8 @@
{
systems = ["x86_64-linux"];
perSystem = {pkgs, ...}: {
packages = {
visicut = pkgs.callPackage ./visicut {};
};
};
}

43
pkgs/visicut/default.nix Normal file
View file

@ -0,0 +1,43 @@
{
appimageTools,
fetchurl,
lib,
}: let
pname = "VisiCut";
version = "2.1";
src = fetchurl {
url = "https://github.com/t-oster/VisiCut/releases/download/${version}/VisiCut-${version}+devel-x86_64.AppImage";
hash = "sha256-Mq6Rjozshwk8asY+5egScQ5TkoxzRnWlZ9p0WeEOoiE=";
};
appimageContents = appimageTools.extract {
inherit pname version src;
postExtract = ''
substituteInPlace $out/${desktopFile} --replace-fail 'Exec=visicut' 'Exec=${pname}'
'';
};
desktopFile = "VisiCut.desktop";
iconFile = "visicut.png";
in
appimageTools.wrapType2 {
inherit pname version src;
extraInstallCommands = ''
install -m 444 -D ${appimageContents}/${desktopFile} $out/share/applications/${desktopFile}
install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/128x128/apps/${iconFile} \
$out/share/icons/hicolor/128x128/apps/${iconFile}
'';
meta = {
description = "A userfriendly tool to prepare, save and send Jobs to Lasercutters.";
homepage = "https://visicut.org/";
downloadPage = "https://github.com/t-oster/VisiCut/releases/";
license = lib.licenses.lgpl3;
sourceProvenance = with lib.sourceTypes; [binaryNativeCode];
# maintainers = with lib.maintainers; [onny];
mainProgram = "VisiCut";
platforms = ["x86_64-linux"];
};
}