Compare commits
1 Commits
nixos
...
1b43d053f0
| Author | SHA1 | Date | |
|---|---|---|---|
|
1b43d053f0
|
@@ -16,7 +16,6 @@
|
|||||||
domain = {
|
domain = {
|
||||||
natto = "weirdnatto.in";
|
natto = "weirdnatto.in";
|
||||||
amneesh = "amneesh.com";
|
amneesh = "amneesh.com";
|
||||||
chutiya = "chutiya.online";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
845
flake.lock
generated
845
flake.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -52,7 +52,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
filehost = {
|
filehost = {
|
||||||
url = "github:natto1784/yamaf";
|
url = "github:natto1784/simpler-filehost";
|
||||||
};
|
};
|
||||||
|
|
||||||
nix-gaming.url = "github:fufexan/nix-gaming";
|
nix-gaming.url = "github:fufexan/nix-gaming";
|
||||||
|
|||||||
@@ -34,9 +34,7 @@
|
|||||||
scroll-step 1
|
scroll-step 1
|
||||||
display-line-numbers-type 'relative
|
display-line-numbers-type 'relative
|
||||||
confirm-kill-processes nil
|
confirm-kill-processes nil
|
||||||
inhibit-startup-screen t
|
inhibit-startup-screen t)
|
||||||
isearch-lazy-count t
|
|
||||||
lazy-count-prefix-format "[%s/%s] ")
|
|
||||||
(setq-default tab-width 2
|
(setq-default tab-width 2
|
||||||
indent-tabs-mode nil)
|
indent-tabs-mode nil)
|
||||||
#+end_src
|
#+end_src
|
||||||
@@ -80,15 +78,6 @@
|
|||||||
(dark-theme t))
|
(dark-theme t))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Indent guides
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package highlight-indent-guides
|
|
||||||
:config
|
|
||||||
(setq highlight-indent-guides-method 'column)
|
|
||||||
:hook
|
|
||||||
(prog-mode . highlight-indent-guides-mode))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Minibuffer
|
** Minibuffer
|
||||||
Enable vertico
|
Enable vertico
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
@@ -203,8 +192,8 @@ To undo and redo easily like vi
|
|||||||
(use-package lsp-mode
|
(use-package lsp-mode
|
||||||
:defer t
|
:defer t
|
||||||
:commands lsp
|
:commands lsp
|
||||||
:init (setq lsp-enable-on-type-formatting nil)
|
:init
|
||||||
:hook (prog-mode . lsp-deferred))
|
(setq lsp-enable-on-type-formatting nil))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Configure lsp-ui
|
*** Configure lsp-ui
|
||||||
@@ -473,20 +462,24 @@ When you want write prose or something similar
|
|||||||
(latex . t)))
|
(latex . t)))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
* Mode specific hooks
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(add-hook 'c-mode-hook 'lsp)
|
||||||
|
(add-hook 'c++-mode-hook 'lsp)
|
||||||
|
(add-hook 'haskell-mode-hook #'lsp)
|
||||||
|
(add-hook 'haskell-literate-mode-hook #'lsp)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
* Random eye candy stuff
|
* Random eye candy stuff
|
||||||
|
|
||||||
* Mode line
|
* Mode line
|
||||||
** Doom modeline
|
** Doom modeline
|
||||||
Switched to doom modeline after using my own modeline for a while
|
switched to doom modeline after using my own modeline for a while
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package doom-modeline
|
(use-package doom-modeline
|
||||||
:init (doom-modeline-mode 1))
|
:init (doom-modeline-mode 1))
|
||||||
#+end_src
|
#+end_src
|
||||||
Also show columns
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(column-number-mode 1)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Nyan Mode
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package nyan-mode
|
(use-package nyan-mode
|
||||||
:ensure t
|
:ensure t
|
||||||
@@ -525,6 +518,24 @@ Stolen from [[https://www.reddit.com/r/emacs/comments/ft84xy/run_shell_command_i
|
|||||||
(vterm-send-return)))
|
(vterm-send-return)))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
Compilation shortcuts for standalone files
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(defun candrun ()
|
||||||
|
(let ((full buffer-file-name)
|
||||||
|
(file (file-name-sans-extension buffer-file-name)))
|
||||||
|
(pcase (file-name-extension full)
|
||||||
|
("c" (concat "gcc " full " -lm -pthread -o " file " && " file " && rm " file))
|
||||||
|
("java" (concat "java " full))
|
||||||
|
("py" (concat "python " full))
|
||||||
|
("cpp" (concat "g++ " full " -o " file " && " file " && rm " file))
|
||||||
|
("cc" (concat "g++ " full " -o " file " && " file " && rm " file))
|
||||||
|
("hs" (concat "runhaskell " full))
|
||||||
|
("sh" (concat "sh " full))
|
||||||
|
("js" (concat "node " full))
|
||||||
|
("ts" (concat "tsc " full " && node " file ".js && rm " file ".js" ))
|
||||||
|
("rs" (concat "rustc " full " -o " file " && " file " && rm " file)))))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
* LLMs
|
* LLMs
|
||||||
** gptel
|
** gptel
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
@@ -614,7 +625,8 @@ not using this anymore
|
|||||||
"<f4>" (lambda () (interactive) (vterm t))
|
"<f4>" (lambda () (interactive) (vterm t))
|
||||||
"C-S-t" 'vterm-toggle-cd
|
"C-S-t" 'vterm-toggle-cd
|
||||||
"C-t" 'vterm-toggle
|
"C-t" 'vterm-toggle
|
||||||
"<f1>" 'vterm-toggle)
|
"<f1>" 'vterm-toggle
|
||||||
|
"<f5>" (lambda () (interactive) (run-in-vterm (candrun))))
|
||||||
(general-define-key
|
(general-define-key
|
||||||
:keymaps 'vterm-mode-map
|
:keymaps 'vterm-mode-map
|
||||||
"<f3>" 'vterm-toggle-forward
|
"<f3>" 'vterm-toggle-forward
|
||||||
|
|||||||
@@ -24,21 +24,11 @@ in
|
|||||||
alwaysEnsure = true;
|
alwaysEnsure = true;
|
||||||
alwaysTangle = true;
|
alwaysTangle = true;
|
||||||
defaultInitFile = true;
|
defaultInitFile = true;
|
||||||
extraEmacsPackages = epkgs: with epkgs; [
|
extraEmacsPackages =
|
||||||
|
epkgs: with epkgs; [
|
||||||
use-package
|
use-package
|
||||||
(tree-sitter-langs.withPlugins (_: tree-sitter-langs.plugins))
|
(tree-sitter-langs.withPlugins (_: tree-sitter-langs.plugins))
|
||||||
];
|
];
|
||||||
|
|
||||||
override = final: prev: {
|
|
||||||
evil = prev.melpaPackages.evil.overrideAttrs(_: {
|
|
||||||
src = pkgs.fetchFromGitHub {
|
|
||||||
owner = "natto1784";
|
|
||||||
repo = "evil";
|
|
||||||
rev = "isearch-lazy-count";
|
|
||||||
sha256 = "sha256-YqXoqPqOWRvszzktb0MYHMe590mzTQxCMgBloy3MHkQ=";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
services.emacs = {
|
services.emacs = {
|
||||||
|
|||||||
@@ -1,39 +1,25 @@
|
|||||||
{
|
{
|
||||||
lib,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
inputs,
|
inputs,
|
||||||
conf,
|
conf,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
systemd.services = rec {
|
systemd.services.filehost = {
|
||||||
filehost = {
|
enable = true;
|
||||||
enable = true;
|
wantedBy = [ "multi-user.target" ];
|
||||||
wantedBy = [ "multi-user.target" ];
|
serviceConfig = {
|
||||||
serviceConfig = {
|
Type = "simple";
|
||||||
Type = "simple";
|
Environment = [
|
||||||
Environment = [
|
"TITLE=nattofiles"
|
||||||
"TITLE=nattofiles"
|
"USER_URL=https://f.${conf.network.addresses.domain.natto}"
|
||||||
"INTERNAL_HOST=0.0.0.0"
|
"ROCKET_LIMITS={file=\"512MB\",data-form=\"512MB\"}"
|
||||||
"INTERNAL_PORT=8000"
|
"ROCKET_LOG_LEVEL=debug"
|
||||||
"MAX_FILESIZE_MB=500"
|
"ROCKET_ADDRESS=0.0.0.0"
|
||||||
"EXTERNAL_HAS_TLS=1"
|
];
|
||||||
"EXTERNAL_HOST=f.${conf.network.addresses.domain.natto}"
|
Restart = "on-failure";
|
||||||
];
|
ExecStart = "${inputs.filehost.packages.${pkgs.system}.simpler-filehost}/bin/simpler-filehost";
|
||||||
Restart = "on-failure";
|
|
||||||
ExecStart = "${inputs.filehost.packages.${pkgs.system}.yamaf}/bin/yamaf";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
filehost-chutiya = lib.recursiveUpdate filehost {
|
|
||||||
serviceConfig.Environment = [
|
|
||||||
"TITLE=chutiyafiles"
|
|
||||||
"INTERNAL_HOST=0.0.0.0"
|
|
||||||
"INTERNAL_PORT=8001"
|
|
||||||
"MAX_FILESIZE_MB=500"
|
|
||||||
"EXTERNAL_HAS_TLS=1"
|
|
||||||
"EXTERNAL_HOST=f.${conf.network.addresses.domain.chutiya}"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
conf,
|
conf,
|
||||||
lib,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
@@ -35,18 +36,6 @@
|
|||||||
USER = FROM;
|
USER = FROM;
|
||||||
REGISTER_MAIL_CONFIRM = true;
|
REGISTER_MAIL_CONFIRM = true;
|
||||||
};
|
};
|
||||||
service = {
|
|
||||||
ENABLE_CAPTCHA = true;
|
|
||||||
EMAIL_DOMAIN_ALLOWLIST = lib.strings.concatStringsSep "," [
|
|
||||||
"gmail.com"
|
|
||||||
"outlook.com"
|
|
||||||
"proton.me"
|
|
||||||
"protonmail.com"
|
|
||||||
conf.network.addresses.domain.natto
|
|
||||||
conf.network.addresses.domain.amneesh
|
|
||||||
conf.network.addresses.domain.chutiya
|
|
||||||
];
|
|
||||||
};
|
|
||||||
oauth2_client.REGISTER_MAIL_CONFIRM = true;
|
oauth2_client.REGISTER_MAIL_CONFIRM = true;
|
||||||
actions.ENABLED = false;
|
actions.ENABLED = false;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
{ conf, ... }:
|
{ conf, ... }:
|
||||||
let
|
let
|
||||||
domain = conf.network.addresses.domain.natto;
|
domain = conf.network.addresses.domain.natto;
|
||||||
chutiya = conf.network.addresses.domain.chutiya;
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services.nginx = {
|
services.nginx = {
|
||||||
@@ -36,17 +35,6 @@ in
|
|||||||
in
|
in
|
||||||
with conf.network.addresses.wireguard.ips;
|
with conf.network.addresses.wireguard.ips;
|
||||||
{
|
{
|
||||||
|
|
||||||
"${chutiya}" = {
|
|
||||||
addSSL = true;
|
|
||||||
enableACME = true;
|
|
||||||
locations."/" = {
|
|
||||||
root = "/var/lib/chutiya";
|
|
||||||
index = "index.html";
|
|
||||||
};
|
|
||||||
serverAliases = [ "www.${chutiya}" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"moj.${domain}" = genericHttpRProxy { addr = "https://${suwako}:25565"; };
|
"moj.${domain}" = genericHttpRProxy { addr = "https://${suwako}:25565"; };
|
||||||
|
|
||||||
"puffer.${domain}" = genericHttpRProxy {
|
"puffer.${domain}" = genericHttpRProxy {
|
||||||
@@ -71,15 +59,7 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
# Personal filehost
|
# Personal filehost
|
||||||
"f.${chutiya}" = genericHttpRProxy {
|
"f.${domain}" = genericHttpRProxy { addr = "http://${suwako}:8000"; };
|
||||||
addr = "http://${suwako}:8001";
|
|
||||||
conf = "client_max_body_size 512M;";
|
|
||||||
};
|
|
||||||
|
|
||||||
"f.${domain}" = genericHttpRProxy {
|
|
||||||
addr = "http://${suwako}:8000";
|
|
||||||
conf = "client_max_body_size 512M;";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user