Compare commits
18 Commits
addBenModu
...
cef3b04ebd
| Author | SHA1 | Date | |
|---|---|---|---|
| cef3b04ebd | |||
| b9f87ac490 | |||
| 3b55c26a2c | |||
| dcd38e777a | |||
| 2116f650f7 | |||
| 00139ef2fe | |||
| 2af8204750 | |||
| cd64244bd8 | |||
| 4cc68dedea | |||
| 77fe614b7b | |||
| 6bbe7f186a | |||
| 77fc296e9e | |||
| 807944f182 | |||
| 97c2779d1b | |||
| 9d900057f6 | |||
| 86b545761f | |||
| a8a66916f4 | |||
| 32d68061a5 |
@@ -3331,6 +3331,29 @@ emr (emacs refactor) provides support for refactoring in many programming langua
|
||||
(setq lsp-ui-doc-position 'bottom)))))
|
||||
#+END_SRC
|
||||
* Utility
|
||||
** eat
|
||||
#+begin_src emacs-lisp
|
||||
(use-package eat
|
||||
:preface
|
||||
(progn
|
||||
(defun imalison:avy-eat (arg)
|
||||
(interactive "P")
|
||||
(eat-emacs-mode)
|
||||
(imalison:avy arg)))
|
||||
:bind
|
||||
(:map eat-mode-map
|
||||
("C-c C-k" . eat-semi-char-mode)
|
||||
:map eat-semi-char-mode-map
|
||||
("C-c C-j" . eat-emacs-mode)
|
||||
("C-j" . imalison:avy-term))
|
||||
:config
|
||||
(progn
|
||||
(setq eat--install-path
|
||||
(file-name-directory
|
||||
(file-truename (imalison:join-paths eat--install-path "eat.el"))))
|
||||
(eat-compile-terminfo)
|
||||
(setq eat-term-shell-integration-directory (imalison:join-paths eat--install-path "integration"))))
|
||||
#+end_src
|
||||
** term
|
||||
The main thing I do here is restore a bunch of keybindings that are eliminated
|
||||
in term-mode. This makes term-mode 1000% more useful
|
||||
@@ -3412,6 +3435,12 @@ in term-mode. This makes term-mode 1000% more useful
|
||||
term-projectile-switch)
|
||||
:config
|
||||
(progn
|
||||
(use-package term-manager-eat
|
||||
:demand t
|
||||
:straight
|
||||
(term-manager-eat :type git :files ("term-manager-eat.el")
|
||||
:host github :repo "colonelpanic8/term-manager"))
|
||||
(setq term-projectile-term-manager (term-projectile :build-term 'term-manager-eat-build-term))
|
||||
(emit-prefix-selector imalison:term
|
||||
term-projectile-forward
|
||||
term-projectile-create-new)
|
||||
@@ -4100,7 +4129,12 @@ This also adds syntax highlighting for gradle
|
||||
#+END_SRC
|
||||
** evil
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(use-package evil :commands (evil-mode))
|
||||
(use-package evil
|
||||
:commands (evil-mode)
|
||||
:config
|
||||
(use-package evil-collection
|
||||
:config
|
||||
(with-eval-after-load 'eat (evil-collection-eat-setup))))
|
||||
#+END_SRC
|
||||
** hackernews
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
|
||||
@@ -163,3 +163,8 @@ This makes evil-mode play nice with org-fc
|
||||
(use-package org-drill)
|
||||
|
||||
#+end_src
|
||||
|
||||
* Disable wild notifactions
|
||||
#+begin_src emacs-lisp
|
||||
(setq org-wild-notifier-day-wide-alert-times nil)
|
||||
#+end_src
|
||||
|
||||
5
dotfiles/emacs.d/snippets/python-mode/ign
Normal file
5
dotfiles/emacs.d/snippets/python-mode/ign
Normal file
@@ -0,0 +1,5 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: ign
|
||||
# key: ign
|
||||
# --
|
||||
# type: ignore
|
||||
5
dotfiles/emacs.d/snippets/python-mode/noqa
Normal file
5
dotfiles/emacs.d/snippets/python-mode/noqa
Normal file
@@ -0,0 +1,5 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: 401
|
||||
# key: 401
|
||||
# --
|
||||
# noqa: F401
|
||||
@@ -1,12 +1,17 @@
|
||||
{ pkgs, inputs, config, makeEnable, ... }:
|
||||
makeEnable config "modules.ben" true {
|
||||
home-manager.backupFileExtension = "backup"; # Add this line
|
||||
home-manager.users.ben = {
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
shellAliases = {
|
||||
ll = "ls -alF";
|
||||
la = "ls -A";
|
||||
l = "ls -CF";
|
||||
la = "ls -A";
|
||||
ll = "ls -lh";
|
||||
lla = "ls -alh";
|
||||
ls = "ls --color=auto";
|
||||
gts = "git status";
|
||||
gtl = "git log";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -29,6 +29,21 @@ with lib;
|
||||
done
|
||||
fpath+="${pkgs.python-with-my-packages}/lib/python3.11/site-packages/argcomplete/bash_completion.d"
|
||||
'';
|
||||
interactiveShellInit = ''
|
||||
eval "$(register-python-argcomplete prb)"
|
||||
eval "$(register-python-argcomplete prod-prb)"
|
||||
eval "$(register-python-argcomplete railbird)"
|
||||
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/zsh"
|
||||
'';
|
||||
};
|
||||
|
||||
programs.bash = {
|
||||
interactiveShellInit = ''
|
||||
eval "$(register-python-argcomplete prb)"
|
||||
eval "$(register-python-argcomplete prod-prb)"
|
||||
eval "$(register-python-argcomplete railbird)"
|
||||
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/bash"
|
||||
'';
|
||||
};
|
||||
|
||||
programs.starship = {
|
||||
|
||||
170
nixos/flake.lock
generated
170
nixos/flake.lock
generated
@@ -21,6 +21,30 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"agenix_2": {
|
||||
"inputs": {
|
||||
"darwin": "darwin_2",
|
||||
"home-manager": "home-manager_3",
|
||||
"nixpkgs": [
|
||||
"railbird-secrets",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707830867,
|
||||
"narHash": "sha256-PAdwm5QqdlwIqGrfzzvzZubM+FXtilekQ/FA0cI49/o=",
|
||||
"owner": "ryantm",
|
||||
"repo": "agenix",
|
||||
"rev": "8cb01a0e717311680e0cbca06a76cbceba6f3ed6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "ryantm",
|
||||
"repo": "agenix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"darwin": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -43,6 +67,29 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"darwin_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"railbird-secrets",
|
||||
"agenix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1700795494,
|
||||
"narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
|
||||
"owner": "lnl7",
|
||||
"repo": "nix-darwin",
|
||||
"rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "lnl7",
|
||||
"ref": "master",
|
||||
"repo": "nix-darwin",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@@ -245,6 +292,24 @@
|
||||
"inputs": {
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709126324,
|
||||
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_6": {
|
||||
"inputs": {
|
||||
"systems": "systems_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1685518550,
|
||||
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
|
||||
@@ -259,9 +324,9 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_6": {
|
||||
"flake-utils_7": {
|
||||
"inputs": {
|
||||
"systems": "systems_6"
|
||||
"systems": "systems_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681202837,
|
||||
@@ -536,7 +601,7 @@
|
||||
"haskell-language-server_2": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"flake-utils": "flake-utils_6",
|
||||
"fourmolu-011": "fourmolu-011_2",
|
||||
"fourmolu-012": "fourmolu-012_2",
|
||||
"gitignore": "gitignore_2",
|
||||
@@ -548,7 +613,7 @@
|
||||
"lsp": "lsp_2",
|
||||
"lsp-test": "lsp-test_2",
|
||||
"lsp-types": "lsp-types_2",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"ormolu-052": "ormolu-052_2",
|
||||
"ormolu-07": "ormolu-07_2",
|
||||
"stylish-haskell-0145": "stylish-haskell-0145_2"
|
||||
@@ -713,6 +778,28 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_3": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"railbird-secrets",
|
||||
"agenix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1703113217,
|
||||
"narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"imalison-taffybar": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
@@ -1051,6 +1138,22 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1709703039,
|
||||
"narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1686874404,
|
||||
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
|
||||
@@ -1066,7 +1169,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1682134069,
|
||||
"narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
|
||||
@@ -1187,6 +1290,26 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"railbird-secrets": {
|
||||
"inputs": {
|
||||
"agenix": "agenix_2",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"nixpkgs": "nixpkgs_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1718057406,
|
||||
"narHash": "sha256-PUqnLMxAOlWVkNIpltxP8lNlz5OyxpYN6K9hl45WrAk=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "971e616e67e07c1ef5a8933fbb0a504178353be2",
|
||||
"revCount": 49,
|
||||
"type": "git",
|
||||
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"agenix": "agenix",
|
||||
@@ -1203,8 +1326,9 @@
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nixpkgs-regression": "nixpkgs-regression_2",
|
||||
"notifications-tray-icon": "notifications-tray-icon",
|
||||
"railbird-secrets": "railbird-secrets",
|
||||
"status-notifier-item": "status-notifier-item",
|
||||
"systems": "systems_4",
|
||||
"systems": "systems_6",
|
||||
"taffybar": "taffybar",
|
||||
"vscode-server": "vscode-server",
|
||||
"xmonad": "xmonad",
|
||||
@@ -1380,6 +1504,36 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_7": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_8": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"taffybar": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
@@ -1452,8 +1606,8 @@
|
||||
},
|
||||
"vscode-server": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_6",
|
||||
"nixpkgs": "nixpkgs_8"
|
||||
"flake-utils": "flake-utils_7",
|
||||
"nixpkgs": "nixpkgs_9"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1713958148,
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
{
|
||||
inputs = {
|
||||
railbird-secrets = {
|
||||
url = "git+ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git";
|
||||
};
|
||||
nixos-hardware = { url = "github:colonelpanic8/nixos-hardware"; };
|
||||
|
||||
nixpkgs = {
|
||||
@@ -152,7 +155,10 @@
|
||||
inherit inputs machineNames;
|
||||
makeEnable = (import ./make-enable.nix) nixpkgs.lib;
|
||||
keys = (import ./keys.nix);
|
||||
usersInfo = (import ./users.nix) { pkgs = { zsh = "zsh"; }; keys = keys; };
|
||||
usersInfo = (import ./users.nix) {
|
||||
pkgs = { zsh = "zsh"; };
|
||||
inherit keys inputs system;
|
||||
};
|
||||
realUsers = (builtins.attrNames
|
||||
(nixpkgs.lib.filterAttrs
|
||||
(_: value: (builtins.elem "isNormalUser" (builtins.attrNames value)) && value.isNormalUser) usersInfo.users.users)
|
||||
|
||||
@@ -21,4 +21,19 @@
|
||||
home-manager.users = forEachUser {
|
||||
home.stateVersion = "22.05";
|
||||
};
|
||||
|
||||
users.users.ben = {
|
||||
extraGroups = [
|
||||
"audio"
|
||||
"adbusers"
|
||||
"disk"
|
||||
"docker"
|
||||
"networkmanager"
|
||||
"openrazer"
|
||||
"plugdev"
|
||||
"syncthing"
|
||||
"systemd-journal"
|
||||
"video"
|
||||
] ++ ["wheel"];
|
||||
};
|
||||
}
|
||||
|
||||
34
nixos/machines/strixi-minaj-wsl.nix
Normal file
34
nixos/machines/strixi-minaj-wsl.nix
Normal file
@@ -0,0 +1,34 @@
|
||||
{ lib, pkgs, config, inputs, forEachUser, ... }:
|
||||
{
|
||||
imports = [
|
||||
../configuration.nix
|
||||
];
|
||||
|
||||
modules.wsl.enable = true;
|
||||
|
||||
networking.hostName = "strixi-minaj-wsl";
|
||||
|
||||
wsl.defaultUser = "imalison";
|
||||
system.stateVersion = "23.11"; # Did you read the comment?
|
||||
|
||||
home-manager.users = forEachUser {
|
||||
home.stateVersion = "23.11";
|
||||
};
|
||||
|
||||
programs.gnupg = {
|
||||
agent = {
|
||||
pinentryPackage = pkgs.pinentry-curses;
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"openssl-1.0.2u"
|
||||
"electron-12.2.3"
|
||||
"etcher"
|
||||
"electron-19.1.9"
|
||||
"openssl-1.1.1w"
|
||||
"nix-2.16.2"
|
||||
];
|
||||
}
|
||||
@@ -29,9 +29,11 @@
|
||||
keep-derivations = true;
|
||||
substituters = [
|
||||
"https://cache.nixos.org"
|
||||
"https://cuda-maintainers.cachix.org"
|
||||
];
|
||||
trusted-public-keys = [
|
||||
"cache.railbird.ai:KhnvcouxtIU2zxUcjJsm4bUK3o1S3p8xMf9qfZGF7/A="
|
||||
"cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E="
|
||||
];
|
||||
nix-path = nixPath;
|
||||
};
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
security.pam.sshAgentAuth.enable = true;
|
||||
services.avahi = {
|
||||
enable = true;
|
||||
nssmdns4 = true;
|
||||
@@ -19,13 +20,15 @@
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
settings = {
|
||||
AllowAgentForwarding = true;
|
||||
AllowTcpForwarding = true;
|
||||
PasswordAuthentication = false;
|
||||
X11Forwarding = true;
|
||||
};
|
||||
};
|
||||
|
||||
programs.ssh = {
|
||||
forwardX11 = true;
|
||||
forwardX11 = false;
|
||||
setXAuthLocation = true;
|
||||
knownHosts = {
|
||||
github = {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, keys, ... }:
|
||||
{ pkgs, keys, inputs, system, ... }:
|
||||
let
|
||||
extraGroups = [
|
||||
"audio"
|
||||
@@ -89,6 +89,11 @@ in
|
||||
name = "ben";
|
||||
openssh.authorizedKeys.keys = benKeys ++ kanivanKeys;
|
||||
};
|
||||
railbird = userDefaults // {
|
||||
inherit extraGroups;
|
||||
name = "railbird";
|
||||
openssh.authorizedKeys.keys = inputs.railbird-secrets.keys.railbirdAdminKeys;
|
||||
};
|
||||
};
|
||||
|
||||
nix.sshServe = {
|
||||
|
||||
@@ -7,13 +7,15 @@ makeEnable config "modules.wsl" false {
|
||||
modules.base.enable = false;
|
||||
modules.desktop.enable = false;
|
||||
modules.xmonad.enable = false;
|
||||
modules.plasma.enable = false;
|
||||
|
||||
# Update timezone automatically
|
||||
services.tzupdate.enable = true;
|
||||
|
||||
wsl.wslConf.automount.root = "/mnt";
|
||||
|
||||
wsl = {
|
||||
enable = true;
|
||||
automountPath = "/mnt";
|
||||
startMenuLaunchers = true;
|
||||
nativeSystemd = true;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user