-
Notifications
You must be signed in to change notification settings - Fork 0
chore: sort nix package lists alphabetically #1198
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,7 +1,7 @@ | ||
| { pkgs, ... }: | ||
| { | ||
| home.packages = with pkgs; [ | ||
| php | ||
| nodePackages.intelephense | ||
| php | ||
| ]; | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
馃З Analysis chain
馃弫 Script executed:
Repository: shunkakinoki/dotfiles
Length of output: 213
馃弫 Script executed:
Repository: shunkakinoki/dotfiles
Length of output: 762
馃弫 Script executed:
Repository: shunkakinoki/dotfiles
Length of output: 632
馃寪 Web query:
home-manager tmux plugin loading order dependencies馃挕 Result:
In Home Manager's programs.tmux module, the generated ~/.config/tmux/tmux.conf has a specific structure for plugin loading and dependencies. Structure (order in tmux.conf): 1. Module defaults (e.g., set -g escape-time 500, default-terminal "screen", etc.) using lib.mkBefore. 2. Plugins section: For each plugin in programs.tmux.plugins (in list order): - Optional plugin.extraConfig (must be before run-shell for plugin vars to be available). - run-shell ${plugin.rtp} (loads the plugin script). 3. Global extraConfig using lib.mkAfter (after plugins). Plugin loading order is the order in the plugins list. Order matters for dependencies: plugins that modify shared elements like status-right must come before dependent plugins (e.g., theme before resurrect/continuum). Use plugin.extraConfig for per-plugin config before its run-shell. To place config before all plugins, users can override with xdg.configFile."tmux/tmux.conf".text = lib.mkOrder 600 "..."; (between defaults priority 500 and plugins 1000). extraConfig after plugins can reference plugin variables but cannot affect pre-plugin-run settings. No built-in extraConfigBeforePlugins (proposed PRs
#3801,#4670,#6486open/stale as of 2025). Workarounds for dependencies: - Put theme/config in plugin.extraConfig. - Order plugins carefully (e.g., sensible on top via sensibleOnTop=true). - Custom tmux.conf override for full control. Examples: plugins = with pkgs.tmuxPlugins; [ { plugin = catppuccin; extraConfig = "set -g@catppuccin_flavour'frappe'"; } resurrect # depends on prior status-right setup ];Citations:
pluginsandextraConfigsections in generatedtmux.conf聽nix-community/home-manager#3555extraConfigBeforePluginstotmux.conf聽nix-community/home-manager#4670馃弫 Script executed:
Repository: shunkakinoki/dotfiles
Length of output: 967
馃寪 Web query:
tmux-continuum depends on tmux-resurrect plugin loading order馃挕 Result:
Yes, tmux-continuum depends on tmux-resurrect and requires specific attention to plugin loading order when using Tmux Plugin Manager (TPM). tmux-continuum is built on top of tmux-resurrect: it automates saving and restoring tmux environments by calling resurrect's functionality. The official tmux-continuum README explicitly states "Please make sure you have tmux-resurrect installed" before adding continuum, and all installation examples list resurrect first: set -g
@plugin'tmux-plugins/tmux-resurrect' set -g@plugin'tmux-plugins/tmux-continuum' While TPM loads plugins in the order listed in .tmux.conf, continuum modifies the status-right (or status-left) to insert its periodic save hook (continuum_save.sh). If another plugin loaded after continuum overwrites status-right (common with themes), continuum's autosave stops working. The official docs recommend: "To fix this issue, place the plugin last in the TPM plugins list." Resurrect has no such status modifications, so the standard order (resurrect before continuum, continuum last or near-last) ensures: - Continuum can call resurrect functions (loaded earlier). - No later plugins break continuum's status hook. User reports confirm issues when continuum is not positioned correctly relative to status-altering plugins, but no explicit "continuum requires resurrect before it" beyond dependency and examples. Continuum restore calls also assume resurrect is available at runtime. Example working .tmux.conf snippet: set -g@plugin'tmux-plugins/tpm' set -g@plugin'tmux-plugins/tmux-sensible' # or other non-status plugins set -g@plugin'tmux-plugins/tmux-resurrect' set -g@plugin'tmux-plugins/tmux-continuum' # last, before run tpm set -g@continuum-restore'on' run '~/.tmux/plugins/tpm/tpm' Press prefix+I to install.Citations:
馃寪 Web query:
tmux continuum plugin how it works resurrect dependency馃挕 Result:
The tmux-continuum plugin provides continuous saving of the tmux environment every 15 minutes (configurable) in the background, automatic restoration of the last saved environment upon tmux server start (if enabled with set -g
@continuum-restore'on'), and optional automatic tmux startup after computer boot (if enabled with set -g@continuum-boot'on'). It requires the tmux-resurrect plugin as a dependency, which handles the actual saving and restoring of tmux sessions, windows, panes, and running programs (manual save/restore via prefix + Ctrl-s / Ctrl-r). Continuum automates resurrect's functionality for seamless persistence across restarts. Installation via Tmux Plugin Manager: add set -g@plugin'tmux-plugins/tmux-resurrect' and set -g@plugin'tmux-plugins/tmux-continuum' to .tmux.conf, then prefix + I. Requires tmux 1.9+ and bash. Last updated 2024.Citations:
Plugin load order breaks tmux-continuum functionality鈥攔esurrect must come before continuum, and continuum should be positioned near the end of the list.
The alphabetical reordering introduces a critical issue. The tmux-continuum plugin depends on tmux-resurrect and requires it to be loaded first. According to the official tmux-continuum documentation, continuum automates resurrect's save/restore functionality and will not work correctly if resurrect is not available at runtime. Additionally, continuum modifies the tmux status bar to insert its autosave hook; if status-altering plugins (like themes) load after continuum, they can overwrite this hook, breaking the automatic save feature.
The current order places
continuum(line 12) beforeresurrect(line 15), and continuum is not positioned near the end of the list. This will break tmux session persistence. The correct ordering should be:resurrectbeforecontinuum, andcontinuumpositioned last (or near-last) to prevent other plugins from overwriting its status modifications.馃 Prompt for AI Agents