Compare commits

...

40 Commits

Author SHA1 Message Date
Flake Bot
516ca213d9 Bump flake.lock
Signed-off-by: Flake Bot <41898282+github-actions[bot]@users.noreply.github.com>
2025-12-18 04:47:02 +00:00
9ca01f3477 use unstable tea
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 6m40s
Bump flake.lock / build (push) Successful in 6m27s
2025-09-21 09:35:07 -05:00
49a4ed1005 add tea
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 7m41s
2025-09-21 09:25:41 -05:00
a96190bce0 fix check
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 8m20s
Bump flake.lock / build (push) Successful in 18m34s
2025-09-20 21:57:38 -05:00
ddf02dcc73 lsp updates, nixpkgs updates, flirting with rmeoving omz
Some checks failed
Bump flake.lock / build (push) Failing after 10m33s
Test templates, puts into cache / nix (nix-runner) (push) Failing after 8m13s
2025-09-19 13:35:51 -05:00
975fc9f07f terraform-ls lsp nvim
Some checks failed
Test templates, puts into cache / nix (nix-runner) (push) Successful in 7m11s
Bump flake.lock / build (push) Failing after 7m1s
2025-09-18 17:47:15 -05:00
c5c4eb2f1e Merge pull request 'resurrect' (#8) from resurrect into master
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 5m13s
Bump flake.lock / build (push) Successful in 7m30s
Reviewed-on: #8
2025-09-16 17:23:51 +00:00
3810d4a0fc Merge branch 'master' into resurrect
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 15m20s
2025-09-16 12:01:18 -05:00
2b81c5749c fix: remove broken date echo from weacther
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 14m27s
2025-09-16 12:00:45 -05:00
a0f7c1be69 adding resurrect
Some checks failed
Test templates, puts into cache / nix (nix-runner) (push) Failing after 20m49s
2025-09-10 10:47:35 -05:00
71e62552e5 tmux config move 2025-09-10 10:01:48 -05:00
542cba92cb fmt sh scripts
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 6m42s
2025-09-09 12:58:10 -05:00
f5991b9df0 uair setup 1
Some checks are pending
Test templates, puts into cache / nix (nix-runner) (push) Has started running
2025-09-09 12:20:26 -05:00
9278c2d467 uair 2025-09-09 11:20:24 -05:00
5cf01c8df1 uair add config 2025-09-09 10:12:04 -05:00
58b3893a03 remove ssh keys
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 5m51s
2025-09-09 09:25:01 -05:00
09e02f623f adding nix-search-cli
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 9m56s
Bump flake.lock / build (push) Successful in 8m0s
2025-09-09 09:02:35 -05:00
a042d0ef59 remove comments
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 5m53s
Bump flake.lock / build (push) Successful in 16m16s
2025-08-27 20:38:15 -05:00
Flake Bot
87cd667cf0 Bump flake.lock
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 6m20s
Bump flake.lock / build (push) Successful in 8m9s
Signed-off-by: Flake Bot <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-25 04:46:22 +00:00
Flake Bot
332347bfa1 Bump flake.lock
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 6m53s
Bump flake.lock / build (push) Successful in 6m4s
Signed-off-by: Flake Bot <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-22 03:08:14 +00:00
33c802a405 keymap reorg in vim
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 5m47s
Bump flake.lock / build (push) Successful in 6m34s
2025-08-20 13:02:37 -05:00
472b93053f Merge remote-tracking branch 'refs/remotes/origin/master'
Some checks failed
Test templates, puts into cache / nix (nix-runner) (push) Failing after 13m31s
2025-08-20 12:41:41 -05:00
fb9bcb44fe add fzflua 2025-08-20 12:41:22 -05:00
f9ced40155 feat: adding me to docker group
Some checks are pending
Test templates, puts into cache / nix (nix-runner) (push) Waiting to run
2025-08-19 02:20:35 -05:00
fefdcfaa5c feat: enable docker on walrus
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 16m24s
Bump flake.lock / build (push) Successful in 6m3s
2025-08-19 02:09:23 -05:00
9e022de692 updating
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 5m18s
Bump flake.lock / build (push) Successful in 7m14s
2025-08-18 09:22:43 -05:00
a5aaa2cf5b fmt: formatting
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 5m1s
2025-08-11 18:35:56 -05:00
d3ed949ebf Merge branch 'flake-update' of ssh://gitea.deepak.science:2222/deepak/nixconf into flake-update
Some checks failed
Test templates, puts into cache / nix (nix-runner) (push) Has been cancelled
2025-08-11 18:33:17 -05:00
Flake Bot
82a0a086b5 Bump flake.lock
Signed-off-by: Flake Bot <41898282+github-actions[bot]@users.noreply.github.com>
2025-07-15 04:48:06 +00:00
1b2a8eee6d force update with bad config
Some checks failed
Test templates, puts into cache / nix (nix-runner) (push) Successful in 5m30s
Bump flake.lock / build (push) Failing after 5m44s
2025-06-26 13:38:20 -05:00
bb1c79b444 force bad formatting
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 6m19s
2025-06-18 11:30:05 -05:00
Flake Bot
d397e883e7 Bump flake.lock
Signed-off-by: Flake Bot <41898282+github-actions[bot]@users.noreply.github.com>
2025-06-14 04:48:25 +00:00
fb08430277 minor fixes
Some checks failed
Test templates, puts into cache / nix (nix-runner) (push) Successful in 6m29s
Bump flake.lock / build (push) Failing after 10m11s
2025-06-03 15:01:20 -05:00
a67d5981ec remove parrot.nvim and clean up nixpkgs follows 2025-06-03 14:52:56 -05:00
502ae1a4a3 Merge branch 'flake-update' of ssh://gitea.deepak.science:2222/deepak/nixconf into flake-update
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 7m44s
2025-06-03 14:31:41 -05:00
Flake Bot
45eff004ad Bump flake.lock
Signed-off-by: Flake Bot <41898282+github-actions[bot]@users.noreply.github.com>
2025-06-03 04:49:25 +00:00
7887873a5d Merge branch 'flake-update' of ssh://gitea.deepak.science:2222/deepak/nixconf into flake-update
All checks were successful
Test templates, puts into cache / nix (nix-runner) (push) Successful in 7m59s
2025-04-12 15:02:36 -05:00
9882538e46 Merge branch 'master' into flake-update 2025-04-12 15:00:08 -05:00
Flake Bot
b4797be130 Bump flake.lock
Signed-off-by: Flake Bot <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-12 04:48:45 +00:00
Flake Bot
47f262e1d5 Bump flake.lock
Signed-off-by: Flake Bot <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-08 04:57:31 +00:00
15 changed files with 318 additions and 473 deletions

View File

@@ -15,23 +15,6 @@ jobs:
- run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- name: Install SSH keys
uses: shimataro/ssh-key-action@d4fffb50872869abe2d9a9098a6d9c5aa7d16be4
with:
key: ${{ secrets.SSH_GITEA_SSH_KEY }}
name: gitea_action
known_hosts: ${{ secrets.SSH_GITEA_KNOWN_HOSTS }}
- name: Agent SSH keys
uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: ${{ secrets.SSH_GITEA_SSH_KEY }}
# name: gitea_action
# known_hosts: ${{ secrets.SSH_GITEA_KNOWN_HOSTS }}
#- name: Fix SSH key
# run: sed -i 's/\r$//g' /root/.ssh/gitea_action
- name: List files in the repository
run: |
ls ${{ gitea.workspace }}
# installing nix not necessary for nix-runner but doesn't take much time
- name: Install Nix
uses: cachix/install-nix-action@v31

138
flake.lock generated
View File

@@ -1,18 +1,18 @@
{
"nodes": {
"NixOS-WSL-2411": {
"NixOS-WSL-stable": {
"inputs": {
"flake-compat": "flake-compat",
"nixpkgs": [
"nixpkgs-24-11"
"nixpkgs-stable"
]
},
"locked": {
"lastModified": 1746453552,
"narHash": "sha256-r66UGha+7KVHkI7ksrcMjnw/mm9Sg4l5bQlylxHwdGU=",
"lastModified": 1765841014,
"narHash": "sha256-55V0AJ36V5Egh4kMhWtDh117eE3GOjwq5LhwxDn9eHg=",
"owner": "nix-community",
"repo": "NixOS-WSL",
"rev": "be618645aa0adf461f778500172b6896d5ab2d01",
"rev": "be4af8042e7a61fa12fda58fe9a3b3babdefe17b",
"type": "github"
},
"original": {
@@ -65,11 +65,11 @@
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"lastModified": 1765121682,
"narHash": "sha256-4VBOP18BFeiPkyhy9o4ssBNQEvfvv1kXkasAYd0+rrA=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"rev": "65f23138d8d09a92e30f1e5c87611b23ef451bf3",
"type": "github"
},
"original": {
@@ -78,23 +78,23 @@
"type": "github"
}
},
"homeManager-24-11": {
"homeManager-stable": {
"inputs": {
"nixpkgs": [
"nixpkgs-24-11"
"nixpkgs-stable"
]
},
"locked": {
"lastModified": 1747688870,
"narHash": "sha256-ypL9WAZfmJr5V70jEVzqGjjQzF0uCkz+AFQF7n9NmNc=",
"lastModified": 1763992789,
"narHash": "sha256-WHkdBlw6oyxXIra/vQPYLtqY+3G8dUVZM8bEXk0t8x4=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "d5f1f641b289553927b3801580598d200a501863",
"rev": "44831a7eaba4360fb81f2acc5ea6de5fde90aaa3",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-24.11",
"ref": "release-25.05",
"repo": "home-manager",
"type": "github"
}
@@ -132,29 +132,29 @@
"type": "github"
}
},
"nixpkgs-24-11": {
"nixpkgs-stable": {
"locked": {
"lastModified": 1747862697,
"narHash": "sha256-U4HaNZ1W26cbOVm0Eb5OdGSnfQVWQKbLSPrSSa78KC0=",
"lastModified": 1765687488,
"narHash": "sha256-7YAJ6xgBAQ/Nr+7MI13Tui1ULflgAdKh63m1tfYV7+M=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "2baa12ff69913392faf0ace833bc54bba297ea95",
"rev": "d02bcc33948ca19b0aaa0213fe987ceec1f4ebe1",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.11",
"ref": "nixos-25.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1748026106,
"narHash": "sha256-6m1Y3/4pVw1RWTsrkAK2VMYSzG4MMIj7sqUy7o8th1o=",
"lastModified": 1765779637,
"narHash": "sha256-KJ2wa/BLSrTqDjbfyNx70ov/HdgNBCBBSQP3BIzKnv4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "063f43f2dbdef86376cc29ad646c45c46e93234c",
"rev": "1306659b587dc277866c7b69eb97e5f07864d8c4",
"type": "github"
},
"original": {
@@ -164,38 +164,6 @@
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1744868846,
"narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1745377448,
"narHash": "sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "507b63021ada5fee621b6ca371c4fca9ca46f52c",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nomodoro": {
"flake": false,
"locked": {
@@ -216,11 +184,11 @@
"nvim-web-devicons": {
"flake": false,
"locked": {
"lastModified": 1747360641,
"narHash": "sha256-+RHeFaeCF/iwAf8qAOjbEIl3YcnrBMVfkQnnzDNhyTA=",
"lastModified": 1761440007,
"narHash": "sha256-klBjUtj0AvarN5a6O8Hh2t5BuOTe/m3ps2cHnlxVJvE=",
"owner": "nvim-tree",
"repo": "nvim-web-devicons",
"rev": "1fb58cca9aebbc4fd32b086cb413548ce132c127",
"rev": "8dcb311b0c92d460fac00eac706abd43d94d68af",
"type": "github"
},
"original": {
@@ -230,23 +198,6 @@
"type": "github"
}
},
"parrot-nvim": {
"flake": false,
"locked": {
"lastModified": 1748147719,
"narHash": "sha256-RwXHlaxH3a3ydVZM7rxRCEst6qRg/uAqdTHraSii4z8=",
"owner": "frankroeder",
"repo": "parrot.nvim",
"rev": "acfec2bab4b6e5ab2c12f736fe74041b769be6c3",
"type": "github"
},
"original": {
"owner": "frankroeder",
"ref": "main",
"repo": "parrot.nvim",
"type": "github"
}
},
"pyproject-build-systems": {
"inputs": {
"nixpkgs": [
@@ -299,16 +250,15 @@
},
"root": {
"inputs": {
"NixOS-WSL-2411": "NixOS-WSL-2411",
"NixOS-WSL-stable": "NixOS-WSL-stable",
"claude-mcp-bundle": "claude-mcp-bundle",
"cmp-vimtex": "cmp-vimtex",
"homeManager-24-11": "homeManager-24-11",
"homeManager-stable": "homeManager-stable",
"mdt": "mdt",
"nixpkgs": "nixpkgs_2",
"nixpkgs-24-11": "nixpkgs-24-11",
"nixpkgs-stable": "nixpkgs-stable",
"nomodoro": "nomodoro",
"nvim-web-devicons": "nvim-web-devicons",
"parrot-nvim": "parrot-nvim",
"sops-nix": "sops-nix",
"spaceport-nvim": "spaceport-nvim",
"systems": "systems",
@@ -318,14 +268,16 @@
},
"sops-nix": {
"inputs": {
"nixpkgs": "nixpkgs_3"
"nixpkgs": [
"nixpkgs-stable"
]
},
"locked": {
"lastModified": 1747603214,
"narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=",
"lastModified": 1765836173,
"narHash": "sha256-hWRYfdH2ONI7HXbqZqW8Q1y9IRbnXWvtvt/ONZovSNY=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd",
"rev": "443a7f2e7e118c4fc63b7fae05ab3080dd0e5c63",
"type": "github"
},
"original": {
@@ -337,11 +289,11 @@
"spaceport-nvim": {
"flake": false,
"locked": {
"lastModified": 1746506720,
"narHash": "sha256-b6evuwzr3PMfUYYW3s3PxlZbcv228RCNCF99J3sKlDY=",
"lastModified": 1755221272,
"narHash": "sha256-5YUAzZL9Em6HnX2rS29X62S5ExUFyoTmT+RZpuL4Y18=",
"owner": "CWood-sdf",
"repo": "spaceport.nvim",
"rev": "e8b598bd3d25e3838b37ca28064388e1485bafde",
"rev": "ac6404759d6f757494a75f259884ec1e8b0b7dcf",
"type": "github"
},
"original": {
@@ -385,14 +337,16 @@
},
"treefmt-nix_2": {
"inputs": {
"nixpkgs": "nixpkgs_4"
"nixpkgs": [
"nixpkgs-stable"
]
},
"locked": {
"lastModified": 1747912973,
"narHash": "sha256-XgxghfND8TDypxsMTPU2GQdtBEsHTEc3qWE6RVEk8O0=",
"lastModified": 1766000401,
"narHash": "sha256-+cqN4PJz9y0JQXfAK5J1drd0U05D5fcAGhzhfVrDlsI=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "020cb423808365fa3f10ff4cb8c0a25df35065a3",
"rev": "42d96e75aa56a3f70cab7e7dc4a32868db28e8fd",
"type": "github"
},
"original": {
@@ -429,11 +383,11 @@
"zsh-completions": {
"flake": false,
"locked": {
"lastModified": 1748139410,
"narHash": "sha256-OcRpvlTuNIOzYwq4g3QSqXkn0dk7xny8UY87jF6ffT0=",
"lastModified": 1765882669,
"narHash": "sha256-EUnR/iIzNE9/ba4O+dPu68JJtgoMIQAjhNcy/Ib6XTg=",
"owner": "zsh-users",
"repo": "zsh-completions",
"rev": "21789376b8c875fbed68398a6867f84f5c682597",
"rev": "6ceec63710a422c0b5e5c6eecb7ddeff3506a7a3",
"type": "github"
},
"original": {

View File

@@ -3,19 +3,26 @@
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-24-11.url = "github:NixOS/nixpkgs/nixos-24.11";
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-25.05";
treefmt-nix.url = "github:numtide/treefmt-nix";
sops-nix.url = "github:Mic92/sops-nix";
NixOS-WSL-2411 = {
url = "github:nix-community/NixOS-WSL";
inputs.nixpkgs.follows = "nixpkgs-24-11";
treefmt-nix = {
url = "github:numtide/treefmt-nix";
inputs.nixpkgs.follows = "nixpkgs-stable";
};
homeManager-24-11 = {
url = "github:nix-community/home-manager/release-24.11";
inputs.nixpkgs.follows = "nixpkgs-24-11";
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs-stable";
};
NixOS-WSL-stable = {
url = "github:nix-community/NixOS-WSL";
inputs.nixpkgs.follows = "nixpkgs-stable";
};
homeManager-stable = {
url = "github:nix-community/home-manager/release-25.05";
inputs.nixpkgs.follows = "nixpkgs-stable";
};
# Custom Vim Plugins
@@ -28,10 +35,10 @@
flake = false;
};
parrot-nvim = {
url = "github:frankroeder/parrot.nvim/main";
flake = false;
};
# parrot-nvim = {
# url = "github:frankroeder/parrot.nvim/main";
# flake = false;
# };
nomodoro = {
url = "github:dbinagi/nomodoro/main";
@@ -77,7 +84,7 @@
inherit spaceport-nvim;
inherit inputs;
inherit nomodoro;
parrot-nvim = inputs.parrot-nvim;
# parrot-nvim = inputs.parrot-nvim;
}).overlay;
# Small tool to iterate over each systems
eachSystem = f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system});

View File

@@ -0,0 +1,9 @@
#!/usr/bin/env bash
# Notify with tmux?
message="Break done"
echo "sth"
echo "$message"
tmux display-popup -T "uair" "echo -e \"$message\""

View File

@@ -0,0 +1,13 @@
#!/usr/bin/env bash
# Notify with tmux?
message="
$1
exit with ctrl-C, resume next with uairctl
"
echo "sth"
echo "$message"
tmux display-popup -T "uair" "echo -e \"$message\""

View File

@@ -0,0 +1,19 @@
loop_on_end = true
[defaults]
format = "🍅 {name} {state}: {time}\n"
paused_state_text = "paused"
resumed_state_text = "playing"
[[sessions]]
id = "work"
name = "Work"
duration = "10m"
command = '~/.config/uair/scripts/notify.sh "Work Done!"'
[[sessions]]
id = "rest"
name = "Rest"
duration = "2m"
command = "~/.config/uair/scripts/break.sh"

View File

@@ -11,62 +11,65 @@ in
# default_python = pkgs-unstable.python313;
{
programs.home-manager.enable = true;
home.packages =
[
pkgs.hello
# (pkgs.writeScriptBin "nixFlakes" ''
# exec ${pkgs.nixVersions.git}/bin/nix --experimental-features "nix-command flakes" "$@"
# '')
pkgs.cachix
pkgs.attic-client
pkgs.kubectl
pkgs.bat
pkgs.eza
pkgs.fd
pkgs.ripgrep
pkgs.just
pkgs.chafa
pkgs.fontpreview
pkgs.poppler_utils
pkgs.tdf
pkgs.viu
pkgs.jq
home.packages = [
pkgs.hello
# (pkgs.writeScriptBin "nixFlakes" ''
# exec ${pkgs.nixVersions.git}/bin/nix --experimental-features "nix-command flakes" "$@"
# '')
pkgs.nix-search-cli
pkgs.cachix
pkgs.attic-client
pkgs.kubectl
pkgs.bat
pkgs.eza
pkgs.fd
pkgs.ripgrep
pkgs.just
pkgs.chafa
pkgs.fontpreview
pkgs.poppler_utils
pkgs.tdf
pkgs.viu
pkgs.jq
pkgs.wego
# cli markdown tool
pkgs.glow
pkgs-unstable.tea
# lsps
# pkgs.nil
pkgs.nixd
# pkgs.nodePackages.pyright
pkgs.pyright
pkgs.wego
# cli markdown tool
pkgs.glow
pkgs.thefuck
pkgs.fzf
pkgs.sops
pkgs.age
pkgs.ydiff
pkgs.xsel
pkgs.delta
# lsps
# pkgs.nil
pkgs.nixd
pkgs.pyright
pkgs.terraform-ls
pkgs-unstable.claude-code
# default_python
# pkgs-unstable.uv
# pkgs-unstable.nodejs
pkgs.thefuck
pkgs.fzf
pkgs.sops
pkgs.age
pkgs.ydiff
pkgs.xsel
pkgs.delta
pkgs.uair
# From our claude bundle
pkgs.custom-servers.arxiv-mcp-server
pkgs.custom-servers.basic-memory-server
pkgs.custom-servers.mcp-text-editor
]
++ pkgs.lib.optionals specialArgs.withGUI [
pkgs.discord
pkgs.obsidian
pkgs.audacity
pkgs.nextcloud-client
pkgs.libreoffice-qt6-fresh
];
pkgs-unstable.claude-code
# default_python
# pkgs-unstable.uv
# pkgs-unstable.nodejs
# From our claude bundle
pkgs.custom-servers.arxiv-mcp-server
pkgs.custom-servers.basic-memory-server
pkgs.custom-servers.mcp-text-editor
]
++ pkgs.lib.optionals specialArgs.withGUI [
pkgs.discord
pkgs.obsidian
pkgs.audacity
pkgs.nextcloud-client
pkgs.libreoffice-qt6-fresh
];
home.homeDirectory = "/home/deepak";
home.username = "deepak";
@@ -100,6 +103,7 @@ in
programs.direnv.nix-direnv.enable = true;
xdg.enable = true;
xdg.configFile."uair".source = ./config/uair;
services.nextcloud-client = pkgs.lib.mkIf specialArgs.withGUI {
enable = true;
@@ -133,7 +137,7 @@ in
defaultEditor = true;
vimAlias = true;
plugins = with pkgs.vimPlugins; [
plugins = with pkgs-unstable.vimPlugins; [
{
plugin = vimtex;
config = "let g:nix_recommended_style = 0";
@@ -147,15 +151,18 @@ in
telescope-file-browser-nvim
telescope-media-files-nvim
telescope-symbols-nvim
# need fzf for parrot
fzf-lua
ctrlp-vim
# ctrlp-vim
# lsp stuff
lsp-zero-nvim
nvim-cmp
cmp-nvim-lsp
cmp_luasnip
nvim-lspconfig
friendly-snippets
luasnip
guess-indent-nvim
@@ -172,8 +179,6 @@ in
vim-fugitive
flash-nvim
gitsigns-nvim
friendly-snippets
luasnip
which-key-nvim
overseer-nvim
@@ -195,7 +200,7 @@ in
pkgs.customVimPlugins.cmp-vimtex
# pkgs.customVimPlugins.spaceport-nvim
pkgs.customVimPlugins.nomodoro
pkgs.customVimPlugins.parrot-nvim
# pkgs.customVimPlugins.parrot-nvim
pkgs.customVimPlugins.nvim-web-devicons
# syntax highlighting
@@ -206,6 +211,11 @@ in
programs.thefuck.enable = true;
programs.fzf = {
enable = true;
enableZshIntegration = true;
};
programs.zsh = {
enable = true;
shellAliases = {
@@ -249,68 +259,15 @@ in
}
pkgs.customZshPlugins.zsh-completions
];
initExtra = ''
initContent = ''
eval "$(${pkgs.direnv}/bin/direnv hook zsh)"
'';
};
programs.tmux = {
enable = true;
package = pkgs-unstable.tmux;
historyLimit = 100000;
clock24 = true;
keyMode = "vi";
mouse = true;
prefix = "M-,";
plugins = [
pkgs.tmuxPlugins.vim-tmux-navigator
pkgs.tmuxPlugins.better-mouse-mode
pkgs.tmuxPlugins.sensible
# pkgs.tmuxPlugins.tmux-powerline
# {
# plugin = pkgs.tmuxPlugins.dracula;
# extraConfig = ''
# set -g @dracula-show-battery true
# set -g @dracula-show-powerline true
# set -g @dracula-refresh-rate 10
# set -g @dracula-colors "
# # simple catppuccin Color Pallette
# pink='#cba6f7'
# orange='#fab387'
# yellow='#f9e2af'
# green='#a6e3a1'
# cyan='#89dceb'
# light_purple='#b4befe'
# white='#cdd6f4'
# dark_gray='#313244'
# red='#f38ba8'
# gray='#45475a'
# dark_purple='#6c7086'
# "
# '';
# }
pkgs.tmuxPlugins.power-theme
];
extraConfig = ''
set-option -g status-position top
unbind '"'
unbind %
set -s copy-command 'xsel -bi'
bind -N "Change layout" -T prefix % next-layout
bind -N "Horizontal split" -T prefix | split-window -h -c '#{pane_current_path}'
bind -N "Horizontal split" -T prefix \\ split-window -h -c '#{pane_current_path}'
bind -N "Vertical split" -T prefix - split-window -v -c '#{pane_current_path}'
bind -N "Create a new window" -T prefix c new-window -c '#{pane_current_path}'
bind -N "Quick pane for obsidian todos" -T prefix . split-window -c $DPK_OBSIDIAN_DIR -h "vim todos.md"
bind -N "Enter copy mode" -T prefix Space copy-mode
bind -N "Load buffer from xsel and paste" -T prefix C-p run "xsel -ob | tmux load-buffer - ; tmux paste-buffer"
set -g escape-time 1
bind -N "Leave copy mode" -T copy-mode-vi Escape send-keys -X cancel
bind -N "Leave copy mode" -T copy-mode-vi y send -X copy-pipe
bind -N "Selection toggle" -T copy-mode-vi Space if -F "#{selection_present}" { send -X clear-selection } { send -X begin-selection }
bind -N "Copy and leave copy-mode" -T copy-mode-vi Enter send -X copy-pipe-and-cancel
set-option -g status-right "#[fg=#ffb86c]#[fg=#262626,bg=#ffb86c]#(cat ${config.xdg.cacheHome}/weather/short-weather.txt) #[fg=#3a3a3a,bg=#ffb86c]#[fg=#ffb86c,bg=#3a3a3a] %T #[fg=#ffb86c,bg=#3a3a3a]#[fg=#262626,bg=#ffb86c] %F "
'';
programs.tmux = import ./tmux/tmux.nix {
inherit config;
inherit pkgs;
inherit pkgs-unstable;
};
programs.newsboat = {
@@ -391,8 +348,6 @@ in
ExecStart = pkgs.writeShellScript "cache-weather-script" ''
set -euxo pipefail
# PATH=$PATH:${lib.makeBinPath [ pkgs.wego ]}
echo "`date`"
echo "that's the date"
${pkgs.wego}/bin/wego --help
${pkgs.wego}/bin/wego -f json > ${config.xdg.cacheHome}/weather/weather-cache.json
${pkgs.jq}/bin/jq -r '. | {location: .Location, current_tempc: .Current.TempC, current_tempf: ((1.8 * .Current.TempC + 32) |round), desc: .Current.Desc} | "\(.location): \(.current_tempf) F \(.desc)"' ~/.cache/weather/weather-cache.json > ${config.xdg.cacheHome}/weather/short-weather.txt
@@ -414,4 +369,20 @@ in
};
};
systemd.user.services = {
uair = {
Unit = {
Description = "Uair pomodoro timer";
};
Service = {
Type = "simple";
ExecStart = "${pkgs.uair}/bin/uair -q";
Restart = "always";
};
Install = {
WantedBy = [ "default.target" ];
};
};
};
}

View File

@@ -1,4 +1,5 @@
{ config }:
{ ... }:
# ^ passing in config for things as needed but we don't use it currently
''
inoremap jj <Esc>
inoremap kk <Esc>
@@ -27,10 +28,6 @@
vim.keymap.set("n", "<leader>N", "R<Enter><Esc>")
vim.g.python_recommended_style = 0
-- ctrlp setup
vim.g.ctrlp_custom_ignore = {
file = '\\v\\.(aux|bbl|blg|bcf|fdb_latexmk|fls|run.xml|tdo|toc|log|pdf)$'
}
require('gitsigns').setup()
require("oil").setup({
@@ -72,10 +69,18 @@
require("nightfox").setup({})
vim.cmd("colorscheme kanagawa-dragon")
vim.keymap.set('n', "<leader>z", '<Nop>', { noremap = true, desc = "Toggles"})
vim.keymap.set('n', "<leader>zm", '<cmd>ZenMode<CR>', { noremap = true, desc = "Toggle zen-mode" })
require('flash').setup()
vim.keymap.set('n', "<leader>ft", function() require("flash").toggle() end, {desc = "Toggle flash.nvim search", noremap = true})
vim.keymap.set('n', "<leader>zf", function() require("flash").toggle() end, {desc = "Toggle flash.nvim search", noremap = true})
vim.keymap.set('n', "<leader>f", '<Nop>', { noremap = true, desc = "FzfLua"})
vim.keymap.set('n', "<leader>fl", '<cmd>FzfLua<CR>', {desc = "FzfLua", noremap = true})
vim.keymap.set('n', "<leader>ff", function() require("fzf-lua").files() end, {desc = "FzfLua file search", noremap = true})
-- set ctrlp for muscle memory
vim.keymap.set('n', "<C-p>", function() require("fzf-lua").files() end, {desc = "FzfLua file search", noremap = true})
require('guess-indent').setup {}
require('which-key').setup({})
${builtins.readFile ./lsp.lua}
@@ -92,170 +97,6 @@
vim.g.vimtex_fold_enabled = true
${builtins.readFile ./overseer.lua}
require("parrot").setup({
providers = {
anthropic = {
api_key = { "cat", "${config.sops.secrets.anthropic_api_key.path}" },
},
},
hooks = {
Complete = function(prt, params)
local template = [[
I have the following code from {{filename}}:
```{{filetype}}
{{selection}}
```
Please finish the code above carefully and logically.
Respond just with the snippet of code that should be inserted."
]]
local model_obj = prt.get_model "command"
prt.Prompt(params, prt.ui.Target.append, model_obj, nil, template)
end,
CompleteFullContext = function(prt, params)
local template = [[
I have the following code from {{filename}}:
```{{filetype}}
{{filecontent}}
```
Please look at the following section specifically:
```{{filetype}}
{{selection}}
```
Please finish the code above carefully and logically.
Respond just with the snippet of code that should be inserted.
]]
local model_obj = prt.get_model "command"
prt.Prompt(params, prt.ui.Target.append, model_obj, nil, template)
end,
CompleteMultiContext = function(prt, params)
local template = [[
I have the following code from {{filename}} and other realted files:
```{{filetype}}
{{multifilecontent}}
```
Please look at the following section specifically:
```{{filetype}}
{{selection}}
```
Please finish the code above carefully and logically.
Respond just with the snippet of code that should be inserted.
]]
local model_obj = prt.get_model "command"
prt.Prompt(params, prt.ui.Target.append, model_obj, nil, template)
end,
Explain = function(prt, params)
local template = [[
Your task is to take the code snippet from {{filename}} and explain it with gradually increasing complexity.
Break down the code's functionality, purpose, and key components.
The goal is to help the reader understand what the code does and how it works.
```{{filetype}}
{{selection}}
```
Use the markdown format with codeblocks and inline code.
Explanation of the code above:
]]
local model = prt.get_model "command"
prt.logger.info("Explaining selection with model: " .. model.name)
prt.Prompt(params, prt.ui.Target.new, model, nil, template)
end,
ProofReader = function(prt, params)
local chat_prompt = [[
I want you to act as a proofreader. I will provide you with texts and
I would like you to review them for any spelling, grammar, or
punctuation errors. Once you have finished reviewing the text,
provide me with any necessary corrections or suggestions to improve the
text. Highlight the corrected fragments (if any) using markdown backticks.
When you have done that subsequently provide me with a slightly better
version of the text, but keep close to the original text.
Finally provide me with an ideal version of the text.
For each of these versions, you can elide sections which include long unchanged text with NO_CHANGES_HERE.
Whenever I provide you with text, you reply in this format directly:
## Summary of suggestions:
{a brief list of spelling, grammar and punctuation errors, with brief snippets of the original text so I can search and find each change, followed by summaries of what types of changes are in the slightly better and ideal versions}
## Corrected text:
{corrected text, or say "NO_CORRECTIONS_NEEDED" instead if there are no corrections made}
## Slightly better text
{slightly better text}
## Ideal text
{ideal text}
]]
prt.ChatNew(params, chat_prompt)
end,
ProofReader2 = function(prt, params)
local chat_prompt = [[
I want you to act as a professional proofreader and editor. When I provide you with text, please:
1. First, identify and correct errors in
- spelling
- grammar
- punctuation
- syntax errors.
- Technical accuracy (for domain-specific content especially)
Mark corrections using markdown backticks.
2. Second, analyze stylistic elements including
- clarity
- conciseness
- word choice
- sentence structure
- paragraph organization and transitions (as appropriate for text length)
3. Provide your response in this structured format:
# Summary of the text:
Provide a concise overview of the text (1-2 sentences).
For longer texts (5+ paragraphs), include a brief outline of the content.
## Summary of suggestions:
- List specific errors found with brief context
- Group similar issues together
- Note patterns if they exist
- Highlight 3-5 most impactful improvements
- Summarize the types of improvements made in each version
## Corrected text:
Present the text with technical errors fixed (or state "NO_CORRECTIONS_NEEDED" if appropriate)
## Enhanced text:
Provide a version with moderate improvements to readability and flow while preserving the original voice and style. You may use [NO_CHANGES_HERE] to indicate substantial unchanged sections to keep your response more concise.
## Optimal text:
Present an ideal version that maintains the original intent but optimizes for clarity, impact, and professional quality. Use [NO_CHANGES_HERE] as mentioned above.
Please maintain the original meaning and tone while making your suggestions. If you're uncertain about the author's intent in any section, note this and provide alternative interpretations.
For very long texts, focus on the most impactful improvements.
]]
prt.ChatNew(params, chat_prompt)
end,
},
})
vim.api.nvim_set_keymap("n", "<leader>pt", "<cmd>PrtChatToggle<CR>", { noremap = true})
require("nomodoro").setup({
work_time = 10,

View File

@@ -1,11 +1,12 @@
local lsp_zero = require("lsp-zero")
lsp_zero.on_attach(function(client, bufnr)
lsp_zero.default_keymaps({ buffer = bufnr })
end)
-- local lsp_zero = require("lsp-zero")
-- lsp_zero.on_attach(function(client, bufnr)
-- lsp_zero.default_keymaps({ buffer = bufnr })
-- end)
local cmp = require("cmp")
local cmp_format = lsp_zero.cmp_format({ details = true })
local cmp_action = lsp_zero.cmp_action()
local luasnip = require("luasnip")
-- local cmp_format = lsp_zero.cmp_format({ details = true })
-- local cmp_action = lsp_zero.cmp_action()
require("luasnip.loaders.from_vscode").lazy_load()
@@ -26,13 +27,39 @@ cmp.setup({
},
formatting = cmp_format,
mapping = cmp.mapping.preset.insert({
-- ['<Tab>'] = cmp_action.tab_complete(),
-- ['<S-Tab>'] = cmp_action.select_prev_or_fallback(),
["<Tab>"] = cmp_action.luasnip_supertab(),
["<S-Tab>"] = cmp_action.luasnip_shift_supertab(),
["<C-f>"] = cmp_action.luasnip_jump_forward(),
["<C-b>"] = cmp_action.luasnip_jump_backward(),
["<CR>"] = cmp.mapping.confirm({ select = false }),
["<CR>"] = cmp.mapping(function(fallback)
if cmp.visible() then
if luasnip.expandable() then
luasnip.expand()
else
cmp.confirm({
select = true,
})
end
else
fallback()
end
end),
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip.locally_jumpable(1) then
luasnip.jump(1)
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.locally_jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end, { "i", "s" }),
}),
window = {
completion = cmp.config.window.bordered(),
@@ -40,10 +67,10 @@ cmp.setup({
},
snippet = {
expand = function(args)
require("luasnip").lsp_expand(args.body)
luasnip.lsp_expand(args.body)
end,
},
})
-- require("lspconfig").nil_ls.setup({})
require("lspconfig").pyright.setup({})
require("lspconfig").nixd.setup({})
vim.lsp.enable("pyright")
vim.lsp.enable("nixd")
vim.lsp.enable("terraformls")

View File

@@ -26,7 +26,7 @@ require("lualine").setup({
icons_enabled = false,
},
require("nomodoro").status,
parrot_status,
-- parrot_status,
},
lualine_x = {
"encoding",

42
home/deepak/tmux/tmux.nix Normal file
View File

@@ -0,0 +1,42 @@
{
config,
pkgs,
pkgs-unstable,
}:
{
enable = true;
package = pkgs-unstable.tmux;
historyLimit = 100000;
clock24 = true;
keyMode = "vi";
mouse = true;
prefix = "M-,";
plugins = [
pkgs.tmuxPlugins.vim-tmux-navigator
pkgs.tmuxPlugins.better-mouse-mode
pkgs.tmuxPlugins.sensible
pkgs.tmuxPlugins.power-theme
pkgs.tmuxPlugins.resurrect
];
extraConfig = ''
set-option -g status-position top
unbind '"'
unbind %
set -s copy-command 'xsel -bi'
bind -N "Change layout" -T prefix % next-layout
bind -N "Horizontal split" -T prefix | split-window -h -c '#{pane_current_path}'
bind -N "Horizontal split" -T prefix \\ split-window -h -c '#{pane_current_path}'
bind -N "Vertical split" -T prefix - split-window -v -c '#{pane_current_path}'
bind -N "Create a new window" -T prefix c new-window -c '#{pane_current_path}'
bind -N "Quick pane for obsidian todos" -T prefix . split-window -c $DPK_OBSIDIAN_DIR -h "vim todos.md"
bind -N "Enter copy mode" -T prefix Space copy-mode
bind -N "Load buffer from xsel and paste" -T prefix C-p run "xsel -ob | tmux load-buffer - ; tmux paste-buffer"
set -g escape-time 1
bind -N "Leave copy mode" -T copy-mode-vi Escape send-keys -X cancel
bind -N "Leave copy mode" -T copy-mode-vi y send -X copy-pipe
bind -N "Selection toggle" -T copy-mode-vi Space if -F "#{selection_present}" { send -X clear-selection } { send -X begin-selection }
bind -N "Copy and leave copy-mode" -T copy-mode-vi Enter send -X copy-pipe-and-cancel
set-option -g status-right "#[fg=#ffb86c]#[fg=#262626,bg=#ffb86c]#(cat ${config.xdg.cacheHome}/weather/short-weather.txt) #[fg=#3a3a3a,bg=#ffb86c]#[fg=#ffb86c,bg=#3a3a3a] %T #[fg=#ffb86c,bg=#3a3a3a]#[fg=#262626,bg=#ffb86c] %F "
'';
}

View File

@@ -69,6 +69,7 @@ in
extraGroups = [
"wheel"
"networkmanager"
"docker"
]; # Enable sudo for the user.
shell = pkgs.zsh;
};

View File

@@ -16,53 +16,25 @@ let
};
in
{
"maxos" = inputs.nixpkgs-24-11.lib.nixosSystem {
system = linuxSystem;
specialArgs = {
inherit customPackageOverlay;
inherit nixpkgs-unstable;
withDocker = false;
};
modules = [
./maxos/configuration.nix
inputs.sops-nix.nixosModules.sops
inputs.homeManager-24-11.nixosModules.home-manager
{
home-manager.extraSpecialArgs = {
withGUI = true;
gitSigningKey = "976F3357369149AB";
rundirnum = "1000";
inherit nixpkgs-unstable;
};
home-manager.useGlobalPkgs = true;
home-manager.users.deepak = {
imports = [ ../home/deepak/home.nix ];
};
home-manager.sharedModules = [
inputs.sops-nix.homeManagerModules.sops
];
}
];
};
"nixosWalrus" = inputs.nixpkgs-24-11.lib.nixosSystem {
"nixosWalrus" = inputs.nixpkgs-stable.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit customPackageOverlay;
inherit nixpkgs-unstable;
hostname = "nixosWalrus";
stateVersion = "24.11";
withDocker = false;
withDocker = true;
};
modules = [
(
{ ... }:
{
nix.registry.nixpkgs.flake = inputs.nixpkgs-24-11;
nix.registry.nixpkgs.flake = inputs.nixpkgs-stable;
}
)
./commonWSL-configuration.nix
inputs.sops-nix.nixosModules.sops
inputs.homeManager-24-11.nixosModules.home-manager
inputs.homeManager-stable.nixosModules.home-manager
{
home-manager.extraSpecialArgs = {
withGUI = false;
@@ -81,10 +53,10 @@ in
];
}
inputs.NixOS-WSL-2411.nixosModules.wsl
inputs.NixOS-WSL-stable.nixosModules.wsl
];
};
"nixosEggYoke" = inputs.nixpkgs-24-11.lib.nixosSystem {
"nixosEggYoke" = inputs.nixpkgs-stable.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {
inherit customPackageOverlay;
@@ -97,12 +69,12 @@ in
(
{ ... }:
{
nix.registry.nixpkgs.flake = inputs.nixpkgs-24-11;
nix.registry.nixpkgs.flake = inputs.nixpkgs-stable;
}
)
./commonWSL-configuration.nix
inputs.sops-nix.nixosModules.sops
inputs.homeManager-24-11.nixosModules.home-manager
inputs.homeManager-stable.nixosModules.home-manager
{
home-manager.extraSpecialArgs = {
withGUI = false;
@@ -117,7 +89,7 @@ in
inputs.sops-nix.homeManagerModules.sops
];
}
inputs.NixOS-WSL-2411.nixosModules.wsl
inputs.NixOS-WSL-stable.nixosModules.wsl
];
};
}

View File

@@ -12,3 +12,6 @@ test:
fmt:
nix fmt
update:
nix flake update

View File

@@ -2,7 +2,7 @@
cmp-vimtex,
spaceport-nvim,
nomodoro,
parrot-nvim,
# parrot-nvim,
inputs,
}:
let
@@ -12,20 +12,23 @@ let
cmpVimtexPlugin = prev.vimUtils.buildVimPlugin {
src = cmp-vimtex;
name = "cmp-vimtex";
doCheck = false;
};
spaceportNvimPlugin = prev.vimUtils.buildVimPlugin {
src = spaceport-nvim;
name = "spaceport-nvim";
doCheck = false;
};
nomodoroNvimPlugin = prev.vimUtils.buildVimPlugin {
src = nomodoro;
name = "nomodoro";
doCheck = false;
};
parrotNvimPlugin = prev.vimUtils.buildVimPlugin {
src = parrot-nvim;
name = "parrot-nvim";
};
# parrotNvimPlugin = prev.vimUtils.buildVimPlugin {
# src = parrot-nvim;
# name = "parrot-nvim";
# };
nvimWebDeviconPlugin = prev.vimUtils.buildVimPlugin {
src = inputs.nvim-web-devicons;
@@ -42,7 +45,7 @@ let
cmp-vimtex = cmpVimtexPlugin;
spaceport-nvim = spaceportNvimPlugin;
nomodoro = nomodoroNvimPlugin;
parrot-nvim = parrotNvimPlugin;
# parrot-nvim = parrotNvimPlugin;
nvim-web-devicons = nvimWebDeviconPlugin;
};