aboutsummaryrefslogtreecommitdiff
path: root/hosts/mercury/hjem.nix
diff options
context:
space:
mode:
authorCollin Williams <96917990+bluedragon1221@users.noreply.github.com>2026-10-02 11:23:45 -0500
committerCollin Williams <96917990+bluedragon1221@users.noreply.github.com>2026-10-02 11:23:45 -0500
commitb768ad0ca4208e8b3588b881067c43d85246e967 (patch)
tree460dca5c6568307efc94e256186346be0271478a /hosts/mercury/hjem.nix
parent84364a52c3d7ca2f550cb3f7af56848405902bee (diff)
experiment with modular services; more unix domain sockets, clean up old code
Diffstat (limited to 'hosts/mercury/hjem.nix')
-rw-r--r--hosts/mercury/hjem.nix47
1 files changed, 45 insertions, 2 deletions
diff --git a/hosts/mercury/hjem.nix b/hosts/mercury/hjem.nix
index 307317a..e27e87c 100644
--- a/hosts/mercury/hjem.nix
+++ b/hosts/mercury/hjem.nix
@@ -1,4 +1,8 @@
-{pkgs, ...}: let
+{
+ pkgs,
+ lib,
+ ...
+}: let
rust-shell = let
rustProfile = pkgs.buildEnv {
name = "rust-profile";
@@ -26,16 +30,55 @@
export PYTHONSTARTUP=""
exec $SHELL
'';
+
+ smallObsidian = let
+ pname = "obsidian";
+ version = "1.13.7";
+ in
+ pkgs.stdenv.mkDerivation {
+ inherit pname version;
+
+ src = pkgs.fetchurl {
+ url = "https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/obsidian-${version}.tar.gz";
+ hash = "sha256-08vjdcv6QCTbGRC5gZFkn0E0xcSK7l5gtudxOYfc2yg=";
+ };
+ nativeBuildInputs = with pkgs; [
+ autoPatchelfHook
+ makeWrapper
+ imagemagick
+ asar
+ ];
+ installPhase = ''
+ runHook preInstall
+ mkdir -p $out/bin
+
+ # Mark Obsidian's app:// scheme `corsEnabled` to fix the internal PDF
+ # viewer; see https://github.com/NixOS/nixpkgs/pull/525772 for details.
+ # Remove once upstream registers the scheme with `corsEnabled`.
+ asar extract resources/app.asar app-src
+ substituteInPlace app-src/main.js \
+ --replace-fail "supportFetchAPI: true," "supportFetchAPI: true, corsEnabled: true,"
+ asar pack app-src resources/app.asar
+
+ makeWrapper ${pkgs.electron}/bin/electron $out/bin/obsidian \
+ --add-flags $out/share/obsidian/app.asar \
+ --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-wayland-ime=true --wayland-text-input-version=3}}"
+ install -m 755 -D obsidian-cli $out/bin/obsidian-cli
+ install -m 444 -D resources/app.asar $out/share/obsidian/app.asar
+ install -m 444 -D resources/obsidian.asar $out/share/obsidian/obsidian.asar
+ runHook postInstall
+ '';
+ };
in {
packages = with pkgs; [
anki
libreoffice-qt
musescore
vscodium
+ smallObsidian
noctalia-shell
- prismlauncher
mpv
irssi