diff --git a/.envrc b/.envrc index 3550a30..b1f915f 100644 --- a/.envrc +++ b/.envrc @@ -1 +1 @@ -use flake +use flake --log-format multiline-with-logs diff --git a/common.nix b/common.nix index 781f311..fd64708 100644 --- a/common.nix +++ b/common.nix @@ -60,6 +60,11 @@ with builtins; { btop nodejs + cmatrix + sl + lolcat + cool-retro-term + maven jetbrains.idea-ultimate jetbrains.rust-rover diff --git a/flake.lock b/flake.lock index 08d4a52..7fa1026 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "crane": { "locked": { - "lastModified": 1731098351, - "narHash": "sha256-HQkYvKvaLQqNa10KEFGgWHfMAbWBfFp+4cAgkut+NNE=", + "lastModified": 1732407143, + "narHash": "sha256-qJOGDT6PACoX+GbNH2PPx2ievlmtT1NVeTB80EkRLys=", "owner": "ipetkov", "repo": "crane", - "rev": "ef80ead953c1b28316cc3f8613904edc2eb90c28", + "rev": "f2b4b472983817021d9ffb60838b2b36b9376b20", "type": "github" }, "original": { @@ -23,11 +23,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1731133750, - "narHash": "sha256-gZ3m8e176ai+akwiayg7Mve73rcUCD0+l6OMMFhGEYI=", + "lastModified": 1732689334, + "narHash": "sha256-yKI1KiZ0+bvDvfPTQ1ZT3oP/nIu3jPYm4dnbRd6hYg4=", "owner": "nix-community", "repo": "fenix", - "rev": "87e4581cdfecbac602220fe76c67b37d2d1ee995", + "rev": "a8a983027ca02b363dfc82fbe3f7d9548a8d3dce", "type": "github" }, "original": { @@ -59,11 +59,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { @@ -99,11 +99,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1730790589, - "narHash": "sha256-xJ6bQ4VmdTB7A+dMbmOMaZ8a6erB6rkZkB+yzqD7gd4=", + "lastModified": 1732735497, + "narHash": "sha256-qaiRKT4T+kRAMwfFf1fIJ5pwCcaLp2dfNpT65C4uWuE=", "owner": "helix-editor", "repo": "helix", - "rev": "b53dafe326d51b7f64a1c52379e3d4150cd2991e", + "rev": "e1d1a5c5a12127ded88dfcf66dd74aad1650977c", "type": "github" }, "original": { @@ -119,11 +119,11 @@ ] }, "locked": { - "lastModified": 1730837930, - "narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=", + "lastModified": 1732793095, + "narHash": "sha256-6TrknJ8CpvSSF4gviQSeD+wyj3siRcMvdBKhOXkEMKU=", "owner": "nix-community", "repo": "home-manager", - "rev": "2f607e07f3ac7e53541120536708e824acccfaa8", + "rev": "2f7739d01080feb4549524e8f6927669b61c6ee3", "type": "github" }, "original": { @@ -135,11 +135,11 @@ "lix": { "flake": false, "locked": { - "lastModified": 1731164513, - "narHash": "sha256-WnT6MpgrMKgqV2Rs+MfU88+KO+/njELPOtGoNhoX2oA=", - "rev": "b967f1d5fe9d1bf58e6159e9b426c5b341489397", + "lastModified": 1731683711, + "narHash": "sha256-bq21I1EjXJa/s5Rra9J9ot2NkPCnI0F5uNPurwYLdpE=", + "rev": "c859d03013712b349d82ee6223948d6d03e63a8d", "type": "tarball", - "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/b967f1d5fe9d1bf58e6159e9b426c5b341489397.tar.gz?rev=b967f1d5fe9d1bf58e6159e9b426c5b341489397" + "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/c859d03013712b349d82ee6223948d6d03e63a8d.tar.gz?rev=c859d03013712b349d82ee6223948d6d03e63a8d" }, "original": { "type": "tarball", @@ -156,11 +156,11 @@ ] }, "locked": { - "lastModified": 1731185731, - "narHash": "sha256-RNaIu43b9PoXEhW4OqXUNZKY/jezQyCYWwdv1M0VjsA=", + "lastModified": 1732603698, + "narHash": "sha256-Jw2MhzgCCrKV2MJytehG0cCLIAosBX71p8qmQ6XQlR4=", "ref": "refs/heads/main", - "rev": "691193879d96bdfd1e6ab5ebcca2fadc7604cf34", - "revCount": 117, + "rev": "15b999f9c958c475f71fb8c543b9fc2f36ae8730", + "revCount": 123, "type": "git", "url": "https://git.lix.systems/lix-project/nixos-module" }, @@ -172,7 +172,7 @@ "mac-brcm-fw": { "flake": false, "locked": { - "lastModified": 1727366922, + "lastModified": 1709065070, "narHash": "sha256-+kW8ogc6DykjMVlrr+3vWKs9ZUdJ9EW72LbY7k/Qvh4=", "path": "/home/jade/nix-configs/mac-brcm-fw", "type": "path" @@ -200,11 +200,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1730785428, - "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=", + "lastModified": 1732521221, + "narHash": "sha256-2ThgXBUXAE1oFsVATK1ZX9IjPcS4nKFOAjhPNKuiMn0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7", + "rev": "4633a7c72337ea8fd23a4f2ba3972865e3ec685d", "type": "github" }, "original": { @@ -215,26 +215,26 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1720535198, - "narHash": "sha256-zwVvxrdIzralnSbcpghA92tWu2DV2lwv89xZc8MTrbg=", + "lastModified": 1732749044, + "narHash": "sha256-T38FQOg0BV5M8FN1712fovzNakSOENEYs+CSkg31C9Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "205fd4226592cc83fd4c0885a3e4c9c400efabb5", + "rev": "0c5b4ecbed5b155b705336aa96d878e55acd8685", "type": "github" }, "original": { "id": "nixpkgs", - "ref": "nixos-23.11", + "ref": "nixos-24.05", "type": "indirect" } }, "nixpkgs-unstable-small": { "locked": { - "lastModified": 1731136819, - "narHash": "sha256-qGmBFnq3/9AiiLZUOVxDsU5j6ysL3PXA8KRp7muJWMs=", + "lastModified": 1732780316, + "narHash": "sha256-NskLIz0ue4Uqbza+1+8UGHuPVr8DrUiLfZu5VS4VQxw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4a2c7def574d031cbf3d7110969f2ca5f38f8ed7", + "rev": "226216574ada4c3ecefcbbec41f39ce4655f78ef", "type": "github" }, "original": { @@ -260,11 +260,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1731056261, - "narHash": "sha256-TPeXChHVcaCBAoE349K7OZH4We5/2ys1GgG4IiwjwOs=", + "lastModified": 1732633904, + "narHash": "sha256-7VKcoLug9nbAN2txqVksWHHJplqK9Ou8dXjIZAIYSGc=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "dd9cd22514cb1001a0a2374b36a85eb75245f27b", + "rev": "8d5e91c94f80c257ce6dbdfba7bd63a5e8a03fa6", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 516f018..3ea114b 100644 --- a/flake.nix +++ b/flake.nix @@ -3,7 +3,7 @@ inputs = { nixpkgs.url = "nixpkgs/nixos-unstable"; - nixpkgs-stable.url = "nixpkgs/nixos-23.11"; + nixpkgs-stable.url = "nixpkgs/nixos-24.05"; nixpkgs-unstable-small.url = "nixpkgs/nixos-unstable-small"; helix-inline-diags = { url = "github:helix-editor/helix"; @@ -117,13 +117,13 @@ } ]; }; - catbook-j = nixpkgs.lib.nixosSystem { + denkbrett = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs pkgs-unstable-small pkgs-stable rs-programs lix-module helix-inline-diags; }; system = "x86_64-linux"; modules = [ - ./hosts/catbook-j/configuration.nix + ./hosts/denkbrett/configuration.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; diff --git a/hosts/catbook-j/configuration.nix b/hosts/denkbrett/configuration.nix similarity index 98% rename from hosts/catbook-j/configuration.nix rename to hosts/denkbrett/configuration.nix index 14e2f64..ae72336 100644 --- a/hosts/catbook-j/configuration.nix +++ b/hosts/denkbrett/configuration.nix @@ -76,7 +76,7 @@ # networking networking.networkmanager.enable = true; - networking.hostName = "catbook-j"; + networking.hostName = "denkbrett"; i18n.extraLocaleSettings = { LC_ADDRESS = "de_DE.UTF-8"; diff --git a/hosts/catbook-j/hardware-configuration.nix b/hosts/denkbrett/hardware-configuration.nix similarity index 100% rename from hosts/catbook-j/hardware-configuration.nix rename to hosts/denkbrett/hardware-configuration.nix diff --git a/hosts/catbook-j/modules/default.nix b/hosts/denkbrett/modules/default.nix similarity index 100% rename from hosts/catbook-j/modules/default.nix rename to hosts/denkbrett/modules/default.nix diff --git a/hosts/catbook-j/modules/graphics.nix b/hosts/denkbrett/modules/graphics.nix similarity index 100% rename from hosts/catbook-j/modules/graphics.nix rename to hosts/denkbrett/modules/graphics.nix diff --git a/hosts/catbook-j/modules/input.nix b/hosts/denkbrett/modules/input.nix similarity index 100% rename from hosts/catbook-j/modules/input.nix rename to hosts/denkbrett/modules/input.nix diff --git a/justfile b/justfile index 2585971..3243fda 100644 --- a/justfile +++ b/justfile @@ -6,6 +6,9 @@ test: build: sudo nixos-rebuild switch --flake . --impure --fast --log-format multiline +tbuild: + sudo nixos-rebuild switch --flake . --impure --fast --log-format multiline-with-logs --show-trace + update: nix flake update --commit-lock-file --log-format multiline diff --git a/modules/desktop-environment/default.nix b/modules/desktop-environment/default.nix index 73050ec..d6030ad 100644 --- a/modules/desktop-environment/default.nix +++ b/modules/desktop-environment/default.nix @@ -5,6 +5,7 @@ ./flatpak.nix ./home ./dm.nix + ./tlp.nix ]; services.upower = { enable = true; diff --git a/modules/desktop-environment/home/default.nix b/modules/desktop-environment/home/default.nix index e348ec6..558291e 100644 --- a/modules/desktop-environment/home/default.nix +++ b/modules/desktop-environment/home/default.nix @@ -4,6 +4,7 @@ ./notifications.nix ./terminal.nix ./compositing.nix + ./typst.nix ./panels ./xmonad ./sway diff --git a/modules/desktop-environment/home/sway/default.nix b/modules/desktop-environment/home/sway/default.nix index e93e9b7..a1e12b3 100644 --- a/modules/desktop-environment/home/sway/default.nix +++ b/modules/desktop-environment/home/sway/default.nix @@ -3,10 +3,32 @@ lib, config, ... -}: { +}: let + # stolen: https://github.com/MultisampledNight/core/blob/678f176cb24f5dc4b5dc629cfd3e643487be01bb/system/packages/layaway/default.nix#L7-L25 + layaway = pkgs.rustPlatform.buildRustPackage rec { + pname = "layaway"; + version = "0.2.0"; + + src = pkgs.fetchFromGitHub { + owner = "MultisampledNight"; + repo = pname; + rev = "v${version}"; + hash = "sha256-SzAuVFEy56svasO3+1p6ysBRrIQd0UZX++/P4ZuwWm0="; + }; + + cargoHash = "sha256-liWP6AI72xG1O+MbCZ0cjJ2llHj/iv3hR/U3BLv5fKA="; + + meta = with lib; { + description = "Layout creation for Sway via a relative and human-readable DSL."; + homepage = "https://github.com/MultisampledNight/layaway"; + maintainers = [maintainers.multisn8]; + }; + }; +in { programs.wofi.enable = true; programs.swaylock.enable = true; services.network-manager-applet.enable = true; + home.packages = [layaway]; xdg.portal = { enable = true; diff --git a/modules/desktop-environment/home/typst.nix b/modules/desktop-environment/home/typst.nix new file mode 100644 index 0000000..f60ed7c --- /dev/null +++ b/modules/desktop-environment/home/typst.nix @@ -0,0 +1,33 @@ +{ + pkgs, + lib, + ... +}: let + packages = { + typst-configs = pkgs.fetchFromGitea { + domain = "forge.katzen.cafe"; + owner = "schrottkatze"; + repo = "typst-configs"; + rev = "3a09cd374f0508c8e0c5d95f5ad7358adc50bafa"; + }; + flow = pkgs.fetchFromGithub { + owner = "MultisampledNight"; + repo = "flow"; + rev = "f5c653c706d80145165ec684b217b803a0246e8c"; + }; + }; + mkTypstPath = name: ".local/share/typst/packages/local/${name}/0.1.0"; +in { + home.file = { + typst-configs = { + target = mkTypstPath "typst-configs"; + source = packages.typst-configs; + recursive = true; + }; + flow = { + target = mkTypstPath "flow"; + source = packages.flow; + recursive = true; + }; + }; +} diff --git a/modules/desktop-environment/tlp.nix b/modules/desktop-environment/tlp.nix new file mode 100644 index 0000000..88aa4d7 --- /dev/null +++ b/modules/desktop-environment/tlp.nix @@ -0,0 +1,9 @@ +{...}: { + services.tlp = { + enable = true; + settings = { + START_CHARGE_THRESH_BAT0 = "70"; + STOP_CHARGE_TRESH_BAT0 = "85"; + }; + }; +} diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index 63f0143..94249e1 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -65,7 +65,6 @@ in }; services.smartd = { enable = true; - notifications.x11.enable = true; notifications.test = true; }; diff --git a/modules/desktop/firefox.nix b/modules/desktop/firefox.nix index bb559f6..9cfc37a 100644 --- a/modules/desktop/firefox.nix +++ b/modules/desktop/firefox.nix @@ -204,7 +204,6 @@ "devtools.toolbox.host" = "right"; "devtools.theme" = "dark"; "webgl.disabled" = false; - "image.jxl.enabled" = true; "browser.urlbar.decodeURLsOnCopy" = true; "browser.urlbar.unitConversion.enabled" = true; "browser.urlbar.suggest.calculator" = true; diff --git a/modules/desktop/fonts.nix b/modules/desktop/fonts.nix index 97c7453..cbb67d1 100644 --- a/modules/desktop/fonts.nix +++ b/modules/desktop/fonts.nix @@ -1,6 +1,7 @@ {pkgs, ...}: { fonts.packages = with pkgs; [ (nerdfonts.override {fonts = ["FiraCode" "AnonymousPro"];}) + google-fonts montserrat noto-fonts atkinson-hyperlegible diff --git a/modules/shell/git.nix b/modules/shell/git.nix index 87c068f..743e653 100644 --- a/modules/shell/git.nix +++ b/modules/shell/git.nix @@ -22,7 +22,7 @@ s = "status"; }; signing = { - key = "${pkgs.writeText "red_nk3.pub" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOaE8TFsIazpn4OnHvHcRpOFr9FfvMaWOiEjmHsmnAoE cardno:000F_70CD7D05"}"; + key = "${pkgs.writeText "blue_nk3.pub" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILg7hhAKxIAbokHHcIj9HBgbkgoKGCG2R+gx7HZKL+iz cardno:000F_93C6A612"}"; signByDefault = true; }; extraConfig = { diff --git a/other/config.nu b/other/config.nu index d9d74e3..b03a517 100644 --- a/other/config.nu +++ b/other/config.nu @@ -232,7 +232,7 @@ $env.config = { } color_config: $dark_theme # if you want a more interesting theme, you can replace the empty record with `$dark_theme`, `$light_theme` or another custom record - footer_mode: "25" # always, never, number_of_rows, auto + footer_mode: 25 # always, never, number_of_rows, auto float_precision: 2 # the precision for displaying floats in tables buffer_editor: "" # command that will be used to edit the current line buffer with ctrl+o, if unset fallback to $env.EDITOR and $env.VISUAL use_ansi_coloring: true @@ -882,6 +882,17 @@ def nev [ unit = day ] { | format duration $unit } +# TODO: intermediate stations +def bx [from: string to: string] { + let map = open ~/Docs/ril100map.json; + let start = $map | get ($from | str upcase) | first; + let dest = $map | get ($to | str upcase) | first; + + let url = $"https://bahn.expert/routing/($start)/($dest)/0/"; + print $url; + ^bash -c $"nohup chromium '($url)' &"; +} + alias gnix = cd ~/nix-configs; alias grepo = cd ~/Documents/repos; alias wh = wormhole-rs; @@ -907,3 +918,5 @@ alias bash = echo $"(ansi red)no, fuck that shit!"; alias sh = echo $"(ansi red)no, fuck that shit!"; alias zsh = echo $"(ansi red)no, fuck that shit!"; alias fish = echo $"(ansi red)no, fuck that shit!"; + +alias px = pulsemixer; diff --git a/programs/jrnl/src/commands/list_entries.rs b/programs/jrnl/src/commands/list_entries.rs index 61ca763..2519394 100644 --- a/programs/jrnl/src/commands/list_entries.rs +++ b/programs/jrnl/src/commands/list_entries.rs @@ -17,12 +17,10 @@ pub fn list_entries(path: PathBuf) -> io::Result<()> { let l = format!(" {} ", crate::utils::format_datetime(entry.timestamp)); let fuck_you_debugging = cols as usize - (n.len() + r.chars().count() + l.len()); - dbg!(fuck_you_debugging); let padding = " ".repeat(fuck_you_debugging); println!("{}{r}{padding}{}", n.cyan(), l.white()) } - println!("d"); Ok(()) } else { eprintln!("Parsing error...");