Skip to content

Conversation

@alexakreizinger
Copy link
Member

@alexakreizinger alexakreizinger commented Nov 17, 2025

this PR moves the general installation requirements into the doc for building from source, since it turns out that info is only applicable to building from source.

...however, there was already a requirements section in that doc, with slightly different info. so I combined those + added some info per one of our Chronosphere developers who shared what packages he needed to install on a fresh Ubuntu installation.

Summary by CodeRabbit

  • Documentation
    • Moved prerequisite details into a dedicated build-and-install section for clarity.
    • Removed the redundant Requirements subsection from the top-level download page.
    • Added an explicit, actionable list of packages and development libraries needed to build from source.
    • Clarified that some optional input/output plugins may require additional third-party components (e.g., Kafka).

Signed-off-by: Alexa Kreizinger <alexakreizinger@gmail.com>
@alexakreizinger alexakreizinger requested review from a team as code owners November 17, 2025 21:32
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 17, 2025

Walkthrough

Build prerequisites were removed from installation/downloads.md and an explicit prerequisites list (packages and plugin note) was added to installation/downloads/source/build-and-install.md.

Changes

Cohort / File(s) Summary
Prerequisites removed
installation/downloads.md
Removed the Requirements subsection (build prerequisites and related notes).
Prerequisites added/expanded
installation/downloads/source/build-and-install.md
Added an explicit prerequisites block listing packages: bison, build-essential (or build-essentials depending on distro), cmake, flex, libssl-dev, libyaml-dev, pkg-config. Added a note that some input/output plugins (e.g., Kafka) may require additional components.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Verify package names and distro-specific naming (build-essential vs build-essentials).
  • Check the plugin dependency note and any links or references to input/output plugin docs.

Possibly related PRs

Suggested reviewers

  • gguillotte
  • cosmo0920

Poem

🐰
I hopped through docs with nimble feet,
Moved prerequisites to one neat sheet.
Packages listed, none astray,
Build steps clearer for the day,
Hop, compile, then play! 🥕✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main objective of the changeset—consolidating and relocating installation requirements from one document to another.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch alexakreizinger/sc-154896/move-install-requirements-into-build-from

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 36f1976 and f35d1ed.

📒 Files selected for processing (1)
  • installation/downloads/source/build-and-install.md (1 hunks)

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Signed-off-by: Alexa Kreizinger <alexakreizinger@gmail.com>
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (2)
installation/downloads/source/build-and-install.md (2)

9-16: Clarify platform-specificity of package names.

The package list uses Ubuntu/Debian package naming conventions (e.g., build-essentials, libfl-dev, libssl-dev). Consider adding a note indicating that package names differ across Linux distributions (RedHat/CentOS use gcc, gcc-c++, flex-devel, openssl-devel, etc.; Alpine uses different naming) to help users on other platforms adapt the instructions.

Consider adding a brief platform note similar to:

 To build and install Fluent Bit from source, you must also install the following packages:
 
+> **Note:** The package names below are for Ubuntu/Debian. Package names differ on other Linux distributions (e.g., RedHat/CentOS, Alpine). Refer to your distribution's package manager for equivalent packages.
+
 - `bison`
 - `build-essentials`

18-18: Expand guidance on discovering plugin-specific dependencies.

The note mentions that certain input/output plugins require additional components (Kafka is given as an example), but doesn't explain how users can discover which specific plugins need what. Consider linking to or mentioning where plugin documentation specifies their dependencies to improve discoverability.

You could enhance this with:

-Additionally, certain [input](../data-pipeline/inputs.md) or [output](../data-pipeline/outputs.md) plugins might depend on additional components. For example, some plugins require Kafka.
+Additionally, certain [input](../data-pipeline/inputs.md) or [output](../data-pipeline/outputs.md) plugins might depend on additional components. For example, the Kafka input and output plugins require Kafka libraries. Check the documentation for your chosen plugins to identify any additional dependencies.
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c448901 and 5afb575.

📒 Files selected for processing (2)
  • installation/downloads.md (0 hunks)
  • installation/downloads/source/build-and-install.md (1 hunks)
💤 Files with no reviewable changes (1)
  • installation/downloads.md

Signed-off-by: Alexa Kreizinger <alexakreizinger@gmail.com>
Copy link
Contributor

@cosmo0920 cosmo0920 left a comment

Choose a reason for hiding this comment

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

I found some of the glitches in the updated contents. Could you take a look?

- Bison 3 or greater
- YAML headers
- OpenSSL headers
To build and install Fluent Bit from source, you must also install the following packages:
Copy link
Contributor

Choose a reason for hiding this comment

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

We need to clarify the minimum requirement of CMake version.
Currently, we use CMake 3.31.6 in our CI.
Plus, we're still supporting to compile on CentOS7.
We also use CMake 3.31.6 for that platform in CI.
So, the minimum requirements of CMake version could be become CMake 3.31.6 now.

Copy link
Member Author

Choose a reason for hiding this comment

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

I can add that :) similarly, do you think we need to add minimum versions for any of these other libraries?


- `bison`
- `build-essentials`
- `cmake`
Copy link
Member Author

Choose a reason for hiding this comment

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

Suggested change
- `cmake`
- `cmake` (version 3.31.6 or greater)

Signed-off-by: Alexa Kreizinger <alexakreizinger@gmail.com>
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.

3 participants