Compare commits

...

25 commits

Author SHA1 Message Date
Anish Lakhwara a8f0e05f32 Merge branch 'main' of git.sealight.xyz:aynish/helm 2023-08-12 18:57:52 -07:00
Anish Lakhwara e352f95114 all: welcome to 23.05 2023-08-12 18:57:16 -07:00
Anish Lakhwara d3a469a3f7 curve: enable profiling 2023-08-12 17:16:09 -07:00
Anish Lakhwara 37b68f9653 curve: updating taskwarrior 2023-08-12 17:15:44 -07:00
Anish Lakhwara b7e290b5f5 curve: kitaab generate backlinks 2023-08-12 17:08:52 -07:00
Anish Lakhwara b6afca684c curve: add ku to alias' 2023-08-12 17:08:34 -07:00
Anish Lakhwara 90c85594e9 curve: firefox default zoom 2023-08-12 17:08:18 -07:00
Anish Lakhwara 6183793068 curve: increase kitty font size and disable sounds 2023-08-12 17:01:27 -07:00
Anish Lakhwara 14f631213d curve: clean up desktop config 2023-08-12 17:01:15 -07:00
Anish Lakhwara 1628cbb0c4 curve: ku for kitaab untagged 2023-08-12 16:59:57 -07:00
Anish Lakhwara 673eac2cca curve: taskwarrior alias' 2023-08-12 16:59:33 -07:00
Anish Lakhwara 3d30ec7a0d formatting 2023-08-12 16:56:25 -07:00
Anish Lakhwara b1ea99f22e curve: taskwarrior-tui commands 2023-08-12 16:55:40 -07:00
Anish Lakhwara efe6d46f44 curve: working ku now that poonam is working on that front 2023-06-04 21:20:13 +10:00
Anish Lakhwara 2d7442c991 curve: add kitaab unlinked fzf command 2023-06-04 20:04:50 +10:00
Anish Lakhwara bba3ee8778 curve: add kt kitaab tags command 2023-06-04 19:02:56 +10:00
Anish Lakhwara 650641dd25 curve: add more fzf task warrior commands 2023-06-04 19:02:35 +10:00
Anish Lakhwara e92edf8366 curve: allow .taskrc to be writeable, enabling contexts 2023-06-04 19:02:03 +10:00
Anish Lakhwara 067c583378 remove: unused wireguard profile 2023-06-03 23:21:55 +10:00
Anish Lakhwara 7ba8c51cd6 curve: trying to add luasnip to nvim 2023-06-03 23:21:19 +10:00
Anish Lakhwara b54a803556 curve: kt alias to list tag indexs in fzf 2023-06-03 23:20:18 +10:00
Anish Lakhwara 3d744185aa curve: run generateIndex from poonam on kitaab sync 2023-06-03 21:47:44 +10:00
Anish Lakhwara 262c0f8ded curve: fix: task-note.py 2023-06-03 21:47:27 +10:00
Anish Lakhwara 37e25bb697 curve: move kitaab alias 2023-06-03 21:47:11 +10:00
Anish Lakhwara a06cb1231f curve: maybe fix kitaab sync not pushing at all 2023-05-30 22:29:26 +10:00
36 changed files with 352 additions and 286 deletions

View file

@ -3,16 +3,17 @@
"agenix": { "agenix": {
"inputs": { "inputs": {
"darwin": "darwin", "darwin": "darwin",
"home-manager": "home-manager",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1677126346, "lastModified": 1690228878,
"narHash": "sha256-4s+PPGC1M07QsPyeye5drc2JLa1lhDnCV3XAsG8+pH4=", "narHash": "sha256-9Xe7JV0krp4RJC9W9W9WutZVlw6BlHTFMiUP/k48LQY=",
"owner": "ryantm", "owner": "ryantm",
"repo": "agenix", "repo": "agenix",
"rev": "c2a71c83c70844c5e31db69347e86af080bcdad0", "rev": "d8c973fd228949736dedf61b7f8cc1ece3236792",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -77,11 +78,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1683779844, "lastModified": 1686747123,
"narHash": "sha256-sIeOU0GsCeQEn5TpqE/jFRN4EGsPsjqVRsPdrzIDABM=", "narHash": "sha256-XUQK9kwHpTeilHoad7L4LjMCCyY13Oq383CoFADecRE=",
"owner": "serokell", "owner": "serokell",
"repo": "deploy-rs", "repo": "deploy-rs",
"rev": "c80189917086e43d49eece2bd86f56813500a0eb", "rev": "724463b5a94daa810abfc64a4f87faef4e00f984",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -129,11 +130,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1684783210, "lastModified": 1690739034,
"narHash": "sha256-hxRbwwBTu1G1u1EdI9nEo/n4HIsQIfNi+2BQ1nEoj/o=", "narHash": "sha256-roW02IaiQ3gnEEDMCDWL5YyN+C4nBf/te6vfL7rG0jk=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "f0b9f374bb42fdcd57baa7d4448ac5d4788226bd", "rev": "4015740375676402a2ee6adebc3c30ea625b9a94",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -153,11 +154,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1672946489, "lastModified": 1690660426,
"narHash": "sha256-IliWerC9qk4MxYNRoe/8uuQZkqjPJPsph46fmVBvo9U=", "narHash": "sha256-YUuH1BZ3G5dhHRZ1Z9XPXyorm8vV8G+jYbcdIGxOcOs=",
"owner": "elkowar", "owner": "elkowar",
"repo": "eww", "repo": "eww",
"rev": "6a64a286291456984011c4fb160def106ee55dff", "rev": "dc3129aee2806823bdad87785f7ef80651d5245c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -245,12 +246,15 @@
} }
}, },
"flake-utils_3": { "flake-utils_3": {
"inputs": {
"systems": "systems"
},
"locked": { "locked": {
"lastModified": 1676283394, "lastModified": 1685518550,
"narHash": "sha256-XX2f9c3iySLCw54rJ/CZs+ZK6IQy7GXNY4nSOyu2QG4=", "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "3db36a8b464d0c4532ba1c7dda728f4576d6d073", "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -260,12 +264,15 @@
} }
}, },
"flake-utils_4": { "flake-utils_4": {
"inputs": {
"systems": "systems_2"
},
"locked": { "locked": {
"lastModified": 1659877975, "lastModified": 1681202837,
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "rev": "cfacdce06f30d2b68473a46042957675eebb3401",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -298,11 +305,11 @@
}, },
"hardware": { "hardware": {
"locked": { "locked": {
"lastModified": 1677232326, "lastModified": 1691179816,
"narHash": "sha256-rAk2/80kLvA3yIMmSV86T1B4kNvwCFMSQ1FxXndaUB0=", "narHash": "sha256-WSMwqzU70ZMRHv1CUAfHEEKJuB0c9c9r0F+lJehXfSI=",
"owner": "nixos", "owner": "nixos",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "2d44015779cced4eec9df5b8dab238b9f6312cb2", "rev": "87e3122b67587492a617764f88c71991893fcf8a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -314,16 +321,16 @@
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"agenix",
"nixpkgs" "nixpkgs"
], ]
"utils": "utils_2"
}, },
"locked": { "locked": {
"lastModified": 1677104801, "lastModified": 1682203081,
"narHash": "sha256-2V5nKOYVFMYlseYdDKiEaww2xqcE0GtS1ax3SoUX99I=", "narHash": "sha256-kRL4ejWDhi0zph/FpebFYhzqlOBrk0Pl3dzGEKSAlEw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "4295fdfa6b0005c32f2e1f0b732faf5810c1bc7f", "rev": "32d3e39c491e2f91152c84f8ad8b003420eab0a1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -332,6 +339,27 @@
"type": "github" "type": "github"
} }
}, },
"home-manager_2": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1687871164,
"narHash": "sha256-bBFlPthuYX322xOlpJvkjUBz0C+MOBjZdDOOJJ+G2jU=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "07c347bb50994691d7b0095f45ebd8838cf6bc38",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-23.05",
"repo": "home-manager",
"type": "github"
}
},
"llamacpp": { "llamacpp": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_3", "flake-utils": "flake-utils_3",
@ -340,11 +368,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1681311976, "lastModified": 1691180171,
"narHash": "sha256-vxtBq4PeYkRWML6IJhbhDhdyBfaLSzCg1rNu2ozuPAk=", "narHash": "sha256-ZmSRPACkLlPWtKfux9o+FB0mXZbINowyb0057ouAL/0=",
"owner": "ggerganov", "owner": "ggerganov",
"repo": "llama.cpp", "repo": "llama.cpp",
"rev": "e7f6997f897a18b6372a6460e25c5f89e1469f1d", "rev": "332311234a0aa2974b2450710e22e09d90dd6b0b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -361,11 +389,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1663958238, "lastModified": 1683490239,
"narHash": "sha256-l4VrBCswq500YwsgjK7M8HUmnVWrHYY7DKZ7uZK5Abg=", "narHash": "sha256-QKzpvl2XrqbobWq/I/smDa9hEniwctjJybXPVILHP0w=",
"owner": "coffeetables", "owner": "coffeetables",
"repo": "nix-matrix-appservices", "repo": "nix-matrix-appservices",
"rev": "efdc09f26e3b01801edaa3b0e2bdd46d9d133bba", "rev": "e795d2fbc61da45d49802bb3e8f8d0c70ddc1e68",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {
@ -391,11 +419,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1677232326, "lastModified": 1691179816,
"narHash": "sha256-rAk2/80kLvA3yIMmSV86T1B4kNvwCFMSQ1FxXndaUB0=", "narHash": "sha256-WSMwqzU70ZMRHv1CUAfHEEKJuB0c9c9r0F+lJehXfSI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "2d44015779cced4eec9df5b8dab238b9f6312cb2", "rev": "87e3122b67587492a617764f88c71991893fcf8a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -423,27 +451,27 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1677075010, "lastModified": 1691155011,
"narHash": "sha256-X+UmR1AkdR//lPVcShmLy8p1n857IGf7y+cyCArp8bU=", "narHash": "sha256-O15tC0ysw+fcacEbOzrDrkVNIR+SgtArSGvpgsEqpvA=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c95bf18beba4290af25c60cbaaceea1110d0f727", "rev": "9652a97d9738d3e65cf33c0bc24429e495a7868f",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-22.11", "ref": "nixos-23.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nur": { "nur": {
"locked": { "locked": {
"lastModified": 1677243766, "lastModified": 1691214006,
"narHash": "sha256-a+2V68cLjb951pYBEGbQGEVBcgti40uWtxTVnzvGFhY=", "narHash": "sha256-kdfBd+Y0DTOOdgSA6h6iIn403xVj4bzLnXqb7+yM6lQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "9bde3171aeb5954b7955fcb09b231f53caf76b54", "rev": "963ad2d1bb0a8f59b2c23ab521d4dff2148aad16",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -459,11 +487,19 @@
] ]
}, },
"locked": { "locked": {
<<<<<<< HEAD
"lastModified": 1691215224,
"narHash": "sha256-sajUJsMFxIVUiDUxbRdukGy650lDLmUQG6FUOuzLs+A=",
"ref": "main",
"rev": "cb1c91802c74065cf9b8ecb35e14fb75d896bc39",
"revCount": 943,
=======
"lastModified": 1691809207, "lastModified": 1691809207,
"narHash": "sha256-Ml3w6o96E66OgEv5+z6OCtLLAQylvcOTX2t/D+jPSFs=", "narHash": "sha256-Ml3w6o96E66OgEv5+z6OCtLLAQylvcOTX2t/D+jPSFs=",
"ref": "main", "ref": "main",
"rev": "31089236697319f4be5c50e16add3154235c7c3c", "rev": "31089236697319f4be5c50e16add3154235c7c3c",
"revCount": 963, "revCount": 963,
>>>>>>> b42ede3a30e7ccb72da99ba39f1c81833775d576
"type": "git", "type": "git",
"url": "ssh://gitea@git.sealight.xyz/aynish/kitaab" "url": "ssh://gitea@git.sealight.xyz/aynish/kitaab"
}, },
@ -482,7 +518,7 @@
"eww": "eww", "eww": "eww",
"grasp": "grasp", "grasp": "grasp",
"hardware": "hardware", "hardware": "hardware",
"home-manager": "home-manager", "home-manager": "home-manager_2",
"llamacpp": "llamacpp", "llamacpp": "llamacpp",
"nix-matrix-appservices": "nix-matrix-appservices", "nix-matrix-appservices": "nix-matrix-appservices",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
@ -503,11 +539,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1677205778, "lastModified": 1691201768,
"narHash": "sha256-DFe09uzS+8LjGBAAyHkB/5Axs0j/PQ8RLWFzm2FUZLA=", "narHash": "sha256-h+QJMpawZoK1+8efF6UjQoY1EHZfHteXVa5OYnlqRWA=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "b91706f9d5a68fecf97b63753da8e9670dff782b", "rev": "18ee2a71de24273e4ad4503b5604532f0b53f382",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -533,6 +569,36 @@
"type": "github" "type": "github"
} }
}, },
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"tidal-src": { "tidal-src": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -558,7 +624,7 @@
], ],
"superdirt-src": "superdirt-src", "superdirt-src": "superdirt-src",
"tidal-src": "tidal-src", "tidal-src": "tidal-src",
"utils": "utils_3", "utils": "utils_2",
"vim-tidal-src": "vim-tidal-src", "vim-tidal-src": "vim-tidal-src",
"vowel-src": "vowel-src" "vowel-src": "vowel-src"
}, },
@ -578,11 +644,11 @@
}, },
"unstable": { "unstable": {
"locked": { "locked": {
"lastModified": 1682268651, "lastModified": 1691186842,
"narHash": "sha256-2eZriMhnD24Pmb8ideZWZDiXaAVe6LzJrHQiNPck+Lk=", "narHash": "sha256-wxBVCvZUwq+XS4N4t9NqsHV4E64cPVqQ2fdDISpjcw0=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e78d25df6f1036b3fa76750ed4603dd9d5fe90fc", "rev": "18036c0be90f4e308ae3ebcab0e14aae0336fe42",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -608,21 +674,6 @@
} }
}, },
"utils_2": { "utils_2": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"utils_3": {
"locked": { "locked": {
"lastModified": 1653893745, "lastModified": 1653893745,
"narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=",

View file

@ -3,12 +3,12 @@
inputs = { inputs = {
# Nixpkgs # Nixpkgs
nixpkgs.url = "github:nixos/nixpkgs/nixos-22.11"; nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05";
unstable.url = "github:nixos/nixpkgs/nixos-unstable"; unstable.url = "github:nixos/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixos-hardware.url = "github:NixOS/nixos-hardware/master";
# Home manager # Home manager
home-manager.url = "github:nix-community/home-manager"; home-manager.url = "github:nix-community/home-manager/release-23.05";
home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.inputs.nixpkgs.follows = "nixpkgs";
hardware.url = "github:nixos/nixos-hardware"; hardware.url = "github:nixos/nixos-hardware";
@ -233,10 +233,9 @@
agenix.nixosModules.age agenix.nixosModules.age
self.nixosModules.backup self.nixosModules.backup
self.nixosModules.wireguard self.nixosModules.wireguard
self.nixosModules.wallabag
self.nixosModules.gonic self.nixosModules.gonic
self.nixosModules.wallabag
self.nixosModules.ulogger-server self.nixosModules.ulogger-server
self.nixosModules.photoprism
grasp.nixosModule grasp.nixosModule
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {

View file

@ -211,8 +211,6 @@
"...." = "cd ../../.."; "...." = "cd ../../..";
"....." = "cd ../../../.."; "....." = "cd ../../../..";
# kitaab recents
kr = "cd /home/anish/kitaab/vimwiki; exa --sort=modified --reverse | fzf --preview 'bat --style=numbers --color=always --terminal-width -1 ./{}'";
icat = "kitty +kitten icat"; icat = "kitty +kitten icat";
yt = "ytfzf -T kitty -t "; yt = "ytfzf -T kitty -t ";
gen-secret = "< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c\${1:-32};echo;"; gen-secret = "< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c\${1:-32};echo;";
@ -232,18 +230,21 @@
# task warrior # task warrior
# TODO: make blocked a context? # TODO: make blocked a context?
t = "task -BLOCKED"; t = "task -BLOCKED -idea -backlog"; # Adding these to the next task makes modify things hard
tin = "task in"; tt = "taskwarrior-tui -r list";
tun = "task -BLOCKED -wait"; ti = "task +idea";
tb = "task list +backlog"; tb = "task list +backlog";
ttb = "taskwarrior-tui -r backlog";
tr = "task newest limit:page"; tr = "task newest limit:page";
tu = "task unblocked -wait"; tw = "task +wait";
tl = "task list";
ta = "task add"; ta = "task add";
tai = "task add +in"; tai = "task add +idea";
tn = "task-note"; tn = "task-note";
tp = "task limit:page";
ts = "task sync"; ts = "task sync";
# taskwarrior task lists
twt = "task tags +PENDING | tail -n +4 | cut -d ' ' -f1 | fzf --preview 'task +{}'";
# task warrior projects list
tp = "task projects +PENDING | tail -n +4 | head -n -2 | cut -d ' ' -f1 | fzf --preview 'task pro:{}'";
# keeping for posterity but now sxhkbd handles screenshot with <Super+O> # keeping for posterity but now sxhkbd handles screenshot with <Super+O>
# scrot = "flameshot screen -c -p ~/screenshots/"; # scrot = "flameshot screen -c -p ~/screenshots/";

15
home/profiles/desktop/bin/ku Executable file
View file

@ -0,0 +1,15 @@
#!/usr/bin/env bash
# get into a shell that has poonam
cd ~/kitaab || exit;
nix develop;
# Use fzf to select a file and capture the output
selected_file=$(${pkgs.poonam}/main report --titles=false | head -n -2 | fzf --preview 'bat --color=always --terminal-width -1 ./vimwiki/{}')
echo $selected_file
# Add additional details to the file path
# file_path="./vimwiki/${selected_file}"
#
# # Open the file in vim for editing
# vim "${file_path}"
#

View file

@ -33,6 +33,76 @@ in
termpdfpy termpdfpy
]; ];
# GTK4 color scheme?
dconf.settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
};
};
# Move required config files around
xdg.enable = true; # This doesn't seem to do anything so we have below
xdg.configHome = "/home/anish/.config"; # TODO bad hardcode
xdg.configFile = {
"Kvantum/Dracula/Dracula.kvconfig".source = "${dracula-gtk}/kde/kvantum/Dracula-purple-solid/Dracula-purple-solid.kvconfig";
"Kvantum/Dracula/Dracula.svg".source = "${dracula-gtk}/kde/kvantum/Dracula-purple-solid/Dracula-purple-solid.svg";
"Kvantum/kvantum.kvconfig".text = "[General]\ntheme=Dracula";
};
home.file = {
".config/bspwm/rc.d/polybar".source = ./run.sh;
".config/bspwm/bspwmrc".source = ./bspwmrc;
".config/sxhkdrc".source = ./sxhkdrc;
".config/rofi/theme" = {
source = ./rofi;
recursive = true;
};
".config/polybar" = {
source = ./polybar;
recursive = true;
};
".config/dunst/dunstrc".source = ./dunstrc;
".config/kitty/kitty.conf".source = ./kitty.conf;
".config/kitty/ayu.conf".source = ./ayu-kitty.conf;
".config/zathura/zathurarc".source = ./zathurarc;
".background-image".source = ./background.jpg;
#gtk4 theme
".config/gtk-4.0/settings.ini".text = ''
[Settings]
gtk-application-prefer-dark-theme=1
'';
# gtk3 theme
".config/gtk-3.0/settings.ini".text = ''
[Settings]
gtk-theme-name=Dracula
gtk-icon-theme-name=Paper
gtk-cursor-theme-name=Capitaine Cursors - White
gtk-fallback-icon-theme=gnome
gtk-application-prefer-dark-theme=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
gtk-xft-rgba=none
'';
# GTK2 global theme (widget and icon theme)
".config/gtk-2.0/gtkrc".text = ''
gtk-theme-name=Ayu-Mirage
gtk-icon-theme-name=Capitaine Cursors - White
gtk-font-name="Sans 10"
'';
".local/bin/passmenu".source = ./bin/passmenu;
".local/bin/paste".source = ./bin/paste;
".local/bin/bluetoothmenu".source = ./bin/bluetoothmenu;
".local/bin/wifimenu".source = ./bin/wifimenu;
".local/bin/powermenu".source = ./bin/powermenu;
".local/bin/screenshot".source = ./bin/screenshot;
".local/bin/mpv-ify".source = ./bin/mpv-ify;
".local/bin/bspswallow".source = ./bin/bspswallow;
".config/bspwm/terminals".text = "Kitty";
".config/eww/eww.yuck".source = ./eww/eww.yuck;
".config/eww/eww.scss".source = ./eww/eww.scss;
".config/eww/widgets.yuck".source = ./eww/widgets.yuck;
# ".local/bin/hotplug-monitor.sh".source = ./bin/hotplug-monitor.sh;
};
xdg.desktopEntries = { xdg.desktopEntries = {
ocr = { ocr = {
name = "OCR image"; name = "OCR image";
@ -48,6 +118,13 @@ in
}; };
}; };
qt = {
enable = true;
platformTheme = "gtk";
style = { name = "qt5ct-style"; };
};
# set up env # set up env
xsession.enable = true; xsession.enable = true;
@ -83,70 +160,10 @@ in
"*.colorBD" = "#e6e1cf"; "*.colorBD" = "#e6e1cf";
}; };
# Move required config files around programs.autorandr.enable = true;
xdg.enable = true; # This doesn't seem to do anything so we have below services.udiskie.automount = true;
xdg.configHome = "/home/anish/.config"; # TODO bad hardcode
xdg.configFile = {
"Kvantum/Dracula/Dracula.kvconfig".source = "${dracula-gtk}/kde/kvantum/Dracula-purple-solid/Dracula-purple-solid.kvconfig";
"Kvantum/Dracula/Dracula.svg".source = "${dracula-gtk}/kde/kvantum/Dracula-purple-solid/Dracula-purple-solid.svg";
"Kvantum/kvantum.kvconfig".text = "[General]\ntheme=Dracula";
};
home.file = {
".config/bspwm/rc.d/polybar".source = ./run.sh;
".config/bspwm/bspwmrc".source = ./bspwmrc;
".config/sxhkdrc".source = ./sxhkdrc;
".config/rofi/theme" = {
source = ./rofi;
recursive = true;
};
".config/polybar" = {
source = ./polybar;
recursive = true;
};
".config/dunst/dunstrc".source = ./dunstrc;
".config/kitty/kitty.conf".source = ./kitty.conf;
".config/kitty/ayu.conf".source = ./ayu-kitty.conf;
".config/zathura/zathurarc".source = ./zathurarc;
".background-image".source = ./background.jpg;
# gtk3 theme
".config/gtk-3.0/settings.ini".text = ''
[Settings]
gtk-theme-name=Dracula
gtk-icon-theme-name=Paper
gtk-cursor-theme-name=Capitaine Cursors - White
gtk-fallback-icon-theme=gnome
gtk-application-prefer-dark-theme=true
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
gtk-xft-rgba=none
'';
# GTK2 global theme (widget and icon theme)
".config/gtk-2.0/gtkrc".text = ''
gtk-theme-name=Ayu-Mirage
gtk-icon-theme-name=Capitaine Cursors - White
gtk-font-name="Sans 10"
'';
# TODO hardcoded
".local/bin/passmenu".source = ./bin/passmenu;
".local/bin/paste".source = ./bin/paste;
".local/bin/bluetoothmenu".source = ./bin/bluetoothmenu;
".local/bin/wifimenu".source = ./bin/wifimenu;
".local/bin/powermenu".source = ./bin/powermenu;
".local/bin/screenshot".source = ./bin/screenshot;
".local/bin/mpv-ify".source = ./bin/mpv-ify;
".local/bin/bspswallow".source = ./bin/bspswallow;
".config/bspwm/terminals".text = "Kitty";
".config/eww/eww.yuck".source = ./eww/eww.yuck;
".config/eww/eww.scss".source = ./eww/eww.scss;
".config/eww/widgets.yuck".source = ./eww/widgets.yuck;
# ".local/bin/hotplug-monitor.sh".source = ./bin/hotplug-monitor.sh;
};
qt = { services.mpris-proxy.enable = true; # bluetooth media control
enable = true;
platformTheme = "gtk";
style = { name = "qt5ct-style"; };
};
# Compositor # Compositor
# services.picom = { # services.picom = {
@ -169,9 +186,4 @@ in
# corner-radius = 3 # corner-radius = 3
# ''; # '';
# }; # };
programs.autorandr.enable = true;
services.udiskie.automount = true;
services.mpris-proxy.enable = true; # bluetooth media control
} }

View file

@ -1,12 +1,13 @@
include ayu.conf include ayu.conf
font_family Hermit font_family Hermit
font_size 13
bold_font auto bold_font auto
italic_font auto italic_font auto
bold_italic_font auto bold_italic_font auto
open_url_with default open_url_with default
mouse_map left click ungrabbed mouse_click_url_or_select mouse_map left click ungrabbed mouse_click_url_or_select
confirm_os_window_close 0 confirm_os_window_close 0
enable_bell_audio no enable_audio_bell no
-- Allows zen-mode.nvim to increase font size -- Allows zen-mode.nvim to increase font size
-- allow_remote_control socket-only -- allow_remote_control socket-only
-- listen_on unix:/tmp/kitty -- listen_on unix:/tmp/kitty

View file

@ -34,9 +34,6 @@ fixed-center = true
width = 100% width = 100%
height = 34 height = 34
offset-x =
offset-y =
; Background ARGB color (e.g. #f00, #ff992a, #ddff1023) ; Background ARGB color (e.g. #f00, #ff992a, #ddff1023)
background = ${colors.bg} background = ${colors.bg}
@ -58,14 +55,14 @@ padding-left = 0
module-margin = 0 module-margin = 0
margin-bottom = 34 margin-bottom = 34
font-0 = "Iosevka Term:pixelsize=13;4" font-0 = "Iosevka Nerd Font,Iosevka NF:pixelsize=12;4"
font-1 = "Iosevka Term:pixelsize=6;1" font-1 = "Iosevka Nerd Font,Iosevka NF:pixelsize=6;1"
font-2 = "Fira Code:pixelsize=13;2" font-2 = "FiraCode Nerd Font:pixelsize=12;2"
font-3 = "Siji:pixelsize=8;2" font-3 = "Siji:pixelsize=8;2"
; Add module mpd for artist - title info ; Add module mpd for artist - title info
modules-left = bspwm sps volume modules-left = bspwm sps volume
modules-center = title ; modules-center = title
modules-right = wireless-network sps battery sps memory sps cpu sps date modules-right = wireless-network sps battery sps memory sps cpu sps date
; The separator will be inserted between the output of each module ; The separator will be inserted between the output of each module
@ -116,11 +113,11 @@ type = internal/bspwm
pin-workspaces = true pin-workspaces = true
enable-click = true enable-click = true
ws-icon-0 = 1;%{T1}%{T-} ws-icon-0 = 1;%{T1} %{T-}
ws-icon-1 = 2;%{T1}%{T-} ws-icon-1 = 2;%{T1} %{T-}
ws-icon-2 = 3;%{T1}%{T-} ws-icon-2 = 3;%{T1}󰵅 %{T-}
ws-icon-3 = 4;%{T1}%{T-} ws-icon-3 = 4;%{T1} %{T-}
ws-icon-4 = 5;%{T1}%{T-} ws-icon-4 = 5;%{T1} %{T-}
ws-icon-default =  ws-icon-default = 
; fuzzy-match = true ; fuzzy-match = true
@ -157,14 +154,14 @@ interval = 1.0
; See "http://en.cppreference.com/w/cpp/io/manip/put_time" for details on how to format the date string ; See "http://en.cppreference.com/w/cpp/io/manip/put_time" for details on how to format the date string
; NOTE: if you want to use syntax tags here you need to use %%{...} ; NOTE: if you want to use syntax tags here you need to use %%{...}
date = %{T1}%{T-}%{T2} %d/%a%{T-} date = %{T1}%{T-}%{T2} %d/%a%{T-}
; Optional time format ; Optional time format
time = %{T2} %H:%M%{T-} time = %{T2} %H:%M%{T-}
; if `date-alt` or `time-alt` is defined, clicking ; if `date-alt` or `time-alt` is defined, clicking
; the module will toggle between formats ; the module will toggle between formats
date-alt = %{T1}%{T-}%{T2} %a, %d %b %y%{T-} date-alt = %{T1} %{T-} %{T2} %a, %d %b %y%{T-}
time-alt = %{T2} %H:%M:%S%{T-} time-alt = %{T2} %H:%M:%S%{T-}
label = %date%%time% label = %date%%time%
@ -177,11 +174,11 @@ interface = wlp3s0
label-connected = %essid% label-connected = %essid%
label-connected-font = 2 label-connected-font = 2
format-connected = <ramp-signal><label-connected> format-connected = <ramp-signal> <label-connected>
label-connected-foreground = #82b414 label-connected-foreground = #82b414
format-disconnected = <label-disconnected> format-disconnected = <label-disconnected>
label-disconnected = "" label-disconnected = "󰖪"
label-disconnected-foreground = #f92672 label-disconnected-foreground = #f92672
ramp-signal-foreground = #82b414 ramp-signal-foreground = #82b414
@ -199,7 +196,7 @@ type = internal/cpu
; Default: 1 ; Default: 1
interval = 0.5 interval = 0.5
label = %{T1}%{T-}%{T2} %percentage:2%%%{T-} label = %{T1} %{T-}%{T2} %percentage:2%%%{T-}
label-foreground = ${colors.cyan} label-foreground = ${colors.cyan}
@ -229,7 +226,7 @@ format = <label>
; %gb_swap_free% ; %gb_swap_free%
; %gb_swap_used% ; %gb_swap_used%
label = %{T1}%{T-}%{T2} %gb_used%%{T-} label = %{T1}󰍛 %{T-}%{T2} %gb_used%%{T-}
label-foreground = ${colors.cyan} label-foreground = ${colors.cyan}
@ -277,38 +274,6 @@ type = custom/text
content = " " content = " "
content-padding = 0 content-padding = 0
[module/network]
type = internal/network
interface = wlp3s0
;enp0s29u1u2
interval = 1.0
label-connected = "%{T1}龍%{T-}%{T2} %downspeed% | %upspeed%%{T-}"
label-disconnected = "%{T2}0/0%{T-}"
label-connected-background = ${colors.bg}
label-connected-foreground = ${colors.blue}
label-disconnected-foreground = ${colors.red}
[module/title]
type = internal/xwindow
; Available tags:
; <label> (default)
format = <label>
format-background = ${colors.bg}
format-foreground = ${colors.green}
format-padding = 4
; Available tokens:
; %title%
; Default: %title%
label = "%{T1}类%{T-}%{T2} %title%%{T-}"
label-maxlen = 65
; Used instead of label when there is no window title
; Available tokens:
; None
label-empty =%{T2}Empty%{T-}
label-empty-foreground = #707880
[module/volume] [module/volume]
type = internal/pulseaudio type = internal/pulseaudio
@ -316,7 +281,7 @@ use-ui-max = false
interval = 5 interval = 5
format-volume = <ramp-volume><bar-volume> format-volume = <ramp-volume> <bar-volume>
format-muted = <label-muted> format-muted = <label-muted>
format-muted-prefix = "  " format-muted-prefix = "  "
@ -370,10 +335,10 @@ battery = BAT0
poll-interval = 2 poll-interval = 2
time-format = %H:%M time-format = %H:%M
format-charging = <animation-charging><label-charging> format-charging = <animation-charging> <label-charging>
format-charging-prefix = format-charging-prefix =
format-discharging = <ramp-capacity><label-discharging> format-discharging = <ramp-capacity> <label-discharging>
format-full = <label-full> format-full = <label-full>
format-full-prefix = " " format-full-prefix = " "
@ -409,3 +374,4 @@ animation-charging-foreground = ${colors.sky}
animation-charging-framerate = 750 animation-charging-framerate = 750
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

View file

@ -43,7 +43,10 @@
meta = { }; meta = { };
}) })
]; ];
settings = { settings = {
"browser.zoom.siteSpecific" = false;
"zoom.minPercent" = "150"; # TODO doesn't seem to work anymore, you have to manually go into preferences and set the zoom level.
"devtools.theme" = "dark"; "devtools.theme" = "dark";
# Enable userContent.css and userChrome.css for our theme modules # Enable userContent.css and userChrome.css for our theme modules
"toolkit.legacyUserProfileCustomizations.stylesheets" = true; "toolkit.legacyUserProfileCustomizations.stylesheets" = true;
@ -51,6 +54,7 @@
"browser.download.dir" = "/home/anish/downloads"; # TODO Don't hardcode this! "browser.download.dir" = "/home/anish/downloads"; # TODO Don't hardcode this!
# Don't use the built-in password manager; a nixos user is more likely # Don't use the built-in password manager; a nixos user is more likely
# using an external one (you are using one, right?). # using an external one (you are using one, right?).
# I am, but it's far too convienent. I'm enabling 2FA anyway so w/e
#"signon.rememberSignons" = false; #"signon.rememberSignons" = false;
# Do not check if Firefox is the default browser # Do not check if Firefox is the default browser
"browser.shell.checkDefaultBrowser" = false; "browser.shell.checkDefaultBrowser" = false;

View file

@ -145,7 +145,14 @@ in
home.sessionVariables.EDITOR = "nvim"; home.sessionVariables.EDITOR = "nvim";
home.shellAliases = { home.shellAliases = {
k = "cd ~/kitaab/vimwiki; vim -c :VimwikiIndex; cd $OLDPWD"; k = "cd ~/kitaab/vimwiki; vim -c :VimwikiIndex; cd $OLDPWD";
# kitaab zettel
kz = "cd ~/kitaab/vimwiki; vim -c :VimwikiIndex -c :ZettelNew; cd $OLDPWD"; kz = "cd ~/kitaab/vimwiki; vim -c :VimwikiIndex -c :ZettelNew; cd $OLDPWD";
# kitaab recents
kr = "cd /home/anish/kitaab/vimwiki; exa --sort=modified --reverse | fzf --preview 'bat --style=numbers --color=always --terminal-width -1 ./{}';cd $OLDPWD";
# kitaab get by tagged
kt = "cd /home/anish/kitaab/vimwiki; exa *_index.wiki | fzf --preview 'bat --style=numbers --color=always --terminal-width -1 ./{}';cd $OLDPWD";
# List files that have no links in them
ku = "cd /home/anish/kitaab/;vim ./vimwiki/$(python3 poonam/main.py report --titles=false | tail -n +4 | fzf --preview 'bat --style=numbers --color=always --terminal-width -1 ./vimwiki/{}');cd $OLDPWD";
}; };
# Add %update to the highlight clause for vimwiki files # Add %update to the highlight clause for vimwiki files
home.file.".config/nvim/after/syntax/vimwiki.vim".text = '' home.file.".config/nvim/after/syntax/vimwiki.vim".text = ''
@ -683,7 +690,7 @@ in
-- treesitter -- treesitter
require('nvim-treesitter.configs').setup { require('nvim-treesitter.configs').setup {
-- parser_install_dir = "~/.local/share/nvim/site/parser/", -- parser_install_dir = "~/.local/share/nvim/site/parser/",
-- ensure_installed={'nix', 'clojure', 'python', 'fennel', 'lua', 'html', 'css', 'regex', 'supercollider', 'beancount'}, -- ensure_installed={'nix', 'clojure', 'python', 'fennel', 'lua', 'html', 'css', 'regex', 'supercollider', 'beancount', 'janet'},
highlight = { enabled = true, additional_vim_regex_highting = true, }, highlight = { enabled = true, additional_vim_regex_highting = true, },
textobjects = { enabled = true }, textobjects = { enabled = true },
} }
@ -846,7 +853,7 @@ in
-- hologram -- hologram
require('hologram').setup{ require('hologram').setup{
auto_display = true -- WIP automatic markdown image display, may be prone to breaking auto_display = false -- WIP automatic markdown image display, may be prone to breaking
} }
EOF EOF

View file

@ -0,0 +1,9 @@
{
"console.log": {
"prefix": "clog",
"body": [
"console.log('$1')"
],
"description": "Log output to console"
}
}

View file

@ -4,11 +4,13 @@ let
name = "kitaab-sync"; name = "kitaab-sync";
# Note this will fail if index.wiki is open in vim while this runs # Note this will fail if index.wiki is open in vim while this runs
mkStartScript = name: pkgs.writeShellScript "${name}.sh" '' mkStartScript = name: pkgs.writeShellScript "${name}.sh" ''
set -euo pipefail # set -euo pipefail # Sometimes vimwiki is open and that causes `vimwiki tags rebuild` to fail, we still want to push to git in those cases
PATH=/run/current-system/sw/bin:/etc/profiles/per-user/anish/bin: PATH=/run/current-system/sw/bin:/etc/profiles/per-user/anish/bin:
cd /home/anish/kitaab cd /home/anish/kitaab
vimwiki tags rebuild vimwiki tags rebuild
git add -A python3 poonam/main.py generateindexs
python3 poonam/main.py generatebacklinks
git add -A ./vimwiki/
git diff-index --quiet HEAD || git commit -m 'syncing kitaab' # if nothing, don't exit 1 git diff-index --quiet HEAD || git commit -m 'syncing kitaab' # if nothing, don't exit 1
git push git push
exit 0 exit 0

View file

@ -0,0 +1,3 @@
#!/usr/bin/env bash
task rc.bulk=0 rc.confirmation=off rc.dependency.confirmation=off rc.recurrence.confirmation=off "$@" modify -idea +backlog

View file

@ -0,0 +1,3 @@
#!/usr/bin/env bash
task rc.bulk=0 rc.confirmation=off rc.dependency.confirmation=off rc.recurrence.confirmation=off "$@" modify -idea -backlog

View file

@ -0,0 +1,3 @@
#!/usr/bin/env bash
task rc.bulk=0 rc.confirmation=off rc.dependency.confirmation=off rc.recurrence.confirmation=off "$@" modify +idea -backlog

View file

@ -34,7 +34,7 @@ def write_note(task_id: int):
if not os.path.exists(notes_file): if not os.path.exists(notes_file):
logging.info("Adding description to empty notes file") logging.info("Adding description to empty notes file")
task_description = os.popen(f"task _get {task_id}.description").read() task_description = os.popen(f"task _get {task_id}.description").read()
task_project = os.popen(f"task _get {task_id}.project").read().strip("\n") task_project = os.popen(f"task _get {task_id}.project").read().strip("\n").replace(".", ":")
task_tags = os.popen(f"task _get {task_id}.tags").read().split(",") task_tags = os.popen(f"task _get {task_id}.tags").read().split(",")
if len(task_tags): if len(task_tags):
task_tags = ":".join(task_tags).strip("\n") + ":" task_tags = ":".join(task_tags).strip("\n") + ":"

View file

@ -1,11 +1,19 @@
{ pkgs, config, lib, ... }: { pkgs, config, lib, ... }:
{ {
# If you're setting up taskwarrior again, there's a task-setup.sh script in seafile
home.file = { home.file = {
# Because the below is inconsistent, I turn it off once I have a copy in place.
".taskrc".enable = true;
# WARN ugly hack
# taskwarrior needs write access to this file for centexts
# this way, we get a copy of the file, and we make sure it's writable
".taskrc".source = ./taskrc; ".taskrc".source = ./taskrc;
".local/bin/task-note".source = ./bin/task-note.py; ".taskrc".executable = true;
".taskrc".onChange = "cp ~/.taskrc ~/.taskrc2;rm ~/.taskrc;mv ~/.taskrc2 ~/.taskrc;chmod +w ~/.taskrc";
".task/keys/ca.cert".source = ./ca.cert; ".task/keys/ca.cert".source = ./ca.cert;
".task/keys/public.cert".source = ./public.cert; ".task/keys/public.cert".source = ./public.cert;
".local/bin/task-note".source = ./bin/task-note.py;
".local/bin/set-idea".source = ./bin/set-idea.sh;
}; };
} }

View file

@ -42,12 +42,11 @@ news.version=2.6.0
## Contexts ## Contexts
context.poor.read=-purchase context.poor.read=-purchase
context.dev.read=+dev context.dev.read=+dev or +ops -work
context.ops.read=+ops context.home.read=-work
context.bucket.read=+in context.work.read=+work
context.focused=(priority:H or priority:M) -idea -backlog -finances urgency > 5.0 context.work.write=+work
# context.work=+Work -idea -personal context.bucket.read=+idea
# context.offwork=-Work
## Reports ## Reports
@ -59,17 +58,29 @@ report.list.labels=ID,P,Project,Tags,R,Sch,Due,Until,Description
report.in.columns=id,project,tags,description report.in.columns=id,project,tags,description
report.in.labels=ID,Proj,Tags,Description report.in.labels=ID,Proj,Tags,Description
report.in.description=Inbox report.in.description=Inbox
report.in.filter=status:pending limit:page (+in) report.in.filter=status:pending limit:page (+idea)
# Backlog
report.backlog.columns=id,priority,project,tags,recur.indicator,scheduled.countdown,due,until.remaining,description.count
report.backlog.labels=ID,P,Project,Tags,R,Sch,Due,Until,Description
report.backlog.description=backlog
report.backlog.filter=status:pending limit:page (+backlog)
report.backlog.sort=start-,due+,project+/,urgency-
# Unblocked # Unblocked
report.unblocked.labels=ID,Deps,Proj,Tags,Due,Active,Description report.unblocked.labels=ID,Deps,Proj,Tags,Due,Active,Description
report.unblocked.columns=id,depends,project,tags,due,start.active,description report.unblocked.columns=id,depends,project,tags,due,start.active,description
# Next # Next
report.next.filter=(status:pending -in -backlog pro.not:ideas limit:0) report.next.filter=(status:pending -idea -backlog limit:0) # pro.not:ideas
report.next.labels=ID,Active,Deps,P,Project,Tag,Recur,S,Due,Until,Description report.next.labels=ID,Active,Deps,P,Project,Tag,Recur,S,Due,Until,Description
report.next.columns=id,start.age,depends,priority,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description report.next.columns=id,start.age,depends,priority,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description
# Everything, including inbox
report.every.filter=(status:pending limit:0)
report.every.labels=ID,Active,Deps,P,Project,Tag,Recur,S,Due,Until,Description
report.every.columns=id,start.age,depends,priority,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description
# Urgency # Urgency
urgency.user.project.wait.coefficient=-10.0 urgency.user.project.wait.coefficient=-10.0
urgency.user.project.craft.coefficient=1.9 urgency.user.project.craft.coefficient=1.9
@ -78,6 +89,11 @@ urgency.user.tag.think.coefficient=-7.0
urgency.user.tag.purchase.coefficient=-1.2 urgency.user.tag.purchase.coefficient=-1.2
urgency.user.project.curve.glam.coefficient=-1.3 urgency.user.project.curve.glam.coefficient=-1.3
# UDAs
uda.taskwarrior-tui.shortcuts.1=~/.local/bin/task/set-focus.sh
uda.taskwarrior-tui.shortcuts.2=~/.local/bin/task/set-backlog.sh
uda.taskwarrior-tui.shortcuts.3=~/.local/bin/task/set-idea.sh
# Colors # Colors
color.project.chores=blue color.project.chores=blue
color.tag.dev=cyan color.tag.dev=cyan

View file

@ -20,7 +20,6 @@
boot.loader.grub = { boot.loader.grub = {
enable = true; enable = true;
device = "nodev"; device = "nodev";
version = 2;
efiSupport = true; efiSupport = true;
enableCryptodisk = true; enableCryptodisk = true;
efiInstallAsRemovable = true; efiInstallAsRemovable = true;
@ -86,9 +85,6 @@
networking.useDHCP = false; networking.useDHCP = false;
networking.interfaces.wlp3s0.useDHCP = true; networking.interfaces.wlp3s0.useDHCP = true;
# Set your time zone.
time.timeZone = "Australia/Brisbane";
# Enable the OpenSSH daemon. # Enable the OpenSSH daemon.
services.openssh.enable = true; services.openssh.enable = true;
networking.firewall.allowedTCPPorts = [ 22 ]; networking.firewall.allowedTCPPorts = [ 22 ];

View file

@ -8,11 +8,9 @@
]; ];
boot.loader.grub.enable = true; boot.loader.grub.enable = true;
boot.loader.grub.version = 2;
boot.loader.grub.device = "/dev/vda"; # or "nodev" for efi only boot.loader.grub.device = "/dev/vda"; # or "nodev" for efi only
networking.hostName = "cube"; # Define your hostname. networking.hostName = "cube"; # Define your hostname.
time.timeZone = "Australia/Brisbane";
networking.useDHCP = false; networking.useDHCP = false;
networking.interfaces.ens3.useDHCP = true; networking.interfaces.ens3.useDHCP = true;

View file

@ -1,7 +1,6 @@
{ {
imports = [ ./hardware-configuration.nix ]; imports = [ ./hardware-configuration.nix ];
boot.loader.grub.enable = true; boot.loader.grub.enable = true;
boot.loader.grub.version = 2;
# Define on which hard drive you want to install Grub. # Define on which hard drive you want to install Grub.
boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only
@ -28,8 +27,6 @@
networking.hostName = "curve"; networking.hostName = "curve";
#networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. #networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
time.timeZone = "Australia/Brisbane";
# Select internationalisation properties. # Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
# console = { # console = {

View file

@ -16,7 +16,8 @@
# ../profiles/mount-mossnet # ../profiles/mount-mossnet
]; ];
# home-manager.users.anish = import ../../home/gui; # import profiling tools
programs.systemtap.enable = true;
# Speed up boot by removing dependency on network # Speed up boot by removing dependency on network
systemd = { systemd = {

View file

@ -8,7 +8,6 @@
# Use the GRUB 2 boot loader. # Use the GRUB 2 boot loader.
boot.loader.grub.enable = true; boot.loader.grub.enable = true;
boot.loader.grub.version = 2;
boot.loader.grub.device = "/dev/vda"; # or "nodev" for efi only boot.loader.grub.device = "/dev/vda"; # or "nodev" for efi only
networking.hostName = "helix"; # Define your hostname. networking.hostName = "helix"; # Define your hostname.
@ -22,8 +21,6 @@
# Enable the OpenSSH daemon. # Enable the OpenSSH daemon.
services.openssh.enable = true; services.openssh.enable = true;
services.openssh.passwordAuthentication = false;
services.openssh.permitRootLogin = "no";
sound.enable = false; sound.enable = false;
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.

View file

@ -8,7 +8,6 @@
# Use the GRUB 2 boot loader. # Use the GRUB 2 boot loader.
boot.loader.grub.enable = true; boot.loader.grub.enable = true;
boot.loader.grub.version = 2;
boot.loader.grub.device = "/dev/vda"; # or "nodev" for efi only boot.loader.grub.device = "/dev/vda"; # or "nodev" for efi only
networking.hostName = "lituus"; # Define your hostname. networking.hostName = "lituus"; # Define your hostname.

View file

@ -42,6 +42,8 @@ in
openFirewall = lib.mkDefault false; openFirewall = lib.mkDefault false;
}; };
time.timeZone = "Canada/Pacific";
# programs.gnupg.agent.enable = true; # programs.gnupg.agent.enable = true;
# programs.gnupg.agent.pinentryFlavor = "curses"; # programs.gnupg.agent.pinentryFlavor = "curses";

View file

@ -44,6 +44,7 @@ in
packages = [ pkgs.dconf ]; packages = [ pkgs.dconf ];
}; };
}; };
programs.dconf.enable = true;
security.pam.services.Default.enableGnomeKeyring = true; security.pam.services.Default.enableGnomeKeyring = true;
security.pam.services.Login.enableGnomeKeyring = true; security.pam.services.Login.enableGnomeKeyring = true;
@ -63,7 +64,7 @@ in
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
unstable.sublime-music unstable.sublime-music
unstable.nheko unstable.nheko
unstable.tootle unstable.tuba
unstable.newsflash unstable.newsflash
unstable.liferea unstable.liferea

View file

@ -6,16 +6,18 @@
services.gitea = { services.gitea = {
enable = true; enable = true;
package = pkgs.unstable.forgejo; package = pkgs.forgejo;
appName = "Sealight Git Forge"; appName = "Sealight Git Forge";
domain = "git.sealight.xyz";
rootUrl = "https://git.sealight.xyz";
httpPort = 3001;
database = { database = {
type = "postgres"; type = "postgres";
passwordFile = "/run/agenix/gitea-dbpass"; passwordFile = "/run/agenix/gitea-dbpass";
}; };
settings = { settings = {
server = {
DOMAIN = "git.sealight.xyz";
ROOT_URL = "https://git.sealight.xyz";
HTTP_PORT = 3001;
};
metrics = { metrics = {
ENABLED = true; ENABLED = true;
}; };

View file

@ -1,12 +1,12 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
{ {
services.gonic.enable = true; mossnet.gonic.enable = true;
services.gonic.settings = '' mossnet.gonic.settings = ''
music-path /mnt/two/music/ music-path /mnt/two/music/
podcast-path /data/podcasts podcast-path /data/podcasts
cache-path /data/cache cache-path /data/cache
''; '';
services.gonic.group = "audio"; mossnet.gonic.user = "headphones";
services.gonic.user = "headphones"; mossnet.gonic.group = "audio";
networking.firewall.allowedTCPPorts = [ 4747 ]; networking.firewall.allowedTCPPorts = [ 4747 ];
} }

View file

@ -3,9 +3,9 @@
{ {
# k3s # k3s
networking.firewall.allowedTCPPorts = [ 6443 ]; networking.firewall.allowedTCPPorts = [ 6443 ];
services.k3s.enable = false; services.k3s.enable = true;
services.k3s.role = "server"; services.k3s.role = "server";
services.k3s.clusterInit = true; services.k3s.clusterInit = false;
# services.k3s.extraFlags = toString [ # services.k3s.extraFlags = toString [
# "--kubelet-arg=v=4" # Optionally add additional args to k3s # "--kubelet-arg=v=4" # Optionally add additional args to k3s
# ]; # ];

View file

@ -37,9 +37,10 @@
ensureUsers = [{ ensureUsers = [{
name = "grafana"; name = "grafana";
ensurePermissions = { ensurePermissions = {
"DATABASE wallabag" = "SELECT"; "ALL TABLES IN SCHEMA public" = "SELECT";
"DATABASE ulogger" = "SELECT"; "DATABASE wallabag" = "CONNECT";
"DATABASE photoprism" = "SELECT"; "DATABASE ulogger" = "CONNECT";
"DATABASE photoprism" = "CONNECT";
}; };
}]; }];
}; };

View file

@ -22,3 +22,4 @@
# 10.0.69.4 read.mossnet.lan # 10.0.69.4 read.mossnet.lan
# 10.0.69.4 stats.mossnet.lan # 10.0.69.4 stats.mossnet.lan
} }

View file

@ -39,13 +39,14 @@
alsa.support32Bit = true; alsa.support32Bit = true;
pulse.enable = true; pulse.enable = true;
jack.enable = true; jack.enable = true;
config = { # Deprecated as of 23.05
pipewire."context.properties"."default.clock.rate" = "48000"; # config = {
pipewire-pulse."stream.properties"."resample.quality" = 15; # pipewire."context.properties"."default.clock.rate" = "48000";
client."stream.properties"."resample.quality" = 15; # pipewire-pulse."stream.properties"."resample.quality" = 15;
client-rt."stream.properties"."resample.quality" = 15; # client."stream.properties"."resample.quality" = 15;
#jack."context.modules" = []; # client-rt."stream.properties"."resample.quality" = 15;
}; # #jack."context.modules" = [];
# };
#media-session.config.bluez-monitor.properties = { #media-session.config.bluez-monitor.properties = {
# "bluez5.headset-roles" = [ "hsp_hs" "hsp_ag" ]; # "bluez5.headset-roles" = [ "hsp_hs" "hsp_ag" ];
# "bluez5.codecs" = [ "aac" "ldac" "aptx_hd" ]; # "bluez5.codecs" = [ "aac" "ldac" "aptx_hd" ];

View file

@ -2,8 +2,8 @@
{ {
services.openssh = { services.openssh = {
enable = true; enable = true;
passwordAuthentication = false; settings.PasswordAuthentication = false;
permitRootLogin = "no"; settings.PermitRootLogin = "no";
}; };
networking.firewall.allowedTCPPorts = [ 80 443 22 ]; # ssh and website networking.firewall.allowedTCPPorts = [ 80 443 22 ]; # ssh and website
security.sudo.wheelNeedsPassword = false; # needed for deploy-rs security.sudo.wheelNeedsPassword = false; # needed for deploy-rs

View file

@ -1,30 +0,0 @@
{ config, pkgs, lib, ... }:
{
# services.tailscale.enable = true;
networking.firewall.allowedUDPPorts = [ 60990 ];
age.secrets.curve-wg.file = "/etc/nixos/secrets/curve-wg.age";
age.secrets.curve-wg.owner = "anish";
networking.wireguard.interfaces = {
# TODO need some kind of module here to configure curve & box from hosts or something
wg0 = {
ips = [ "10.0.69.2/24" ];
listenPort = 60990; # to match firewall allowedUDPPorts (without this wg uses random port numbers)
privateKeyFile = "/run/agenix/curve-wg";
peers = [
# For a client configuration, one peer entry for the server will suffice.
{
publicKey = "c1J4p63rD3IlszugMZiki7UBV3YmDdqa3DU4UejXzAI=";
allowedIPs = [ "10.0.69.0/24" ];
# Set this to the server IP and port.
endpoint = "69.61.38.225:60990"; # ToDo: route to endpoint not automatically configured https://wiki.archlinux.org/index.php/WireGuard#Loop_routing https://discourse.nixos.org/t/solved-minimal-firewall-setup-for-wireguard-client/7577
# Send keepalives every 25 seconds. Important to keep NAT tables alive.
persistentKeepalive = 25;
}
];
};
};
}

View file

@ -1,6 +1,7 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
programs.zsh.enable = true;
users.users.anish = { users.users.anish = {
description = "Personal user for Anish"; description = "Personal user for Anish";
hashedPassword = "$y$j9T$y3DPt/dWaPE.gRazQqw1w0$1RMH5sl/Nu8kW3ZMywYCPRniHD/jF5qRh0VKrdJ.bV2"; hashedPassword = "$y$j9T$y3DPt/dWaPE.gRazQqw1w0$1RMH5sl/Nu8kW3ZMywYCPRniHD/jF5qRh0VKrdJ.bV2";

View file

@ -10,5 +10,4 @@
backup = import ./backup.nix; backup = import ./backup.nix;
ulogger-server = import ./ulogger.nix; ulogger-server = import ./ulogger.nix;
microbin = import ./microbin.nix; microbin = import ./microbin.nix;
photoprism = import ./photoprism.nix; #TODO remove once updated to 23.05, stolen from nixpkgs anyway
} }

View file

@ -3,13 +3,13 @@
with lib; with lib;
let let
cfg = config.services.gonic; cfg = config.mossnet.gonic;
configFile = "/etc/gonic/config"; configFile = "/etc/gonic/config";
dataFolder = "/var/lib/gonic"; dataFolder = "/var/lib/gonic";
in { in {
options = { options = {
services.gonic = { mossnet.gonic = {
enable = mkEnableOption "Gonic music server and streamer"; enable = mkEnableOption "Gonic music server and streamer";
settings = lib.mkOption { settings = lib.mkOption {