summaryrefslogtreecommitdiff
path: root/home/terminal
diff options
context:
space:
mode:
Diffstat (limited to 'home/terminal')
-rw-r--r--home/terminal/btop.nix6
-rw-r--r--home/terminal/fish.nix64
-rw-r--r--home/terminal/foot.nix25
-rw-r--r--home/terminal/starship.nix111
-rw-r--r--home/terminal/utils.nix26
5 files changed, 232 insertions, 0 deletions
diff --git a/home/terminal/btop.nix b/home/terminal/btop.nix
new file mode 100644
index 0000000..dcd59ed
--- /dev/null
+++ b/home/terminal/btop.nix
@@ -0,0 +1,6 @@
+{ ... }:
+{
+ programs.btop = {
+ enable = true;
+ };
+}
diff --git a/home/terminal/fish.nix b/home/terminal/fish.nix
new file mode 100644
index 0000000..f1ad64d
--- /dev/null
+++ b/home/terminal/fish.nix
@@ -0,0 +1,64 @@
+{ pkgs, ... }:
+{
+ programs.fish = {
+ enable = true;
+
+ interactiveShellInit = ''
+ set fish_greeting
+ fastfetch
+ '';
+
+ shellAliases = {
+ nos = "nh os switch";
+ nob = "nh os boot";
+ nfu = "nix flake update";
+ ll = "ls -lah";
+ la = "ls -A";
+ md = "mkdir -p";
+ rmf = "rm -rf";
+ gl = "git log --oneline --graph --decorate";
+ untar = "tar -xzvf";
+ tarc = "tar -czvf";
+ ff = "fastfetch";
+ cat = "bat";
+ ls = "eza";
+ find = "fd";
+ grep = "rg";
+ };
+
+ plugins = [
+ {
+ name = "transient-fish";
+ src = pkgs.fishPlugins.transient-fish.src;
+ }
+ {
+ name = "fishbang";
+ src = pkgs.fishPlugins.fishbang.src;
+ }
+ {
+ name = "puffer";
+ src = pkgs.fishPlugins.puffer.src;
+ }
+ {
+ name = "pisces";
+ src = pkgs.fishPlugins.pisces.src;
+ }
+ {
+ name = "fzf-fish";
+ src = pkgs.fishPlugins.fzf-fish.src;
+ }
+ {
+ name = "fish-you-should-use";
+ src = pkgs.fishPlugins.fish-you-should-use.src;
+ }
+ {
+ name = "colored-man-pages";
+ src = pkgs.fishPlugins.colored-man-pages.src;
+ }
+ {
+ name = "fifc";
+ src = pkgs.fishPlugins.fifc.src;
+ }
+ ];
+ };
+}
diff --git a/home/terminal/foot.nix b/home/terminal/foot.nix
new file mode 100644
index 0000000..5c3098b
--- /dev/null
+++ b/home/terminal/foot.nix
@@ -0,0 +1,25 @@
+{pkgs, ...}:
+let
+ footTheme = pkgs.fetchurl {
+ url = "https://codeberg.org/dnkl/foot/raw/branch/master/themes/gruvbox-dark";
+ sha256 = "sha256-ubvnLgDEPGvNrwQdZRNguftg2SF5qcO1iVK0Tb5ZveI=";
+ };
+in
+{
+ programs.foot = {
+ enable = true;
+ settings = {
+ main = {
+ font="JetBrainsMonoNFM-Regular:size=14";
+# font-bold = "${font}:style=Bold:${withSize}";
+# font-italic = "${fontItalic}:style=Italic:${withSize}";
+# font-bold-italic = "${fontItalic}:style=BoldItalic:${withSize}";
+ box-drawings-uses-font-glyphs = true;
+ include = "${footTheme}";
+};
+ scrollback = {
+ lines = 10000;
+ };
+ };
+ };
+ }
diff --git a/home/terminal/starship.nix b/home/terminal/starship.nix
new file mode 100644
index 0000000..82ab84e
--- /dev/null
+++ b/home/terminal/starship.nix
@@ -0,0 +1,111 @@
+{ ... }:
+{
+ programs.starship = {
+ enable = true;
+ settings = {
+ add_newline = true;
+ aws.disabled = true;
+ battery.disabled = true;
+ buf.disabled = true;
+ bun.disabled = true;
+ c.format = "[$symbol ]($style)";
+ cpp = {
+ disabled = false;
+ format = "[$symbol ]($style)";
+ };
+ cmake.disabled = true;
+ cobol.disabled = true;
+ # cmd_duration = {
+ # min_time = 3;
+ # show_notifications = true;
+ # min_time_to_notify = 30;
+ # };
+ conda.disabled = true;
+ container.disabled = true;
+ crystal.disabled = true;
+ daml.disabled = true;
+ dart.disabled = true;
+ deno.disabled = true;
+ directory = {
+ truncate_to_repo = false;
+ read_only = "";
+ };
+ docker_context = {
+ format = "[$symbol ]($style)";
+ symbol = "";
+ };
+ dotnet.disabled = true;
+ elixir.disabled = true;
+ elm.disabled = true;
+ erlang.disabled = true;
+ fennel.disabled = true;
+ fortran.disabled = true;
+ gcloud.disabled = true;
+ git_commit.tag_symbol = "";
+ git_status = {
+ conflicted = "󰦎";
+ ahead = "";
+ behind = "";
+ diverged = "";
+ renamed = "";
+ deleted = "x";
+ };
+ gleam.disabled = true;
+ golang.disabled = true;
+ guix_shell.disabled = true;
+ gradle.disabled = true;
+ haskell.disabled = true;
+ haxe.disabled = true;
+ helm.disabled = true;
+ hostname.format = "[$hostname ]($style) ";
+ java.disabled = true;
+ jobs.symbol = "󰓎";
+ julia.disabled = true;
+ kotlin.disabled = true;
+ lua.disabled = true;
+ meson.disabled = true;
+ mojo.disabled = true;
+ nats.disabled = true;
+ netns.disabled = true;
+ nim.disabled = true;
+ nix_shell.format = "[$symbol$state ]($style)";
+ nodejs.disabled = true;
+ ocaml.disabled = true;
+ odin.disabled = true;
+ opa.disabled = true;
+ openstack.disabled = true;
+ package.disabled = true;
+ perl.disabled = true;
+ php.disabled = true;
+ pixi.disabled = true;
+ pulumi.disabled = true;
+ purescript.disabled = true;
+ python = {
+ symbol = "";
+ format = "[$symbol ]($style)";
+ };
+ quarto.disabled = true;
+ rlang.disabled = true;
+ raku.disabled = true;
+ red.disabled = true;
+ ruby.disabled = true;
+ rust.symbol = "";
+ scala.disabled = true;
+ singularity.disabled = true;
+ solidity.disabled = true;
+ spack.disabled = true;
+ # sudo = {
+ # format = "[sudo ]($style)";
+ # disabled = false;
+ # };
+ swift.disabled = true;
+ terraform.disabled = true;
+ typst.disabled = true;
+ vagrant.disabled = true;
+ vlang.disabled = true;
+ vcsh.disabled = true;
+ xmake.disabled = true;
+ zig.disabled = true;
+ };
+ };
+}
diff --git a/home/terminal/utils.nix b/home/terminal/utils.nix
new file mode 100644
index 0000000..c408e4a
--- /dev/null
+++ b/home/terminal/utils.nix
@@ -0,0 +1,26 @@
+{ pkgs, ... }:
+{
+ programs.zoxide = {
+ enable = true;
+ options = [
+ "--cmd cd"
+ ];
+ };
+ programs.bat = {
+ enable = true;
+ config = {
+ theme = "gruvbox-dark";
+ tabs = "2";
+ };
+ };
+ home.packages = with pkgs; [
+ fzf
+ fd
+ chafa
+ hexyl
+ eza
+ ripgrep
+ procs
+ fastfetch
+ ];
+}