feat(reference-manager): replace 'Zotero' with 'papis'
check / lint (push) Successful in 6s

This commit is contained in:
hektor committed 2026-11-08 20:33:53 +01:00
1 parent ed5bc2e303
commit 2b6f933673
7 files changed
+79 -181

No files matched your search

+13 -60
View File
@@ -1,67 +1,20 @@
{ config, lib, ... }:
{
config,
inputs,
lib,
pkgs,
...
}:
let
betterBibtex = pkgs.fetchzip (finalAttrs: {
pname = "zotero-better-bibtex";
version = "9.0.64";
url = "https://github.com/retorquere/zotero-better-bibtex/releases/download/v${finalAttrs.version}/zotero-better-bibtex-${finalAttrs.version}.xpi";
hash = "sha256-eu/lkWdW/wbehBjk/5ERnKxBob6yaoS4qsh75RaQx5A=";
extension = "zip";
stripRoot = false;
});
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)";
options.reference-manager.enable = lib.mkOption { default = false; };
config = lib.mkIf config.reference-manager.enable {
home = {
packages = [ pkgs.zotero ];
file = {
".zotero/bbt.json".source = ./bbt.json;
".zotero/zotero/profiles.ini".text = lib.generators.toINI { } {
General = {
StartWithLastProfile = 1;
Version = 2;
};
Profile0 = {
Name = "default";
IsRelative = 1;
Path = "default";
Default = 1;
};
};
".zotero/zotero/default/extensions/better-bibtex@iris-advies.com".source = betterBibtex;
".zotero/zotero/default/user.js".text = ''
user_pref("extensions.startupScanScopes", 1);
user_pref("extensions.autoDisableScopes", 14);
'';
programs.papis = {
enable = true;
libraries.papers = {
isDefault = true;
settings.dir = "${config.readings.path}/papis";
};
settings = {
unique-document-keys = ''["ref"]'';
bibtex-ignore-keys = ''["abstract", "note", "csl_type", "collections", "tags", "files"]'';
add-folder-name = "{doc[ref]}";
};
};
programs.firefox = lib.mkIf (hasBrowser "firefox") connectorExtension;
programs.librewolf = lib.mkIf (hasBrowser "librewolf") connectorExtension;
};
}