Osama Albahrani 8243009d06 config: fallback to ::OS_VERSION
In Linux systems where lsb_release is not available by default,
`brew config` now falls back to `PRETTY_NAME` (`HOMEBREW_OS_VERSION`).

Before:
```console
$ brew config
HOMEBREW_VERSION: 4.1.2-30-gc346a5c
ORIGIN: https://github.com/Homebrew/brew
HEAD: c346a5c97adef16fcc439b53cc6e757b64b71cb4
Last commit: 14 hours ago
Core tap JSON: 29 Jul 04:16 UTC
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DISPLAY: :0
HOMEBREW_EDITOR: /usr/bin/nano
HOMEBREW_EVAL_ALL: set
HOMEBREW_MAKE_JOBS: 4
Homebrew Ruby: 2.6.10 => /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.10_1/bin/ruby
CPU: quad-core 64-bit skylake
Clang: N/A
Git: 2.41.0 => /bin/git
Curl: 8.2.1 => /bin/curl
Kernel: Linux 6.4.4-200.fc38.x86_64 x86_64 GNU/Linux
OS: Unknown
Host glibc: 2.37
/usr/bin/gcc: 13.1.1
/usr/bin/ruby: N/A
glibc: N/A
gcc@11: N/A
gcc: N/A
xorg: N/A
```

After:
```console
$ brew config
HOMEBREW_VERSION: 4.1.2-30-gc346a5c-dirty
ORIGIN: https://github.com/Homebrew/brew
HEAD: c346a5c97adef16fcc439b53cc6e757b64b71cb4
Last commit: 14 hours ago
Core tap JSON: 29 Jul 04:37 UTC
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DISPLAY: :0
HOMEBREW_EDITOR: /usr/bin/nano
HOMEBREW_EVAL_ALL: set
HOMEBREW_MAKE_JOBS: 4
Homebrew Ruby: 2.6.10 => /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.10_1/bin/ruby
CPU: quad-core 64-bit skylake
Clang: N/A
Git: 2.41.0 => /bin/git
Curl: 8.2.1 => /bin/curl
Kernel: Linux 6.4.4-200.fc38.x86_64 x86_64 GNU/Linux
OS: Arch Linux
Host glibc: 2.37
/usr/bin/gcc: 13.1.1
/usr/bin/ruby: N/A
glibc: N/A
gcc@11: N/A
gcc: N/A
xorg: N/A
```
2023-07-29 00:41:13 -04:00
..
2023-07-06 16:56:20 +01:00
2023-06-19 00:12:59 +00:00
2023-07-19 20:02:47 -07:00
2023-07-24 14:12:36 -07:00
2023-07-29 00:41:13 -04:00
2023-07-27 18:37:58 +00:00
2023-07-27 18:31:51 +00:00
2023-04-24 20:42:39 -07:00
2023-05-12 21:17:30 +02:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00
2023-07-04 13:31:58 +01:00
2023-07-18 08:52:49 -07:00
2023-04-24 20:42:39 -07:00
2023-05-17 15:26:46 +02:00
2023-07-24 14:12:36 -07:00
2023-07-06 16:56:20 +01:00
2023-04-24 20:42:39 -07:00
2023-05-20 19:28:29 +02:00
2023-07-24 14:12:36 -07:00
2023-04-24 14:03:55 +01:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00
2023-07-18 10:59:27 +01:00
2023-06-24 11:09:28 +01:00
2023-04-24 20:42:39 -07:00
2023-04-27 05:15:43 +01:00
2023-04-24 20:42:39 -07:00
2023-05-06 03:27:42 +02:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00
2023-05-12 21:17:30 +02:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00
2023-05-09 05:08:38 +02:00
2023-04-24 20:42:39 -07:00
2023-07-06 16:56:20 +01:00
2023-04-25 09:26:24 -07:00
2023-05-09 01:13:55 +02:00
2023-04-24 20:42:38 -07:00
2023-04-24 20:42:39 -07:00
2023-07-18 10:59:27 +01:00
2023-04-24 20:42:39 -07:00
2023-05-11 12:33:27 +01:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00
2023-04-24 20:42:39 -07:00

Homebrew Ruby API

This is the API for Homebrew.

The main class you should look at is the {Formula} class (and classes linked from there). That's the class that's used to create Homebrew formulae (i.e. package descriptions). Assume anything else you stumble upon is private.

You may also find the Formula Cookbook and Ruby Style Guide helpful in creating formulae.

Good luck!