diff --git a/conf.d/atuin.toml b/conf.d/atuin.toml index edac123..80ae0f7 100644 --- a/conf.d/atuin.toml +++ b/conf.d/atuin.toml @@ -1,14 +1,232 @@ +## where to store your database, default is your system data directory +## linux/mac: ~/.local/share/atuin/history.db +## windows: %USERPROFILE%/.local/share/atuin/history.db +# db_path = "~/.history.db" -search_mode = "fuzzy" +## where to store your encryption key, default is your system data directory +## linux/mac: ~/.local/share/atuin/key +## windows: %USERPROFILE%/.local/share/atuin/key +# key_path = "~/.key" + +## where to store your auth session token, default is your system data directory +## linux/mac: ~/.local/share/atuin/session +## windows: %USERPROFILE%/.local/share/atuin/session +# session_path = "~/.session" + +## date format used, either "us" or "uk" +# dialect = "us" + +## default timezone to use when displaying time +## either "l", "local" to use the system's current local timezone, or an offset +## from UTC in the format of "<+|->H[H][:M[M][:S[S]]]" +## for example: "+9", "-05", "+03:30", "-01:23:45", etc. +# timezone = "local" + +## enable or disable automatic sync +# auto_sync = true + +## enable or disable automatic update checks +# update_check = true + +## address of the sync server +# sync_address = "https://api.atuin.sh" + +## how often to sync history. note that this is only triggered when a command +## is ran, so sync intervals may well be longer +## set it to 0 to sync after every command +# sync_frequency = "10m" + +## which search mode to use +## possible values: prefix, fulltext, fuzzy, skim +# search_mode = "fuzzy" + +## which filter mode to use +## possible values: global, host, session, directory +# filter_mode = "global" + +## With workspace filtering enabled, Atuin will filter for commands executed +## in any directory within a git repository tree (default: false) +# workspaces = false + +## which filter mode to use when atuin is invoked from a shell up-key binding +## the accepted values are identical to those of "filter_mode" +## leave unspecified to use same mode set in "filter_mode" +# filter_mode_shell_up_key_binding = "global" + +## which search mode to use when atuin is invoked from a shell up-key binding +## the accepted values are identical to those of "search_mode" +## leave unspecified to use same mode set in "search_mode" +# search_mode_shell_up_key_binding = "fuzzy" + +## which style to use +## possible values: auto, full, compact +# style = "auto" + +## the maximum number of lines the interface should take up +## set it to 0 to always go full screen +# inline_height = 0 + +## Invert the UI - put the search bar at the top , Default to `false` +# invert = false + +## enable or disable showing a preview of the selected command +## useful when the command is longer than the terminal width and is cut off +# show_preview = true + +## what to do when the escape key is pressed when searching +## possible values: return-original, return-query +# exit_mode = "return-original" + +## possible values: emacs, subl +# word_jump_mode = "emacs" + +## characters that count as a part of a word +# word_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" + +## number of context lines to show when scrolling by pages +# scroll_context_lines = 1 + +## use ctrl instead of alt as the shortcut modifier key for numerical UI shortcuts +## alt-0 .. alt-9 +# ctrl_n_shortcuts = false + +## default history list format - can also be specified with the --format arg +# history_format = "{time}\t{command}\t{duration}" + +## prevent commands matching any of these regexes from being written to history. +## Note that these regular expressions are unanchored, i.e. if they don't start +## with ^ or end with $, they'll match anywhere in the command. +## For details on the supported regular expression syntax, see +## https://docs.rs/regex/latest/regex/#syntax +# history_filter = [ +# "^secret-cmd", +# "^innocuous-cmd .*--secret=.+", +# ] + +## prevent commands run with cwd matching any of these regexes from being written +## to history. Note that these regular expressions are unanchored, i.e. if they don't +## start with ^ or end with $, they'll match anywhere in CWD. +## For details on the supported regular expression syntax, see +## https://docs.rs/regex/latest/regex/#syntax +# cwd_filter = [ +# "^/very/secret/area", +# ] + +## Configure the maximum height of the preview to show. +## Useful when you have long scripts in your history that you want to distinguish +## by more than the first few lines. +# max_preview_height = 4 + +## Configure whether or not to show the help row, which includes the current Atuin +## version (and whether an update is available), a keymap hint, and the total +## amount of commands in your history. +# show_help = true + +## Configure whether or not to show tabs for search and inspect +# show_tabs = true + +## Defaults to true. This matches history against a set of default regex, and will not save it if we get a match. Defaults include +## 1. AWS key id +## 2. Github pat (old and new) +## 3. Slack oauth tokens (bot, user) +## 4. Slack webhooks +## 5. Stripe live/test keys +# secrets_filter = true + +## Defaults to true. If enabled, upon hitting enter Atuin will immediately execute the command. Press tab to return to the shell and edit. +# This applies for new installs. Old installs will keep the old behaviour unless configured otherwise. enter_accept = false + +## Defaults to "emacs". This specifies the keymap on the startup of `atuin +## search`. If this is set to "auto", the startup keymap mode in the Atuin +## search is automatically selected based on the shell's keymap where the +## keybinding is defined. If this is set to "emacs", "vim-insert", or +## "vim-normal", the startup keymap mode in the Atuin search is forced to be +## the specified one. keymap_mode = "vim-insert" +## Cursor style in each keymap mode. If specified, the cursor style is changed +## in entering the cursor shape. Available values are "default" and +## "{blink,steady}-{block,underline,bar}". +# keymap_cursor = { emacs = "blink-block", vim_insert = "blink-block", vim_normal = "steady-block" } + +# network_connect_timeout = 5 +# network_timeout = 5 + +## Timeout (in seconds) for acquiring a local database connection (sqlite) +# local_timeout = 5 + +## Set this to true and Atuin will minimize motion in the UI - timers will not update live, etc. +## Alternatively, set env NO_MOTION=true +# prefers_reduced_motion = false + +[stats] +## Set commands where we should consider the subcommand for statistics. Eg, kubectl get vs just kubectl +# common_subcommands = [ +# "apt", +# "cargo", +# "composer", +# "dnf", +# "docker", +# "git", +# "go", +# "ip", +# "kubectl", +# "nix", +# "nmcli", +# "npm", +# "pecl", +# "pnpm", +# "podman", +# "port", +# "systemctl", +# "tmux", +# "yarn", +# ] + +## Set commands that should be totally stripped and ignored from stats +# common_prefix = ["sudo"] + +## Set commands that will be completely ignored from stats +# ignored_commands = [ +# "cd", +# "ls", +# "vi" +# ] + +[keys] +# Defaults to true. If disabled, using the up/down key won't exit the TUI when scrolled past the first/last entry. +# scroll_exits = false + [sync] +# Enable sync v2 by default +# This ensures that sync v2 is enabled for new installs only +# In a later release it will become the default across the board records = true -[daemon] -enabled = true -autostart = true +[preview] +## which preview strategy to use to calculate the preview height (respects max_preview_height). +## possible values: auto, static +## auto: length of the selected command. +## static: length of the longest command stored in the history. +# strategy = "auto" -[ai] -enabled = true \ No newline at end of file +[daemon] +## Enables using the daemon to sync. Requires the daemon to be running in the background. Start it with `atuin daemon` +# enabled = false + +## How often the daemon should sync in seconds +# sync_frequency = 300 + +## The path to the unix socket used by the daemon (on unix systems) +## linux/mac: ~/.local/share/atuin/atuin.sock +## windows: Not Supported +# socket_path = "~/.local/share/atuin/atuin.sock" + +## Use systemd socket activation rather than opening the given path (the path must still be correct for the client) +## linux: false +## mac/windows: Not Supported +# systemd_socket = false + +## The port that should be used for TCP on non unix systems +# tcp_port = 8889 diff --git a/conf.d/fish/conf.d/atuin.fish b/conf.d/fish/conf.d/atuin.fish deleted file mode 100644 index 80075c2..0000000 --- a/conf.d/fish/conf.d/atuin.fish +++ /dev/null @@ -1,3 +0,0 @@ -if status is-interactive - atuin init fish | source -end diff --git a/flake.lock b/flake.lock index df0ba6f..786d640 100644 --- a/flake.lock +++ b/flake.lock @@ -1,83 +1,5 @@ { "nodes": { - "atuin": { - "inputs": { - "fenix": "fenix", - "flake-compat": "flake-compat", - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs" - }, - "locked": { - "lastModified": 1773709057, - "narHash": "sha256-hLt6CDHEPV8BVpOADVn4bLNcBz89eC2jKtIexHG0yAY=", - "owner": "atuinsh", - "repo": "atuin", - "rev": "e737ba5b9a149eaec706418bc560e8ba7ea8c81b", - "type": "github" - }, - "original": { - "owner": "atuinsh", - "ref": "v18.13.3", - "repo": "atuin", - "type": "github" - } - }, - "fenix": { - "inputs": { - "nixpkgs": [ - "atuin", - "nixpkgs" - ], - "rust-analyzer-src": "rust-analyzer-src" - }, - "locked": { - "lastModified": 1758609765, - "narHash": "sha256-VIYu7R9Yc/CItjmzLSm21Lr9DgpEsKL5H+JUu8KDTn4=", - "owner": "nix-community", - "repo": "fenix", - "rev": "05545a7f3cd5cd5628b195520758e56e6734b90a", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "fenix", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1747046372, - "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "home-manager": { "inputs": { "nixpkgs": [ @@ -85,11 +7,11 @@ ] }, "locked": { - "lastModified": 1775077333, - "narHash": "sha256-OXcxobt7lBkh1B8AjwreU+24myhtKpqeLfAeIyNLFY8=", + "lastModified": 1770260404, + "narHash": "sha256-3iVX1+7YUIt23hBx1WZsUllhbmP2EnXrV8tCRbLxHc8=", "owner": "nix-community", "repo": "home-manager", - "rev": "49ca96b2714c5931e17401eff87f3edd42d2b0f2", + "rev": "0d782ee42c86b196acff08acfbf41bb7d13eed5b", "type": "github" }, "original": { @@ -117,27 +39,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1758446476, - "narHash": "sha256-5rdAi7CTvM/kSs6fHe1bREIva5W3TbImsto+dxG4mBo=", + "lastModified": 1770770419, + "narHash": "sha256-iKZMkr6Cm9JzWlRYW/VPoL0A9jVKtZYiU4zSrVeetIs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a1f79a1770d05af18111fbbe2a3ab2c42c0f6cd0", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1775002709, - "narHash": "sha256-d3Yx83vSrN+2z/loBh4mJpyRqr9aAJqlke4TkpFmRJA=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "bcd464ccd2a1a7cd09aa2f8d4ffba83b761b1d0e", + "rev": "6c5e707c6b5339359a9a9e215c5e66d6d802fd7a", "type": "github" }, "original": { @@ -147,83 +53,15 @@ "type": "github" } }, - "nixpkgs_3": { - "locked": { - "lastModified": 1760524057, - "narHash": "sha256-EVAqOteLBFmd7pKkb0+FIUyzTF61VKi7YmvP1tw4nEw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "544961dfcce86422ba200ed9a0b00dd4b1486ec5", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "opencode": { - "inputs": { - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1770777255, - "narHash": "sha256-1mKK8D8Jy3AS+4A22YlMsoZHlK/bo2+ULAmYIvXnIMk=", - "owner": "GutMutCode", - "repo": "opencode-nix", - "rev": "687e34c3c406de915c2eb8dc87f964c0f2fa685d", - "type": "github" - }, - "original": { - "owner": "GutMutCode", - "repo": "opencode-nix", - "type": "github" - } - }, "root": { "inputs": { - "atuin": "atuin", "home-manager": "home-manager", "nix-flatpak": "nix-flatpak", - "nixpkgs": "nixpkgs_2", - "opencode": "opencode", - "systems": "systems_2" - } - }, - "rust-analyzer-src": { - "flake": false, - "locked": { - "lastModified": 1758556272, - "narHash": "sha256-9amq6LAd0CFF3dLrJUItPiG64MQOG4QPrvjbjpa6NFc=", - "owner": "rust-lang", - "repo": "rust-analyzer", - "rev": "d05355db16dc526bb16bd84769ea840668d7015e", - "type": "github" - }, - "original": { - "owner": "rust-lang", - "ref": "nightly", - "repo": "rust-analyzer", - "type": "github" + "nixpkgs": "nixpkgs", + "systems": "systems" } }, "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_2": { "locked": { "lastModified": 1689347949, "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", diff --git a/flake.nix b/flake.nix index 926a884..c929e03 100644 --- a/flake.nix +++ b/flake.nix @@ -5,15 +5,13 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11"; systems.url = "github:nix-systems/default-linux"; nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.7.0"; - opencode.url = "github:GutMutCode/opencode-nix/"; home-manager = { url = "github:nix-community/home-manager/release-25.11"; inputs.nixpkgs.follows = "nixpkgs"; }; - atuin.url = "github:atuinsh/atuin/v18.13.3"; }; - outputs = { self, nixpkgs, nix-flatpak, systems, home-manager, opencode, ... } @ inputs: let + outputs = { self, nixpkgs, nix-flatpak, systems, home-manager, ... } @ inputs: let inherit (self) outputs; lib = nixpkgs.lib // home-manager.lib; formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt-tree; @@ -23,9 +21,6 @@ import nixpkgs { inherit system; config.allowUnfree = true; - overlays = [ - inputs.atuin.overlays.default - ]; } ); @@ -39,9 +34,6 @@ modules = [ nix-flatpak.nixosModules.nix-flatpak ./hosts/limgrave/nixos - ({ ... }: { - nixpkgs.overlays = [ inputs.atuin.overlays.default opencode.overlays.default ]; - }) ]; }; }; @@ -56,4 +48,4 @@ }; }; }; -} +} \ No newline at end of file diff --git a/hosts/limgrave/home/home.nix b/hosts/limgrave/home/home.nix index 065b62b..dbb8096 100644 --- a/hosts/limgrave/home/home.nix +++ b/hosts/limgrave/home/home.nix @@ -23,7 +23,6 @@ catppuccin-cursors catppuccin-papirus-folders catppuccin-grub - opencode ]; }; diff --git a/hosts/limgrave/nixos/flatpaks.nix b/hosts/limgrave/nixos/flatpaks.nix index f09a8fd..5afdc11 100644 --- a/hosts/limgrave/nixos/flatpaks.nix +++ b/hosts/limgrave/nixos/flatpaks.nix @@ -2,6 +2,7 @@ "com.microsoft.Edge" "dev.vencord.Vesktop" "chat.revolt.RevoltDesktop" + "org.signal.Signal" "io.github.hkdb.Aerion" "io.github.mpobaschnig.Vaults" "com.bitwarden.desktop" diff --git a/hosts/limgrave/nixos/hardware-configuration.nix b/hosts/limgrave/nixos/hardware-configuration.nix index 4a3a8fb..2050838 100644 --- a/hosts/limgrave/nixos/hardware-configuration.nix +++ b/hosts/limgrave/nixos/hardware-configuration.nix @@ -12,7 +12,6 @@ boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; - boot.supportedFilesystems = [ "nfs" ]; fileSystems."/" = { device = "/dev/mapper/luks-0e11cc3f-cf15-42a3-8356-12780ac991f6"; @@ -22,21 +21,16 @@ boot.initrd.luks.devices."luks-0e11cc3f-cf15-42a3-8356-12780ac991f6".device = "/dev/disk/by-uuid/0e11cc3f-cf15-42a3-8356-12780ac991f6"; fileSystems."/mnt/zeruel/nas1" = - { device = "zeruel.fuku:/mnt/pool1/nas1/"; + { device = "zeruel.fuku:/mnt/pool1/nas1"; fsType = "nfs"; - options = [ "x-systemd.automount" ]; + options = [ "x-systemd.automount" "noauto" ]; }; - fileSystems."/mnt/zeruel/vods" = - { device = "zeruel.fuku:/mnt/vods"; - fsType = "nfs"; - options = [ "x-systemd.automount" ]; - }; fileSystems."/mnt/windoze" = { device = "/dev/disk/by-uuid/46B01460B01458AF"; fsType = "ntfs-3g"; - options = [ "rw" "uid=1000" "x-gvfs-show"]; + options = [ "rw" "uid=1000"]; }; fileSystems."/boot" = @@ -48,7 +42,7 @@ fileSystems."/mnt/windoze2" = { device = "/dev/disk/by-uuid/6084BE5384BE2B82"; fsType = "ntfs-3g"; - options = [ "rw" "uid=1000" "x-gvfs-show"]; + options = [ "rw" "uid=1000"]; }; swapDevices = diff --git a/hosts/limgrave/nixos/packages.nix b/hosts/limgrave/nixos/packages.nix index 0ead3d5..f756872 100644 --- a/hosts/limgrave/nixos/packages.nix +++ b/hosts/limgrave/nixos/packages.nix @@ -52,6 +52,7 @@ k9s kubectl dotter + atuin kubecolor trash-cli gnomeExtensions.appindicator @@ -69,16 +70,9 @@ jq hmcl tmux - atuin tor tor-browser remmina yt-dlp mangohud - difftastic - libheif - ffmpegthumbnailer - signal-desktop - tflint - kubeconform ]