Compare commits
3 commits
b4d8460621
...
3bd99264b9
| Author | SHA1 | Date | |
|---|---|---|---|
| 3bd99264b9 | |||
| 2b0d0ce8d8 | |||
| f0bd49e0b6 |
4 changed files with 229 additions and 1 deletions
|
|
@ -56,6 +56,7 @@
|
|||
"earlyoom"
|
||||
"dolphin"
|
||||
"pass"
|
||||
"zk"
|
||||
];
|
||||
|
||||
laptop.features = [
|
||||
|
|
@ -75,6 +76,7 @@
|
|||
];
|
||||
|
||||
developer.features = [
|
||||
"jujutsu"
|
||||
"developer-cli"
|
||||
"editor-neovim"
|
||||
"containers-podman"
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
enable = true;
|
||||
package = pkgs.pass.withExtensions (exts: [ exts.pass-otp ]);
|
||||
settings = {
|
||||
PASSWORD_STORE_DIR = "$XDG_DATA_HOME/password-store";
|
||||
PASSWORD_STORE_DIR = "$HOME/.local/share/password-store";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
|||
107
modules/features/desktop/zk.nix
Normal file
107
modules/features/desktop/zk.nix
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
{ ... }:
|
||||
{
|
||||
config.dendritic.features.zk.homeModules = [
|
||||
(
|
||||
{ ... }:
|
||||
{
|
||||
|
||||
home.sessionVariables = {
|
||||
ZK_NOTEBOOK_DIR = "/home/gwg313/my-notes";
|
||||
};
|
||||
programs.zk = {
|
||||
enable = true;
|
||||
settings = {
|
||||
notebook = {
|
||||
dir = "~/my-notes";
|
||||
};
|
||||
note = {
|
||||
language = "en";
|
||||
default-title = "Untitled";
|
||||
filename = "{{id}}-{{slug title}}";
|
||||
extension = "md";
|
||||
template = "inbox.md";
|
||||
id-charset = "alphanum";
|
||||
id-length = 4;
|
||||
id-case = "lower";
|
||||
};
|
||||
format.markdown = {
|
||||
multiword-tags = true;
|
||||
hashtags = true;
|
||||
};
|
||||
|
||||
tool = {
|
||||
editor = "nvim";
|
||||
fzf-preview = "bat -p --color always {-1}";
|
||||
};
|
||||
|
||||
extra = {
|
||||
author = "gwg313";
|
||||
};
|
||||
group = {
|
||||
inbox = {
|
||||
paths = [ "inbox" ];
|
||||
note.template = "inbox.md";
|
||||
};
|
||||
projects = {
|
||||
paths = [ "projects" ];
|
||||
note.template = "project.md";
|
||||
};
|
||||
literature = {
|
||||
paths = [ "literature" ];
|
||||
note.template = "literature.md";
|
||||
};
|
||||
note = {
|
||||
paths = [ "notes" ];
|
||||
note.template = "permanent.md";
|
||||
};
|
||||
|
||||
seed = {
|
||||
paths = [ "notes" ];
|
||||
note.template = "seed.md";
|
||||
};
|
||||
|
||||
daily = {
|
||||
paths = [ "journal" ];
|
||||
note.filename = "{{format-date now}}";
|
||||
note.template = "daily.md";
|
||||
};
|
||||
};
|
||||
filter = {
|
||||
# Notes created in last 2 weeks
|
||||
recents = "--sort created- --created-after 'last two weeks'";
|
||||
|
||||
# Only permanent notes
|
||||
permanent = "--group notes";
|
||||
|
||||
# Orphans (useful for cleaning up disconnected notes)
|
||||
orphans = "--orphan";
|
||||
seeds = "--tag seed --sort created-";
|
||||
};
|
||||
alias = {
|
||||
ls = "zk list --interactive $@";
|
||||
edit = "zk edit --interactive $@";
|
||||
inbox = ''zk new --no-input "$ZK_NOTEBOOK_DIR/inbox" --group inbox --title "$@"'';
|
||||
seed = ''zk new --no-input "$ZK_NOTEBOOK_DIR/inbox" --group seed --title "$@"'';
|
||||
proj = ''zk new --no-input "$ZK_NOTEBOOK_DIR/projects/" --group projects --title "$@"'';
|
||||
lit = ''zk new --no-input "$ZK_NOTEBOOK_DIR/literature" --group literature --title "$@"'';
|
||||
note = ''zk new --no-input "$ZK_NOTEBOOK_DIR/notes" --group notes --title "$@"'';
|
||||
# Edit the last modified note.
|
||||
edlast = "zk edit --limit 1 --sort modified- $@";
|
||||
seeds = "zk list seeds --interactive";
|
||||
# Edit the notes selected interactively among the notes created the last two weeks.
|
||||
recent = "zk edit --sort created- --created-after 'last two weeks' --interactive";
|
||||
|
||||
# Show a random note.
|
||||
lucky = "zk list --quiet --format full --sort random --limit 1";
|
||||
# Show backlinks to a given note
|
||||
bl = "zk list --link-to $@";
|
||||
|
||||
# Orphans
|
||||
orph = "zk list orphans --interactive";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
)
|
||||
];
|
||||
}
|
||||
119
modules/features/programs/cli/vc-jujutsu.nix
Normal file
119
modules/features/programs/cli/vc-jujutsu.nix
Normal file
|
|
@ -0,0 +1,119 @@
|
|||
{ ... }:
|
||||
{
|
||||
config.dendritic.features.jujutsu = {
|
||||
homeModules = [
|
||||
(
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.jujutsu = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user = {
|
||||
email = "gwg313@pm.me";
|
||||
name = "gwg313";
|
||||
};
|
||||
signing = {
|
||||
behavior = "own";
|
||||
backend = "gpg";
|
||||
};
|
||||
aliases = {
|
||||
c = [ "commit" ];
|
||||
ci = [
|
||||
"commit"
|
||||
"--interactive"
|
||||
];
|
||||
e = [ "edit" ];
|
||||
i = [
|
||||
"git"
|
||||
"init"
|
||||
"--colocate"
|
||||
];
|
||||
tug = [
|
||||
"bookmark"
|
||||
"move"
|
||||
"--from"
|
||||
"closest_bookmark(@-)"
|
||||
"--to"
|
||||
"@-"
|
||||
];
|
||||
log-recent = [
|
||||
"log"
|
||||
"-r"
|
||||
"default() & recent()"
|
||||
];
|
||||
nb = [
|
||||
"bookmark"
|
||||
"create"
|
||||
"-r"
|
||||
"@-"
|
||||
]; # new bookmark
|
||||
upmain = [
|
||||
"bookmark"
|
||||
"set"
|
||||
"main"
|
||||
];
|
||||
squash-desc = [
|
||||
"squash"
|
||||
"::@"
|
||||
"-d"
|
||||
"@"
|
||||
];
|
||||
rebase-main = [
|
||||
"rebase"
|
||||
"-d"
|
||||
"main"
|
||||
];
|
||||
amend = [
|
||||
"describe"
|
||||
"-m"
|
||||
];
|
||||
pushall = [
|
||||
"git"
|
||||
"push"
|
||||
"--all"
|
||||
];
|
||||
push = [
|
||||
"git"
|
||||
"push"
|
||||
"--allow-new"
|
||||
];
|
||||
pull = [
|
||||
"git"
|
||||
"fetch"
|
||||
];
|
||||
dmain = [
|
||||
"diff"
|
||||
"-r"
|
||||
"main"
|
||||
];
|
||||
l = [
|
||||
"log"
|
||||
"-T"
|
||||
"builtin_log_compact"
|
||||
];
|
||||
lf = [
|
||||
"log"
|
||||
"-r"
|
||||
"all()"
|
||||
];
|
||||
r = [ "rebase" ];
|
||||
s = [ "squash" ];
|
||||
si = [
|
||||
"squash"
|
||||
"--interactive"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
lazyjj
|
||||
meld
|
||||
];
|
||||
|
||||
}
|
||||
)
|
||||
];
|
||||
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue