diff --git a/config/ansible/inventory.ini b/config/ansible/inventory.ini index 108bc13..28093a2 100644 --- a/config/ansible/inventory.ini +++ b/config/ansible/inventory.ini @@ -1,6 +1,5 @@ [workstations] -mennos-laptop-w ansible_connection=local -mennos-cachyos-laptop ansible_connection=local +mennos-laptop ansible_connection=local mennos-desktop ansible_connection=local [servers] diff --git a/config/ansible/playbook.yml b/config/ansible/playbook.yml index a94d4a4..ec13ad4 100644 --- a/config/ansible/playbook.yml +++ b/config/ansible/playbook.yml @@ -12,7 +12,7 @@ - name: Include workstation tasks ansible.builtin.import_tasks: tasks/workstations/workstation.yml - when: inventory_hostname in ['mennos-laptop-w', 'mennos-cachyos-laptop', 'mennos-desktop'] + when: inventory_hostname in ['mennos-laptop', 'mennos-desktop'] - name: Include server tasks ansible.builtin.import_tasks: tasks/servers/server.yml diff --git a/config/ansible/tasks/global/symlinks.yml b/config/ansible/tasks/global/symlinks.yml index c65ee90..9b7b22b 100644 --- a/config/ansible/tasks/global/symlinks.yml +++ b/config/ansible/tasks/global/symlinks.yml @@ -34,8 +34,7 @@ vars: gitconfig_mapping: mennos-desktop: "$DOTFILES_PATH/config/git/gitconfig.linux" - mennos-cachyos-laptop: "$DOTFILES_PATH/config/git/gitconfig.linux" - mennos-laptop-w: "$DOTFILES_PATH/config/git/gitconfig.wsl" + mennos-laptop: "$DOTFILES_PATH/config/git/gitconfig.linux" mennos-server: "$DOTFILES_PATH/config/git/gitconfig.mennos-server" mennos-vm: "$DOTFILES_PATH/config/git/gitconfig.mennos-server" tags: diff --git a/config/ansible/tasks/workstations/workstation.yml b/config/ansible/tasks/workstations/workstation.yml index d743a1f..f50325e 100644 --- a/config/ansible/tasks/workstations/workstation.yml +++ b/config/ansible/tasks/workstations/workstation.yml @@ -55,5 +55,7 @@ - distrobox # Android Screen Mirroring - scrcpy + - dolphin-nextcloud + - nextcloud-desktop state: present become: true diff --git a/config/autostart/io.github.mrvladus.List.desktop b/config/autostart/io.github.mrvladus.List.desktop old mode 100755 new mode 100644 diff --git a/config/git/gitconfig.wsl b/config/git/gitconfig.wsl deleted file mode 100644 index c95427e..0000000 --- a/config/git/gitconfig.wsl +++ /dev/null @@ -1,43 +0,0 @@ -[user] - signingkey = ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM+sKpcREOUjwMMSzEWAso6830wbOi8kUxqpuXWw5gHr - email = menno@vleeuwen.me - name = Menno van Leeuwen - -[gpg] - format = ssh - -[gpg "ssh"] - program = "/mnt/c/Users/menno/AppData/Local/1Password/app/8/op-ssh-sign-wsl" - -[commit] - gpgsign = true - -[color] - ui = true - -[push] - autoSetupRemote = true - -[pull] - rebase = false - -[filter "lfs"] - process = git-lfs filter-process - required = true - clean = git-lfs clean -- %f - smudge = git-lfs smudge -- %f - -[init] - defaultBranch = main -[credential "https://github.com"] - helper = - helper = !/home/menno/.nix-profile/bin/gh auth git-credential -[credential "https://gist.github.com"] - helper = - helper = !/home/menno/.nix-profile/bin/gh auth git-credential - -[safe] - directory = * - -[alias] - pushall = "!f() { for var in $(git remote show); do echo \"pushing to $var\"; git push $var; done; }; f" diff --git a/config/home-manager/flake.nix b/config/home-manager/flake.nix index c1fd028..0980974 100644 --- a/config/home-manager/flake.nix +++ b/config/home-manager/flake.nix @@ -47,7 +47,7 @@ }; }; - "mennos-cachyos-laptop" = home-manager.lib.homeManagerConfiguration { + "mennos-laptop" = home-manager.lib.homeManagerConfiguration { inherit pkgs; modules = [ ./home.nix ]; extraSpecialArgs = { @@ -57,49 +57,7 @@ opnix ; isServer = false; - hostname = "mennos-cachyos-laptop"; - }; - }; - - "mennos-server" = home-manager.lib.homeManagerConfiguration { - inherit pkgs; - modules = [ ./home.nix ]; - extraSpecialArgs = { - inherit - pkgs - pkgs-unstable - opnix - ; - isServer = true; - hostname = "mennos-server"; - }; - }; - - "mennos-vm" = home-manager.lib.homeManagerConfiguration { - inherit pkgs; - modules = [ ./home.nix ]; - extraSpecialArgs = { - inherit - pkgs - pkgs-unstable - opnix - ; - isServer = true; - hostname = "mennos-vm"; - }; - }; - - "mennos-laptop-w" = home-manager.lib.homeManagerConfiguration { - inherit pkgs; - modules = [ ./home.nix ]; - extraSpecialArgs = { - inherit - pkgs - pkgs-unstable - opnix - ; - isServer = false; - hostname = "mennos-laptop-w"; + hostname = "mennos-laptop"; }; }; }; diff --git a/config/home-manager/packages/common/hosts/mennos-laptop-w.nix b/config/home-manager/packages/common/hosts/mennos-laptop.nix similarity index 100% rename from config/home-manager/packages/common/hosts/mennos-laptop-w.nix rename to config/home-manager/packages/common/hosts/mennos-laptop.nix diff --git a/config/home-manager/packages/common/packages.nix b/config/home-manager/packages/common/packages.nix index 4481cbd..5b990d8 100644 --- a/config/home-manager/packages/common/packages.nix +++ b/config/home-manager/packages/common/packages.nix @@ -9,109 +9,104 @@ imports = if hostname == "mennos-desktop" then [ ./hosts/mennos-desktop.nix ] - else if hostname == "mennos-laptop-w" then - [ ./hosts/mennos-laptop-w.nix ] - else if hostname == "mennos-cachyos-laptop" then - [ ./hosts/mennos-cachyos-laptop.nix ] - else if hostname == "mennos-server" then - [ ./hosts/mennos-server.nix ] - else if hostname == "mennos-vm" then - [ ./hosts/mennos-vm.nix ] + else if hostname == "mennos-laptop" then + [ ./hosts/mennos-laptop.nix ] else [ ./hosts/fallback.nix ]; - home.packages = - with pkgs; - [ - # General packages - git - onefetch - gnupg - gh - nixfmt-rfc-style - wget - fastfetch - _1password-cli + home.packages = + with pkgs; + [ + # General packages + git + onefetch + gnupg + gh + nixfmt-rfc-style + nixd + nil + wget + fastfetch + _1password-cli - # Package management - devbox + # Package management + devbox - # Development SDKs/Toolkits - gcc - pkg-config - gnumake - stdenv.cc - rustc - cargo - cargo-edit - cargo-watch - cargo-audit - cargo-expand - cargo-tarpaulin - act # GitHub Actions CLI + # Development SDKs/Toolkits + gcc + pkg-config + gnumake + stdenv.cc + rustc + cargo + cargo-edit + cargo-watch + cargo-audit + cargo-expand + cargo-tarpaulin + act # GitHub Actions CLI - # File and directory operations - eza # Modern ls - bat # Modern cat - broot # Interactive directory navigator - du-dust # Modern du - duf # Modern df - zip - unzip - glances # Advanced system monitoring tool - procs # Modern ps - hyperfine # Benchmarking tool + # File and directory operations + eza # Modern ls + bat # Modern cat + broot # Interactive directory navigator + du-dust # Modern du + duf # Modern df + zip + unzip + glances # Advanced system monitoring tool + procs # Modern ps + hyperfine # Benchmarking tool - # Search and text processing - ripgrep # Modern grep - sd # Modern sed - choose # Modern cut - jq # JSON processor - yq # YAML processor - xan # CSV processor (xsv is no longer maintained) - ncdu # Disk usage analyzer + # Search and text processing + ripgrep # Modern grep + sd # Modern sed + choose # Modern cut + jq # JSON processor + yq # YAML processor + xan # CSV processor (xsv is no longer maintained) + ncdu # Disk usage analyzer - # System monitoring and process management - procs # Modern ps - hyperfine # Benchmarking tool - bandwhich # Network utilization tool - doggo # Modern dig - gping # Ping with graph - htop # Interactive process viewer + # System monitoring and process management + procs # Modern ps + hyperfine # Benchmarking tool + bandwhich # Network utilization tool + doggo # Modern dig + gping # Ping with graph + htop # Interactive process viewer - # Development utilities - delta # Better git diff - difftastic # Structural diff tool - fzf # Fuzzy finder - tokei # Code statistics - tealdeer # Modern tldr client - lazygit # Terminal UI for git + # Development utilities + delta # Better git diff + difftastic # Structural diff tool + fzf # Fuzzy finder + tokei # Code statistics + tealdeer # Modern tldr client + lazygit # Terminal UI for git - # Shell and terminal - starship # Cross-shell prompt - blesh # Bash ble.sh - zellij # Modern terminal multiplexer - screen # Terminal multiplexer + # Shell and terminal + starship # Cross-shell prompt + blesh # Bash ble.sh + zellij # Modern terminal multiplexer + screen # Terminal multiplexer - # File viewers and processors - hexyl # Modern hexdump - chafa # Terminal image viewer - glow # Markdown renderer + # File viewers and processors + hexyl # Modern hexdump + chafa # Terminal image viewer + glow # Markdown renderer - # Editors - neovim - ## Neovim plugins - vimPlugins.LazyVim + # Editors + neovim + ## Neovim plugins + vimPlugins.LazyVim - nano - micro + nano + micro - # Lolz - fortune - cowsay - cmatrix - figlet - lolcat - ] - ++ (with pkgs-unstable; [ ]); + # Lolz + fortune + cowsay + cmatrix + figlet + lolcat + ]; } diff --git a/config/nextcloud.cfg b/config/nextcloud.cfg index 107c146..b96e2e9 100644 --- a/config/nextcloud.cfg +++ b/config/nextcloud.cfg @@ -99,4 +99,4 @@ useDownloadLimit=0 useUploadLimit=0 [Settings] -geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\x4\xe\0\0\x2\xa4\0\0\x6\x98\0\0\0\0\0\0\x4\xe\0\0\x2\xa4\0\0\x6\x98\0\0\0\x1\0\0\0\0\x14\0\0\0\0\0\0\0\x4\xe\0\0\x2\xa4\0\0\x6\x98) +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\b\0\0\0\0\0\0\0\n\xa4\0\0\x2\x8a\0\0\b\0\0\0\0\0\0\0\n\xa4\0\0\x2\x8a\0\0\0\x1\0\0\0\0\x11\x64\0\0\b\0\0\0\0\0\0\0\n\xa4\0\0\x2\x8a) diff --git a/setup.sh b/setup.sh index 37a77b3..88f0049 100755 --- a/setup.sh +++ b/setup.sh @@ -4,7 +4,7 @@ set -euo pipefail IFS=$'\n\t' # Constants -readonly NIXOS_RELEASE="25.05" # Home Manager release version (Must match NixOS version) +readonly NIXOS_RELEASE="25.05" # Home Manager release version (Must match NixOS version) readonly GIT_REPO="https://git.mvl.sh/vleeuwenmenno/dotfiles.git" # Dotfiles repository URL readonly DOTFILES_PATH="${HOME}/.dotfiles" # Dotfiles directory readonly SETUP_MARKER="${HOME}/.dotfiles-setup" # Setup marker file indicates setup has been run @@ -52,7 +52,7 @@ printfe() { "magenta") color=$magenta ;; - "cyan") + "cyan") color=$cyan ;; "grey") @@ -69,7 +69,7 @@ printfe() { fi printf $grey"%s" "$(date +'%H:%M:%S')"$normal - + case $color in $green | $cyan | $blue | $magenta | $normal) printf "$green INF $normal" @@ -113,11 +113,11 @@ die() { request_sudo() { log_info "This script requires sudo privileges to run, please enter your password." sudo -v || die "Failed to obtain sudo privileges" - + # Keep sudo credentials refreshed in the background (while true; do sudo -v; sleep 50; done) & SUDO_KEEPALIVE_PID=$! - + # Ensure we kill the keepalive process when the script exits trap 'kill $SUDO_KEEPALIVE_PID 2>/dev/null || true' EXIT } @@ -170,7 +170,7 @@ update_home_manager_flake() { local hostname="$1" local isServer="$2" local flake_file="$DOTFILES_PATH/config/home-manager/flake.nix" - + # Create new configuration entry local new_config=" \"$hostname\" = home-manager.lib.homeManagerConfiguration { inherit pkgs; @@ -185,10 +185,10 @@ update_home_manager_flake() { # Create temporary file local temp_file=$(mktemp) - + # Find the line number where homeConfigurations = { appears local config_line=$(grep -n "homeConfigurations = {" "$flake_file" | cut -d: -f1) - + if [ -z "$config_line" ]; then rm "$temp_file" die "Could not find homeConfigurations in flake.nix" @@ -196,10 +196,10 @@ update_home_manager_flake() { # Copy the file up to the line after homeConfigurations = { head -n "$config_line" "$flake_file" > "$temp_file" - + # Add the new configuration echo "$new_config" >> "$temp_file" - + # Add the rest of the file starting from the line after homeConfigurations = { tail -n +"$((config_line + 1))" "$flake_file" >> "$temp_file" @@ -223,7 +223,7 @@ install_nix() { log_info "Nix not detected, installing Nix..." curl --proto '=https' --tlsv1.2 -sSf -L "https://install.determinate.systems/nix?version=${NIXOS_RELEASE}" -o install-nix.sh || \ die "Failed to download Nix installer" - + sh install-nix.sh install --no-confirm || die "Failed to install Nix" rm install-nix.sh || die "Failed to remove Nix installer" . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh || die "Failed to source Nix profile" @@ -403,10 +403,10 @@ check_compatibility() { check_command_availibility "dnf" ;; Ubuntu) - # Check if we are running either 22.04, 24.04 or 24.10 - if ! grep -q "Ubuntu 22.04" /etc/os-release && ! grep -q "Ubuntu 24.04" /etc/os-release && ! grep -q "Ubuntu 24.10" /etc/os-release; then + # Check if we are running either 22.04, 24.04, 24.10 or 25.04 + if ! grep -q "Ubuntu 22.04" /etc/os-release && ! grep -q "Ubuntu 24.04" /etc/os-release && ! grep -q "Ubuntu 24.10" /etc/os-release && ! grep -q "Ubuntu 25.04" /etc/os-release; then log_warning "Unsupported Ubuntu version detected. Setup may not work as expected." - log_warning "Supported versions are: Ubuntu 22.04, 24.04, 24.10" + log_warning "Supported versions are: Ubuntu 22.04, 24.04, 24.10, 25.04" fi log_success "Detected Ubuntu. Proceeding with setup..." check_command_availibility "apt" @@ -485,7 +485,7 @@ main() { git clone "$GIT_REPO" "$DOTFILES_PATH" || die "Failed to clone dotfiles repository" echo "" fi - + if [ "$continue_flag" = "--continue" ]; then log_info "Continuing setup..." else diff --git a/vscode/settings.json b/vscode/settings.json index 352b5a2..b6d448d 100755 --- a/vscode/settings.json +++ b/vscode/settings.json @@ -72,7 +72,7 @@ "window.confirmSaveUntitledWorkspace": false, "git.openRepositoryInParentFolders": "never", "debug.toolBarLocation": "commandCenter", - "workbench.colorTheme": "One Dark Pro Darker", + "workbench.colorTheme": "Catppuccin Macchiato", "ansible.lightspeed.enabled": false, "ansible.lightspeed.suggestions.enabled": false, "docker.extension.enableComposeLanguageServer": false, @@ -85,7 +85,6 @@ "git show" ], "roo-cline.deniedCommands": [], - "dart.flutterSdkPath": "/home/menno/.flutter/flutter", "kilo-code.allowedCommands": [ "npm test", "npm install", @@ -96,5 +95,5 @@ ], "kilo-code.deniedCommands": [], "github.copilot.nextEditSuggestions.enabled": true, - "workbench.iconTheme": "material-icon-theme" + "workbench.iconTheme": "vscode-icons" } \ No newline at end of file