Added Homebrew for Linux as instructions for atomic, updated DistroBox docs.#756
Added Homebrew for Linux as instructions for atomic, updated DistroBox docs.#756PizzaLovingNerd wants to merge 1 commit into
Conversation
…ue and Universal Blue. Added Homebrew and Distrobox installation methods, including necessary commands and SELinux configuration notes. Updated Distrobox container image version from Debian 12 to 13.
📝 WalkthroughWalkthroughUpdated Linux installation documentation for immutable distributions. The section headers and installation methods for Fedora Silverblue, Universal Blue, and SteamOS are clarified and expanded. Three installation paths are now documented: rpm-ostree native packages, Homebrew CLI (with daemon management), and Distrobox containers (with Debian 13 and binary export). ChangesImmutable Distros Installation Methods
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
src/pages/get-started/install/linux.mdxOops! Something went wrong! :( ESLint: 9.39.4 TypeError: Converting circular structure to JSON Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/pages/get-started/install/linux.mdx (1)
1-1:⚠️ Potential issue | 🔴 Critical | ⚡ Quick winMissing
Warningcomponent import.The
<Warning>component is used on lines 181-183 but is not imported from@/components/mdx. This will cause a build or runtime error.🔧 Proposed fix
-import {Note} from "@/components/mdx"; +import {Note, Warning} from "@/components/mdx";As per coding guidelines: "Import custom components from
@/components/mdx(Note, Warning, Success),@/components/Tiles,@/components/YouTube,@/components/Button, or@/components/mdxas needed for alerts, layout, media, and UI"🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/pages/get-started/install/linux.mdx` at line 1, The file imports Note from "@/components/mdx" but uses the Warning component later; update the existing import so it also imports Warning (i.e., add Warning to the named imports from "@/components/mdx") so the <Warning> component is available at runtime and avoids build errors; ensure the import line includes both Note and Warning.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@src/pages/get-started/install/linux.mdx`:
- Line 156: Fix the typo "defualt" → "default" and update the Homebrew path
wording to avoid using "~", replacing "the default ~/linuxbrew prefix" with a
clearer phrase such as "the default /home/linuxbrew/.linuxbrew prefix" or "the
standard Homebrew prefix (/home/linuxbrew/.linuxbrew)"; update the sentence in
src/pages/get-started/install/linux.mdx accordingly so it reads with the
corrected spelling and unambiguous path description.
- Around line 151-175: Unify the Homebrew path usage by replacing hardcoded
paths used for service install/start (the lines using
"/home/linuxbrew/.linuxbrew/bin/netbird service install" and "… service start")
and the SELinux fcontext/restorecon paths (the
"/var/home/linuxbrew/.linuxbrew/Cellar/netbird/…" occurrences) with a dynamic
prefix using $(brew --prefix) (e.g. "$(brew --prefix)/bin/netbird" for service
commands) and document that SELinux requires the physical path (advise using
realpath/$(brew --prefix) resolved to the physical path when constructing the
semanage/restorecon targets); also update the explanatory sentence about the
default prefix to mention both /var/home and /home symlink situations so readers
know when to adjust the commands.
---
Outside diff comments:
In `@src/pages/get-started/install/linux.mdx`:
- Line 1: The file imports Note from "@/components/mdx" but uses the Warning
component later; update the existing import so it also imports Warning (i.e.,
add Warning to the named imports from "@/components/mdx") so the <Warning>
component is available at runtime and avoids build errors; ensure the import
line includes both Note and Warning.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 4b06c2a6-52ee-4d12-a5c9-72fc93d53381
📒 Files selected for processing (1)
src/pages/get-started/install/linux.mdx
| 3. Install and start the client daemon service: | ||
| ```bash | ||
| sudo /home/linuxbrew/.linuxbrew/bin/netbird service install | ||
| sudo /home/linuxbrew/.linuxbrew/bin/netbird service start | ||
| ``` | ||
| You may need to adjust this command if you are not using the defualt ~/linuxbrew prefix for your Homebrew install. | ||
|
|
||
| <Note> | ||
| On Fedora-based systems including Universal Blue, SELinux may block NetBird from running due to homebrew installing it in ~/linuxbrew. | ||
|
|
||
| You can fix this by running | ||
| ```bash | ||
| sudo semanage fcontext -a -t bin_t \ | ||
| '/var/home/linuxbrew/\.linuxbrew/Cellar/netbird/[^/]+/bin/netbird' | ||
| sudo restorecon -Rv /var/home/linuxbrew/.linuxbrew/Cellar/netbird | ||
| sudo systemctl restart netbird | ||
| ``` | ||
|
|
||
| If your Homebrew prefix is set to something other than /var/home/linuxbrew/.linuxbrew, you may need to adjust those commands to match. | ||
|
|
||
| You can verify that the NetBird service is running properly before and after making these changes by running: | ||
| ```bash | ||
| sudo systemctl status netbird | ||
| ``` | ||
| </Note> |
There was a problem hiding this comment.
Clarify or unify Homebrew path references for immutable Fedora systems.
There's an inconsistency in the Homebrew installation paths:
- Lines 153-154: Use
/home/linuxbrew/.linuxbrew/bin/netbirdfor service install/start - Lines 164-165, 169: Use
/var/home/linuxbrew/.linuxbrew/for SELinux configuration
On Fedora Silverblue and immutable systems, home directories are typically under /var/home, and /home may be a symlink. While SELinux requires the physical path (/var/home), the service commands should likely also use the same physical path for consistency and correctness on these systems.
Consider either:
- Using
/var/home/linuxbrew/.linuxbrewconsistently throughout this section, or - Adding a clear explanation that the service commands use
/home(which is typically a symlink) while SELinux requires the physical/var/homepath, or - Detecting and documenting the actual Homebrew prefix dynamically (e.g.,
$(brew --prefix))
🔧 Possible fix for consistency
3. Install and start the client daemon service:
```bash
- sudo /home/linuxbrew/.linuxbrew/bin/netbird service install
- sudo /home/linuxbrew/.linuxbrew/bin/netbird service start
+ sudo /var/home/linuxbrew/.linuxbrew/bin/netbird service install
+ sudo /var/home/linuxbrew/.linuxbrew/bin/netbird service start-You may need to adjust this command if you are not using the defualt ~/linuxbrew prefix for your Homebrew install.
+You may need to adjust this command if you are not using the default /var/home/linuxbrew/.linuxbrew prefix for your Homebrew install (or /home/linuxbrew/.linuxbrew on systems where /home is not a symlink).
</details>
<!-- suggestion_start -->
<details>
<summary>📝 Committable suggestion</summary>
> ‼️ **IMPORTANT**
> Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
```suggestion
3. Install and start the client daemon service:
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@src/pages/get-started/install/linux.mdx` around lines 151 - 175, Unify the
Homebrew path usage by replacing hardcoded paths used for service install/start
(the lines using "/home/linuxbrew/.linuxbrew/bin/netbird service install" and "…
service start") and the SELinux fcontext/restorecon paths (the
"/var/home/linuxbrew/.linuxbrew/Cellar/netbird/…" occurrences) with a dynamic
prefix using $(brew --prefix) (e.g. "$(brew --prefix)/bin/netbird" for service
commands) and document that SELinux requires the physical path (advise using
realpath/$(brew --prefix) resolved to the physical path when constructing the
semanage/restorecon targets); also update the explanatory sentence about the
default prefix to mention both /var/home and /home symlink situations so readers
know when to adjust the commands.
| sudo /home/linuxbrew/.linuxbrew/bin/netbird service install | ||
| sudo /home/linuxbrew/.linuxbrew/bin/netbird service start | ||
| ``` | ||
| You may need to adjust this command if you are not using the defualt ~/linuxbrew prefix for your Homebrew install. |
There was a problem hiding this comment.
Fix typo and clarify Homebrew path terminology.
- Typo: "defualt" should be "default"
- The reference to "~/linuxbrew prefix" is misleading. The standard Homebrew path
/home/linuxbrew/.linuxbrewis a dedicated system user location, not a user home directory (which~represents). Consider rephrasing to "default/home/linuxbrew/.linuxbrewprefix" or "standard Homebrew prefix".
📝 Proposed fix
-You may need to adjust this command if you are not using the defualt ~/linuxbrew prefix for your Homebrew install.
+You may need to adjust this command if you are not using the default `/home/linuxbrew/.linuxbrew` prefix for your Homebrew install.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| You may need to adjust this command if you are not using the defualt ~/linuxbrew prefix for your Homebrew install. | |
| You may need to adjust this command if you are not using the default `/home/linuxbrew/.linuxbrew` prefix for your Homebrew install. |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@src/pages/get-started/install/linux.mdx` at line 156, Fix the typo "defualt"
→ "default" and update the Homebrew path wording to avoid using "~", replacing
"the default ~/linuxbrew prefix" with a clearer phrase such as "the default
/home/linuxbrew/.linuxbrew prefix" or "the standard Homebrew prefix
(/home/linuxbrew/.linuxbrew)"; update the sentence in
src/pages/get-started/install/linux.mdx accordingly so it reads with the
corrected spelling and unambiguous path description.
Summary by CodeRabbit
Release Notes