Compare commits
45 commits
Author | SHA1 | Date | |
---|---|---|---|
678df5f52f | |||
3ec21cacf6 | |||
186d04dbcf | |||
5045ba142a | |||
ad9d929e95 | |||
e723c2f526 | |||
3343df51cc | |||
4a2ddb2f65 | |||
2610f38b75 | |||
56eea3887a | |||
d583bce0fb | |||
06ab75d92a | |||
46fdb8d28b | |||
350de4586a | |||
84456b03bc | |||
3420f9c014 | |||
9351fcfc6b | |||
9d15e9ee37 | |||
c439126178 | |||
d376131cf0 | |||
311072d517 | |||
b7bec87784 | |||
911fde7430 | |||
538a64868c | |||
0d7b387a95 | |||
22befa5a0d | |||
3da156a146 | |||
38063d062d | |||
16b425894e | |||
b4bb6666ac | |||
cc857fdab3 | |||
d7557053a4 | |||
3bc33b7599 | |||
2fb7fd9f6c | |||
ec10b73ded | |||
f4e7a44e64 | |||
adbd18e34d | |||
72cc84f1dc | |||
dbf6ef98d3 | |||
2b7f9fc73f | |||
95c7651fe9 | |||
90ab187a15 | |||
eb5cb48c9f | |||
094a819f4d | |||
2e59119a50 |
20 changed files with 905 additions and 145 deletions
|
@ -54,17 +54,21 @@
|
|||
];
|
||||
}
|
||||
)
|
||||
/*
|
||||
({
|
||||
];
|
||||
fructose.modules = [
|
||||
({
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
gts = final.callPackage ./gts.nix {};
|
||||
})
|
||||
];
|
||||
})
|
||||
*/
|
||||
# not needed right now. One: gts is now on fructose Two: The latest version of gts is now on nixpkgs
|
||||
];
|
||||
|
||||
personal.modules = [
|
||||
{
|
||||
nixpkgs.overlays = [
|
||||
|
|
|
@ -8,11 +8,11 @@
|
|||
owner = "superseriousbusiness";
|
||||
repo = "gotosocial";
|
||||
|
||||
version = "0.17.3";
|
||||
version = "0.17.4";
|
||||
|
||||
web-assets = fetchurl {
|
||||
url = "https://github.com/${owner}/${repo}/releases/download/v${version}/${repo}_${version}_web-assets.tar.gz";
|
||||
hash = "sha256-85CmcWjcX8a+hZxkyRTfXErmkIx64R2scaaS2Fpf668=";
|
||||
hash = "sha256-esip1xGB0NroYRlKLNEs/o3J2G2nQyOIZTdDpVuY5Ag=";
|
||||
};
|
||||
in
|
||||
buildGoModule rec {
|
||||
|
@ -22,7 +22,7 @@ in
|
|||
src = fetchFromGitHub {
|
||||
inherit owner repo;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-ql0tDaMc/1NgsLUpPHZB6GoXJj9DwUpadTX3AYufR/o=";
|
||||
hash = "sha256-OikJkTc2UK74eGy8AjEAk8cyRL57QReM0J6tXr9EAjw=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
|
|
@ -42,6 +42,11 @@
|
|||
(
|
||||
{pkgs, ...}: {
|
||||
users.users.emv.extraGroups = ["video"];
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"fluffychat-linux-1.23.0" # it uses an insecure implementation of olm. but the devs are allegedly trying to move to vodozemac (which is an implementation that is not (at least publically announced as) insecure) . Using it instead of element because 1) i don't think the vulnerability is very relevant to our current threat model (as far as we're aware, it requires network or even hardware access, at which point you can already beat me with a baseball bat) and 2) out of the desktop clients, this seems to be one of the only ones with proper multi-account support??
|
||||
"olm-3.2.16" # tbh i still find it funny that a cryptographic library with a vuln known for several years before this is still used.
|
||||
# "Note that these are not cryptographically secure implementations. They have no resistence to side-channel attacks and should not be used in contexts that need cryptographically secure implementations. These algorithms are not optimized for speed or space. They are primarily designed to be easy to read, although some basic optimization techniques have been employed."
|
||||
];
|
||||
}
|
||||
)
|
||||
];
|
||||
|
@ -54,8 +59,11 @@
|
|||
vlc
|
||||
signal-desktop
|
||||
discord
|
||||
element-desktop
|
||||
fluffychat
|
||||
obsidian
|
||||
mumble
|
||||
wasistlos # this is just whatsapp
|
||||
# calibre # still borked apparently, what the hell # still!!!
|
||||
libreoffice
|
||||
];
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
containers.enable = true;
|
||||
podman = {
|
||||
enable = true;
|
||||
dockerCompat = false;
|
||||
dockerCompat = true;
|
||||
defaultNetwork.settings.dns_enabled = config.networking.hostName == "glucose"; # TODO: fix this stupid shit ssometime -e
|
||||
};
|
||||
oci-containers.backend = "podman";
|
||||
|
|
|
@ -29,16 +29,17 @@
|
|||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
mutableExtensionsDir = false;
|
||||
mutableExtensionsDir = false; # turning this one makes it not build.
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
rust-lang.rust-analyzer
|
||||
tuttieee.emacs-mcx
|
||||
tamasfe.even-better-toml
|
||||
vadimcn.vscode-lldb
|
||||
# vadimcn.vscode-lldb# currently doesn't work
|
||||
jnoortheen.nix-ide
|
||||
mkhl.direnv
|
||||
matthewpi.caddyfile-support
|
||||
vue.volar
|
||||
zxh404.vscode-proto3
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
epkgs.auctex # latex
|
||||
epkgs.preview-dvisvgm # in-line latex preview
|
||||
epkgs.latex-preview-pane
|
||||
epkgs.good-scroll
|
||||
epkgs.pdf-tools
|
||||
epkgs.obsidian
|
||||
epkgs.hydra # should be fun
|
||||
|
@ -62,6 +63,9 @@
|
|||
|
||||
;; obsidian hydra
|
||||
(bind-key (kbd "C-c M-o") 'obsidian-hydra/body 'obsidian-mode-map)
|
||||
|
||||
;; pixel scrolling
|
||||
(good-scroll-mode 1)
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
845
flake.lock
845
flake.lock
File diff suppressed because it is too large
Load diff
|
@ -3,7 +3,7 @@
|
|||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.05";
|
||||
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.11";
|
||||
|
||||
home-manager.url = "github:nix-community/home-manager";
|
||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
@ -21,7 +21,7 @@
|
|||
|
||||
vscode-server.url = "github:nix-community/nixos-vscode-server";
|
||||
|
||||
#niri.url = "github:sodiboo/niri-flake";
|
||||
conduwuit.url = "github:girlbossceo/conduwuit";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
(
|
||||
{pkgs, ...}: {
|
||||
fonts.packages = with pkgs; [
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans
|
||||
noto-fonts-emoji
|
||||
dina-font
|
||||
wqy_zenhei # this is so that hanzi doesn't look like pixel art
|
||||
nerd-fonts.noto
|
||||
|
|
|
@ -19,6 +19,8 @@
|
|||
lutris
|
||||
bottles
|
||||
heroic
|
||||
prismlauncher
|
||||
atlauncher
|
||||
r2modman
|
||||
];
|
||||
programs.mangohud.enable = true;
|
||||
|
|
|
@ -80,6 +80,7 @@ in
|
|||
boot.kernelModules = [
|
||||
"usbmon"
|
||||
"v4l2loopback"
|
||||
"snd-aloop"
|
||||
];
|
||||
boot.extraModulePackages = [];
|
||||
}
|
||||
|
|
|
@ -3,12 +3,12 @@
|
|||
(
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [
|
||||
geogebra6 # geogebra5 currently does not work?
|
||||
# geogebra6 # geogebra5 currently does not work?
|
||||
gimp
|
||||
chemtool
|
||||
avogadro2
|
||||
];
|
||||
programs.sagemath.enable = true;
|
||||
# programs.sagemath.enable = true;
|
||||
}
|
||||
)
|
||||
];
|
||||
|
|
|
@ -37,11 +37,13 @@
|
|||
64738 # murmur tcp
|
||||
6700 # grafana web
|
||||
6750 # prometheus
|
||||
7893 # matrix/conduwuit
|
||||
];
|
||||
allowedUDPPorts = [
|
||||
64738 # murmur udp
|
||||
6700 # grafana web
|
||||
6750 # prometheus data ap
|
||||
7893 # matrix/conduwuit
|
||||
];
|
||||
};
|
||||
}
|
||||
|
@ -55,6 +57,7 @@
|
|||
80 # http
|
||||
222 # forgejo ssh
|
||||
443 # https
|
||||
8448 # matrix/conduwuit port, i think ?
|
||||
64738 # murmur tcp
|
||||
];
|
||||
interfaces.eth0.allowedUDPPorts = [
|
||||
|
|
15
nix.mod.nix
15
nix.mod.nix
|
@ -127,6 +127,12 @@ in {
|
|||
nix.settings.trusted-users = ["remote-builder"];
|
||||
}
|
||||
)
|
||||
{
|
||||
nix.settings = {
|
||||
substituters = ["https://cache.nixos.org?priority=3"];
|
||||
trusted-public-keys = ["cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="];
|
||||
};
|
||||
}
|
||||
(
|
||||
{
|
||||
config,
|
||||
|
@ -140,11 +146,18 @@ in {
|
|||
)
|
||||
{
|
||||
nix.settings = {
|
||||
substituters = ["https://cache.collective-conciousness.monster"];
|
||||
substituters = ["https://cache.collective-conciousness.monster?priority=1"];
|
||||
trusted-public-keys = ["adyya-flake:PAbC0hnAiNj/kHcm9wIykmKIf25FDeXB6JusqlX2ghs="];
|
||||
};
|
||||
}
|
||||
)
|
||||
{
|
||||
nix.settings = {
|
||||
# binary caches for conduwuit
|
||||
substituters = ["https://attic.kennel.juneis.dog/conduit?priority=5" "https://attic.kennel.juneis.dog/conduwuit?priority=7"];
|
||||
trusted-public-keys = ["conduit:eEKoUwlQGDdYmAI/Q/0slVlegqh/QmAvQd7HBSm21Wk=" "conduwuit:BbycGUgTISsltcmH0qNjFR9dbrQNYgdIAcmViSGoVTE="];
|
||||
};
|
||||
}
|
||||
];
|
||||
personal.modules = [
|
||||
{
|
||||
|
|
|
@ -7,5 +7,14 @@
|
|||
services.udev.packages = [pkgs.android-udev-rules];
|
||||
}
|
||||
)
|
||||
({
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
programs.droidcam.enable = true;
|
||||
environment.systemPackages = [pkgs.droidcam];
|
||||
})
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,58 +1,65 @@
|
|||
{
|
||||
layer4 {
|
||||
:222 {
|
||||
@a ssh
|
||||
route @a {
|
||||
proxy 10.24.1.9:222
|
||||
}
|
||||
}
|
||||
:64738 {
|
||||
route {
|
||||
proxy 10.24.1.4:64738
|
||||
}
|
||||
}
|
||||
}
|
||||
layer4 {
|
||||
:222 {
|
||||
@a ssh
|
||||
route @a {
|
||||
proxy 10.24.1.9:222
|
||||
}
|
||||
}
|
||||
:64738 {
|
||||
route {
|
||||
proxy 10.24.1.4:64738
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
https://collective-conciousness.monster {
|
||||
encode zstd gzip
|
||||
header {
|
||||
Strict-Transport-Security "max-age=31536001; includeSubdomains; preload"
|
||||
}
|
||||
root * /var/www/public
|
||||
file_server {
|
||||
precompressed zstd br gzip
|
||||
}
|
||||
https://collective-conciousness.monster, http://collective-conciousness.monster {
|
||||
encode zstd gzip
|
||||
header {
|
||||
Strict-Transport-Security "max-age=31536001; includeSubdomains; preload"
|
||||
}
|
||||
|
||||
reverse_proxy /_matrix* 10.24.1.4:7893 # allegedly this might not be needed, but it doesn't seem to hurt so
|
||||
respond /.well-known/matrix/server "{\"m.server\": \"matrix.collective-conciousness.monster:443\"}"
|
||||
|
||||
root * /var/www/public
|
||||
file_server {
|
||||
precompressed zstd br gzip
|
||||
}
|
||||
}
|
||||
|
||||
https://git.collective-conciousness.monster {
|
||||
reverse_proxy 10.24.1.9:3000
|
||||
reverse_proxy 10.24.1.9:3000
|
||||
}
|
||||
|
||||
https://obs.collective-conciousness.monster {
|
||||
reverse_proxy 10.24.1.4:5894
|
||||
https://obs.collective-conciousness.monster {
|
||||
reverse_proxy 10.24.1.4:5894
|
||||
}
|
||||
|
||||
https://gts.collective-conciousness.monster {
|
||||
# Optional, but recommended, compress the traffic using proper protocols
|
||||
encode zstd gzip
|
||||
# Optional, but recommended, compress the traffic using proper protocols
|
||||
encode zstd gzip
|
||||
|
||||
# The actual proxy configuration to port 8080 (unless you've chosen another port number)
|
||||
reverse_proxy 10.24.1.9:8080 {
|
||||
# Flush immediately, to prevent buffered response to the client
|
||||
flush_interval -1
|
||||
}
|
||||
# The actual proxy configuration to port 8080 (unless you've chosen another port number)
|
||||
reverse_proxy 10.24.1.9:8080 {
|
||||
# Flush immediately, to prevent buffered response to the client
|
||||
flush_interval -1
|
||||
}
|
||||
}
|
||||
|
||||
https://cache.collective-conciousness.monster {
|
||||
encode zstd gzip
|
||||
|
||||
reverse_proxy 10.24.1.4:5020
|
||||
https://cache.collective-conciousness.monster {
|
||||
encode zstd gzip
|
||||
|
||||
reverse_proxy 10.24.1.4:5020
|
||||
}
|
||||
|
||||
https://grf.collective-conciousness.monster {
|
||||
encode zstd gzip
|
||||
encode zstd gzip
|
||||
|
||||
reverse_proxy 10.24.1.4:6700
|
||||
reverse_proxy 10.24.1.4:6700
|
||||
}
|
||||
|
||||
}
|
||||
http://matrix.collective-conciousness.monster, https://matrix.collective-conciousness.monster, matrix.collective-conciousness.monster, matrix.collective-conciousness.monster:8448, collective-conciousness.monster:8448 {
|
||||
reverse_proxy 10.24.1.4:7893
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
enabledCollectors = ["systemd"];
|
||||
port = 6703;
|
||||
};
|
||||
varnish.enable = true;
|
||||
varnish.enable = false; # this currently throws an error. boo-hoo
|
||||
};
|
||||
}
|
||||
];
|
||||
|
|
27
services/social/conduwuit.mod.nix
Normal file
27
services/social/conduwuit.mod.nix
Normal file
|
@ -0,0 +1,27 @@
|
|||
{conduwuit, ...}: {
|
||||
glucose.modules = [
|
||||
({
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
services.conduwuit = {
|
||||
enable = true;
|
||||
package = conduwuit.packages.x86_64-linux.default;
|
||||
settings.global = {
|
||||
server_name = "collective-conciousness.monster";
|
||||
max_request_size = 1024 * 1024 * 1024;
|
||||
address = ["0.0.0.0"];
|
||||
port = [7893];
|
||||
/*
|
||||
well-known = {
|
||||
client = "https://matrix.collective-conciousness.monster";
|
||||
server = "collective-conciousness.monster:8448";
|
||||
};
|
||||
*/
|
||||
# database_path = lib.mkForce "/var/services/conduwuit/";
|
||||
};
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
|
@ -110,7 +110,7 @@
|
|||
|
||||
### TODO : Resize mode and automatic floating
|
||||
assigns = {
|
||||
"1:说" = [{title = "^Signal$|Discord$";}];
|
||||
"1:说" = [{title = "^Signal$|Discord$|FluffyChat$";}];
|
||||
"2:main" = [{title = "VSCodium$";}];
|
||||
"3:browsing" = [{title = "LibreWolf$";}];
|
||||
"4:misc" = [];
|
||||
|
@ -123,11 +123,12 @@
|
|||
};
|
||||
|
||||
/*
|
||||
# commented out as they're automagically handled by stylix
|
||||
colors = {
|
||||
# should probably use a let ... in ... here
|
||||
background = "#212121";
|
||||
focused = {
|
||||
# border = "#2b83a6"; # test to see if stylix does magic
|
||||
border = "#2b83a6";
|
||||
background = "#2b83a6";
|
||||
text = "#ffffff";
|
||||
indicator = "#dddddd";
|
||||
|
|
|
@ -12,16 +12,20 @@
|
|||
dvisvgm
|
||||
dvipng # in-place output
|
||||
wrapfig
|
||||
amsmath
|
||||
amsmath # METH - I MEAN MATH !!!
|
||||
ulem
|
||||
hyperref
|
||||
capt-of
|
||||
etoolbox # various for the default config from emacs
|
||||
latex-uni8
|
||||
mlmodern # annoying font stuff
|
||||
asymptote
|
||||
asymptote # image things
|
||||
systeme
|
||||
xstring
|
||||
tikzfill # dependency of tcolorbox
|
||||
pdfcol #
|
||||
pdfcolfoot # dependencies of tcolorbox
|
||||
tcolorbox # fancy color environments !!!
|
||||
;
|
||||
#(setq org-latex-compiler "pdflatex")
|
||||
#(setq org-preview-latex-default-process "dvisvgm")
|
||||
|
|
Loading…
Reference in a new issue