aboutsummaryrefslogtreecommitdiff
path: root/hosts/mercury
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/mercury')
-rw-r--r--hosts/mercury/hjem.nix47
-rw-r--r--hosts/mercury/networking.nix16
-rw-r--r--hosts/mercury/nixos.nix15
3 files changed, 54 insertions, 24 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
diff --git a/hosts/mercury/networking.nix b/hosts/mercury/networking.nix
index cc1f995..dc0a3f3 100644
--- a/hosts/mercury/networking.nix
+++ b/hosts/mercury/networking.nix
@@ -18,25 +18,11 @@
systemd.network = {
enable = true;
-
networks."11-default" = {
name = "wl*";
networkConfig.DHCP = "yes";
-
- # never accept dhcp dns
- # dhcpV4Config.UseDNS = "no";
- # dhcpV6Config.UseDNS = "no";
};
};
- services.resolved = {
- enable = true;
- settings.Resolve = {
- # DNSOverTLS = true;
- # DNSSEC = "allow-downgrade";
-
- # LLMNR = false;
- # MulticastDNS = false;
- };
- };
+ services.resolved.enable = true;
}
diff --git a/hosts/mercury/nixos.nix b/hosts/mercury/nixos.nix
index ff386cd..4eab7b4 100644
--- a/hosts/mercury/nixos.nix
+++ b/hosts/mercury/nixos.nix
@@ -22,15 +22,16 @@
hosts
|> (lib.mapAttrsToList (hostname: hostAttrs:
if hostAttrs ? ip
- then ''
- Host ${hostname}
- ${
+ then
+ ''
+ Host ${hostname}
+ HostName ${hostAttrs.ip}
+ ''
+ + (
if hostAttrs ? jump
- then "ProxyJump ${hostAttrs.jump}"
+ then " ProxyJump ${hostAttrs.jump}"
else ""
- }
- HostName ${hostAttrs.ip}
- ''
+ )
else ""))
|> (builtins.filter (s: s != ""))
|> (lib.concatStringsSep "\n");