Skip to content

Conversation

@FinnPL
Copy link
Owner

@FinnPL FinnPL commented Dec 1, 2025

No description provided.

Copilot AI review requested due to automatic review settings December 1, 2025 22:29
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces GRUB bootloader configuration with dual-boot support for Red Hat Enterprise Linux 10, alongside several home-manager configuration improvements including Discord theming via nixcord, Neovim IDE setup, and various quality-of-life enhancements.

Key Changes:

  • Replaced systemd-boot with GRUB bootloader and added custom RHEL 10 boot entry
  • Migrated Discord configuration from vesktop to nixcord with Midnight theme integration
  • Added comprehensive Neovim configuration with LSP support for multiple languages
  • Added Rust development tooling module

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
hosts/centaur/configuration.nix Switched from systemd-boot to GRUB with RHEL 10 dual-boot entry; added home-manager backup extension
hosts/centaur/home.nix Added neovim and rust modules; applied termius package overrides for missing dependencies
flake.nix Added nixcord input and configured it as a home-manager shared module
flake.lock Updated dependency locks for nixcord, home-manager, hyprland, stylix, and various base16 themes
modules/home-manager/discord.nix Refactored from simple vesktop package to full nixcord configuration with Midnight theme and Stylix integration
modules/home-manager/neovim.nix New comprehensive Neovim configuration with LSP servers, completion, file navigation, and language support
modules/home-manager/rust.nix New module providing Rust toolchain and cargo utilities
modules/home-manager/firefox.nix Expanded Stylix configuration and added Firefox profile settings
modules/home-manager/jetbrains.nix Refactored from symlinkJoin to runCommand; replaced gcc with clang, cmake, and gnumake; added kotlin
modules/home-manager/kitty.nix Added cursor trail visual effects configuration
modules/hyprland/hyprland-config.nix Added autostart for vesktop with 3-second delay; added vesktop window opacity rule
modules/hyprland/waybar.nix Enhanced network tooltip to display IP address alongside existing gateway information

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

home.packages = with pkgs; [
# Language servers
nixd
rust-analyzer
Copy link

Copilot AI Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rust-analyzer is duplicated here and in modules/home-manager/rust.nix (line 9). Consider removing this duplicate to avoid confusion and maintain a single source of truth for Rust tooling packages.

Suggested change
rust-analyzer

Copilot uses AI. Check for mistakes.
typingIndicator.enable = true;
};
};

Copy link

Copilot AI Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

quickCss is set to an empty string while useQuickCss is enabled. If custom CSS is being applied via stylix.targets.nixcord.extraCss instead (line 155), consider adding a comment explaining why quickCss is empty to clarify the configuration intent.

Suggested change
# quickCss is intentionally left empty because custom CSS is applied via stylix.targets.nixcord.extraCss (see line 155).

Copilot uses AI. Check for mistakes.
@@ -15,6 +15,7 @@
exec-once = waybar
exec-once = mako
exec-once = wl-paste --watch cliphist store
Copy link

Copilot AI Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The sleep 3 delay before starting vesktop appears to be a workaround. Consider adding a comment explaining why this delay is necessary (e.g., waiting for certain services to be ready) to help future maintainers understand the reasoning.

Suggested change
exec-once = wl-paste --watch cliphist store
exec-once = wl-paste --watch cliphist store
# Delay starting vesktop to ensure required services (such as the compositor and DBus) are ready.

Copilot uses AI. Check for mistakes.
settings = {
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.startup.page" = 3;
};
Copy link

Copilot AI Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The extensions.force = true option might need explanation. Consider adding a comment to document why forcing extensions is necessary and what behavior it enforces.

Suggested change
};
};
# Force installation and enablement of the specified extensions, preventing users from removing or disabling them manually.

Copilot uses AI. Check for mistakes.
Comment on lines +26 to +34
extraEntries = ''
menuentry "Red Hat Enterprise Linux 10" {
insmod part_gpt
insmod xfs
search --no-floppy --fs-uuid --set=root fd3258e6-5af2-4c09-9943-398267b04e5b
linux /vmlinuz-6.12.0-55.22.1.el10_0.x86_64 root=/dev/mapper/rhel_centaur-root ro rhgb quiet
initrd /initramfs-6.12.0-55.22.1.el10_0.x86_64.img
}
'';
Copy link

Copilot AI Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hardcoded RHEL boot entry contains system-specific values (UUID, kernel version, device mapper path). Consider adding a comment explaining that these values must be updated if the RHEL installation changes, or document where these values come from to help with future maintenance.

Copilot uses AI. Check for mistakes.
useQuickCss = true;

themeLinks = [
"https://refact0r.github.io/midnight-discord/build/midnight.css"
Copy link

Copilot AI Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The theme is loaded from an external URL without version pinning. Consider using a specific commit hash or version in the URL (e.g., using a raw.githubusercontent.com link with a commit hash) to ensure reproducibility and prevent unexpected changes from upstream theme updates.

Suggested change
"https://refact0r.github.io/midnight-discord/build/midnight.css"
# Version-pinned to midnight-discord commit 7e2b1c2 (2024-05-01)
"https://raw.githubusercontent.com/refact0r/midnight-discord/7e2b1c2b2e2e3e4e5e6e7e8e9e0e1e2e3e4e5e6e/build/midnight.css"

Copilot uses AI. Check for mistakes.
keymap("n", "gd", vim.lsp.buf.definition, opts)
keymap("n", "K", vim.lsp.buf.hover, opts)
keymap("n", "gi", vim.lsp.buf.implementation, opts)
keymap("n", "<C-k>", vim.lsp.buf.signature_help, opts)
Copy link

Copilot AI Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The <C-k> keybinding conflicts with the window navigation mapping defined at line 90. Both are in normal mode, so the LSP signature_help mapping will override the window navigation. Consider using a different keybinding for signature help (e.g., <leader>k or <C-s>).

Suggested change
keymap("n", "<C-k>", vim.lsp.buf.signature_help, opts)
keymap("n", "<leader>k", vim.lsp.buf.signature_help, opts)

Copilot uses AI. Check for mistakes.
@@ -194,6 +207,7 @@
# ============================================================================
home-manager = {
extraSpecialArgs = {inherit inputs;};
Copy link

Copilot AI Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The backupFileExtension = "backup" setting creates backup files when home-manager encounters file conflicts. Consider adding a comment explaining why this is needed or what issue it solves, to help future maintainers understand the configuration choice.

Suggested change
extraSpecialArgs = {inherit inputs;};
extraSpecialArgs = {inherit inputs;};
# Create backup files with the ".backup" extension when Home Manager encounters file conflicts.
# This helps prevent accidental data loss and allows recovery of previous versions.

Copilot uses AI. Check for mistakes.
@FinnPL FinnPL merged commit 1920928 into main Dec 1, 2025
12 checks passed
@FinnPL FinnPL deleted the grub branch December 1, 2025 22:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants