Compare commits

...

11 Commits

13 changed files with 132 additions and 68 deletions

View File

@@ -6,17 +6,18 @@
let
inherit (inputs.nixpkgs) lib;
utils = import ../utils { inherit lib; };
hostDirNames = utils.dirNames ../hosts;
hostnames = utils.dirNames ../hosts;
mkNode = hostname: meta: {
imports = [ ../hosts/${hostname} ];
host.name = hostname;
deployment = {
inherit (meta.deployment) targetHost targetUser tags;
buildOnTarget = builtins.any (t: t != "local" && t != "arm") meta.deployment.tags;
};
};
nodes = lib.genAttrs hostDirNames (hostname: mkNode hostname (utils.hostMeta ../hosts/${hostname}));
nodes = lib.genAttrs hostnames (hostname: mkNode hostname (utils.hostMeta ../hosts/${hostname}));
in
inputs.colmena.lib.makeHive (
{

View File

@@ -1,4 +1,4 @@
#!/usr/bin/python
#!/usr/bin/env python3
import argparse
import json

View File

@@ -1,3 +1,5 @@
if not vim.env.KITTY_WINDOW_ID then return end
require("image").setup({
backend = "kitty",
kitty_method = "normal",

View File

@@ -1,11 +1,11 @@
{
"config": {
"options": {},
"preferences": {
"ascii": "",
"asciiBibLaTeX": false,
"asciiBibTeX": true,
"autoAbbrev": false,
"autoAbbrevStyle": "",
"autoExport": "immediate",
"autoExportDelay": 5,
"autoExportIdleWait": 10,
@@ -13,18 +13,22 @@
"autoExportPathReplaceDirSep": "-",
"autoExportPathReplaceSpace": " ",
"automaticTags": true,
"autoPinDelay": 0,
"auxImport": false,
"baseAttachmentPath": "/home/h/doc/books",
"biblatexExtendedDateFormat": true,
"biblatexExtendedNameFormat": true,
"biblatexExtractEprint": true,
"biblatexUsePrefix": true,
"bibtexEditionOrdinal": false,
"bibtexParticleNoOp": false,
"bibtexURL": "off",
"cache": true,
"cacheFlushInterval": 5,
"cacheDelete": false,
"charmap": "",
"chinese": false,
"chineseSplitName": true,
"citeCommand": "cite",
"citekeyCaseInsensitive": true,
"citekeyFold": true,
"citekeyFormat": "zotero.clean",
"citekeyFormatEditing": "zotero.clean",
@@ -34,32 +38,35 @@
"DOIandURL": "both",
"exportBibTeXStrings": "off",
"exportBraceProtection": true,
"exportSort": "citekey",
"exportTitleCase": true,
"extraMergeCitekeys": false,
"extraMergeCSL": false,
"extraMergeTeX": false,
"fillKeyAfter": 1,
"git": "config",
"import": true,
"importBibTeXStrings": true,
"importCaseProtection": "as-needed",
"importCitationKey": true,
"importDetectURLs": true,
"importExtra": true,
"importJabRefAbbreviations": true,
"importJabRefStrings": true,
"importNoteToExtra": "",
"importPlaceEvent": "inproceedings,conference,presentation,talk",
"importSentenceCase": "on+guess",
"importSentenceCaseQuoted": true,
"importUnknownTexCommand": "ignore",
"itemObserverDelay": 5,
"jabrefFormat": 0,
"jieba": false,
"keyConflictPolicy": "keep",
"japanese": false,
"keyScope": "global",
"kuroshiro": false,
"language": "langid",
"logEvents": false,
"mapMath": "",
"mapText": "",
"mapUnicode": "conservative",
"packages": "",
"parseParticles": true,
"patchDates": "dateadded=dateAdded, date-added=dateAdded, datemodified=dateModified, date-modified=dateModified",
"platform": "lin",
@@ -75,7 +82,8 @@
"rawImports": false,
"rawLaTag": "#LaTeX",
"relativeFilePaths": false,
"retainCache": false,
"remigrate": false,
"resetKeyOnChange": false,
"scrubDatabase": false,
"separatorList": "and",
"separatorNames": "and",
@@ -90,5 +98,4 @@
"warnTitleCased": false
}
}
}
}

View File

@@ -52,6 +52,7 @@
ssh.enable = true;
taskwarrior.enable = true;
terminal.enable = true;
reference-manager.enable = true;
programs = {
home-manager.enable = true;

View File

@@ -27,7 +27,7 @@
file.".config/niri/config.kdl".source = ./config.kdl;
packages = with pkgs; [
brightnessctl
xwayland-satellite
wlsunset
];
};

View File

@@ -0,0 +1,37 @@
{
config,
inputs,
lib,
pkgs,
...
}:
let
cfg = config.reference-manager;
hasBrowser =
name:
lib.elem name [
config.browser.primary
config.browser.secondary
];
zoteroConnector =
inputs.firefox-addons.packages.${pkgs.stdenv.hostPlatform.system}.zotero-connector;
zoteroAddonId = "zotero@chnm.gmu.edu";
connectorExtension = {
profiles.default.extensions.packages = [ zoteroConnector ];
policies.ExtensionSettings.${zoteroAddonId}.default_area = "navbar";
};
in
{
options.reference-manager.enable = lib.mkEnableOption "reference manager (Zotero)";
config = lib.mkIf cfg.enable {
home.packages = [ pkgs.zotero ];
programs.firefox = lib.mkIf (hasBrowser "firefox") connectorExtension;
programs.librewolf = lib.mkIf (hasBrowser "librewolf") connectorExtension;
};
}

View File

@@ -6,6 +6,13 @@
{
config = lib.mkIf config.shell.enable {
programs.starship.enable = true;
programs.starship = {
enable = true;
settings = {
git_status = {
ahead = "$\{count\}";
};
};
};
};
}

View File

@@ -11,57 +11,60 @@
config = lib.mkIf config.shikane.enable {
home.packages = with pkgs; [ (config.nixgl.wrap wdisplays) ];
services.shikane.enable = true;
home.file.".config/shikane/config.toml".text = ''
[[profile]]
name = "work"
home.file.".config/shikane/config.toml" = {
force = true;
text = ''
[[profile]]
name = "work"
[[profile.output]]
enable = true
search = ["m=Unknown", "s=", "v=Unknown"]
mode = "2880x1800@120Hz"
position = "288,3240"
scale = 1.5
transform = "normal"
adaptive_sync = false
[[profile.output]]
enable = true
search = ["m=Unknown", "s=", "v=Unknown"]
mode = "2880x1800@120Hz"
position = "288,3240"
scale = 1.5
transform = "normal"
adaptive_sync = false
[[profile.output]]
enable = true
search = ["m=Q27P1B", "s=GNXM2HA196769", "v=PNP(AOC)"]
mode = "2560x1440@59.951Hz"
position = "116,1800"
scale = 1.0
transform = "normal"
adaptive_sync = false
[[profile.output]]
enable = true
search = ["m=Q27P1B", "s=GNXM2HA196769", "v=PNP(AOC)"]
mode = "2560x1440@59.951Hz"
position = "116,1800"
scale = 1.0
transform = "normal"
adaptive_sync = false
[[profile.output]]
enable = true
search = ["m=PHL 243S7", "s=UHB1923012753", "v=Philips Consumer Electronics Company"]
mode = "1920x1080@60Hz"
position = "2676,1800"
scale = 1.0
transform = "270"
adaptive_sync = false
[[profile.output]]
enable = true
search = ["m=PHL 243S7", "s=UHB1923012753", "v=Philips Consumer Electronics Company"]
mode = "1920x1080@60Hz"
position = "2676,1800"
scale = 1.0
transform = "270"
adaptive_sync = false
[[profile]]
name = "home"
[[profile]]
name = "home"
[[profile.output]]
enable = true
search = ["m=Unknown", "s=Unknown", "v=Unknown"]
mode = "2880x1800@60.001Hz"
position = "185,1440"
scale = 1.75
transform = "normal"
adaptive_sync = false
[[profile.output]]
enable = true
search = ["m=Unknown", "s=Unknown", "v=Unknown"]
mode = "2880x1800@60.001Hz"
position = "185,1440"
scale = 1.75
transform = "normal"
adaptive_sync = false
[[profile.output]]
enable = true
search = ["m=PHL 276E8V", "s=0x0000046D", "v=Philips Consumer Electronics Company"]
mode = "3840x2160@59.996Hz"
position = "1500,0"
scale = 1.5
transform = "normal"
adaptive_sync = false
'';
[[profile.output]]
enable = true
search = ["m=PHL 276E8V", "s=0x0000046D", "v=Philips Consumer Electronics Company"]
mode = "3840x2160@59.996Hz"
position = "1500,0"
scale = 1.5
transform = "normal"
adaptive_sync = false
'';
};
};
}

View File

@@ -90,11 +90,19 @@
networking = {
hostId = "80eef97e";
useDHCP = false;
useNetworkd = true;
};
systemd.network.networks."40-wlan0" = {
matchConfig.Name = "wlan0";
networkConfig.DHCP = "yes";
};
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
services = {
resolved.enable = true;
fwupd.enable = true;
locate = {
enable = true;

View File

@@ -15,8 +15,9 @@
../../modules
];
ssh.enable = true;
docker.enable = true;
ssh.enable = true;
tailscale.enable = true;
networking.hostName = config.host.name;

View File

@@ -2,7 +2,7 @@
system = "x86_64-linux";
deployment = {
tags = [ "cloud" ];
targetHost = "server.hektormisplon.xyz";
targetHost = "hecuba";
targetUser = "username";
};
role = "server";

View File

@@ -1,8 +1,5 @@
{
lib,
config,
...
}:
{ lib, config, ... }:
{
options.tailscale = {
enable = lib.mkEnableOption "tailscale";