# Install blogc with Homebrew, dnf, Nix, zypper

Blog compiler with template engine and markup language. Version 0.20.1 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#blogc.

## Install

```sh
sudo av install brew:blogc
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install blogc
```

  Evidence: local Homebrew formula metadata

### Linux

- dnf (92%):

```sh
sudo dnf install blogc
```

  Evidence: Fedora Rawhide package metadata: blogc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#blogc
```

  Evidence: nixpkgs package indexes: pkgs/by-name/bl/blogc/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- zypper (92%):

```sh
sudo zypper install blogc
```

  Evidence: openSUSE Tumbleweed package metadata: blogc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## Package facts

- **Package key:** brew:blogc
- **Package manager:** Homebrew
- **Version:** 0.20.1
- **Source summary:** Blog compiler with template engine and markup language
- **Homepage:** <https://blogc.rgm.io/>
- **Repository:** <https://github.com/blogc/blogc>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- blogc (alias)
- blogc-git-receiver (alias)
- blogc-make (alias)
- blogc-runserver (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 0.20.1
## Project history and usage

blogc is a small static blog compiler that treats site generation like a source-to-output compilation step rather than like a full blogging engine. Its official site describes it as stateless, idempotent, make-friendly, and aimed at developers who are comfortable wiring command-line tools together.

### Project history

Rafael G. Martins started blogc as an experiment in a simple blog compiler with its own template engine and markup language. The project deliberately avoided CMS-style global state: the core blogc command compiles source files and templates, while helper programs such as blogc-make, blogc-git-receiver, and blogc-runserver cover common publishing workflows.

The public release line began with 0.1 beta tags in 2015 and continued through a series of 0.x releases. Later releases added build-tool conveniences, pagination and listing improvements, table-of-contents generation, signed release artifacts, and a Debian/Ubuntu repository announced with 0.20.1.

### Adoption history

blogc's adoption has been strongest in Unix package-manager and source-based distribution circles rather than in mainstream JavaScript static-site tooling. Its own site lists release tarballs plus package routes for Debian/Ubuntu, Fedora/RHEL/CentOS COPR, Termux, openSUSE, and Gentoo, and the input metadata also records Homebrew, Fedora, Nix, and openSUSE package names.

The project ships an example blog repository and documents using blogc with make or blogc-make, which made it attractive to users who wanted a static site generator with C portability and predictable command-line behavior.

### How it is used

Typical usage passes source files and templates to blogc to emit HTML or feed resources, or uses blogc-make with a blogcfile to define site-wide variables, content directories, templates, posts, tags, and generated outputs. The compiler can be embedded in ordinary make rules because each invocation has no shared state.

The package installs several executables: blogc for compilation, blogc-make for project builds, blogc-runserver for local serving, and blogc-git-receiver for git-push publishing workflows.

### Why package nerds care

blogc is package-nerd catnip because it is a C static-site generator that thinks like a compiler: libc at runtime, POSIX portability as a stated goal, man pages for interfaces, and build integration through make instead of a large language runtime.

It sits in the small but interesting lineage of minimal static-site tools where the packaging story matters: release tarballs, distro repositories, man pages, and reproducible command-line invocations are as central as themes or plugins.

### Timeline

- 2015: First 0.1 beta tags appear in the official Git repository.
- 2015: The blogc site copyright and early release materials identify Rafael G. Martins as the author.
- 2019: Version 0.18.0 added blogc-make pagination_tags support and signed release artifacts.
- 2020: Version 0.20.0 added table-of-contents generation for source files.
- 2021: Version 0.20.1 announced a Debian/Ubuntu repository and minor fixes.

### Related projects

- blogc-example is the official starter repository for new sites.
- blogc-make is the bundled build tool that turns blogc into a more complete blog-building workflow while keeping the compiler separate.
- The project overlaps conceptually with static-site generators and make-based publishing systems, but its own docs emphasize that it is a compiler, not a blogging engine.

### Sources

- <https://blogc.rgm.io/>
- <https://blogc.rgm.io/man/blogc.1.html>
- <https://blogc.rgm.io/man/blogcfile.5.html>
- <https://blogc.rgm.io/news/>
- <https://github.com/blogc/blogc>
- source_facts.package-manager


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: blogcfile, file passed to blogc-make -f
## Other Package-Manager Records

- Nix - blogc: normalized package name match | nixpkgs package indexes: pkgs/by-name/bl/blogc/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- dnf - blogc - 0.20.1^20240602.b1ae9c9-5.fc45: normalized package name match | Fedora Rawhide package metadata: blogc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | A blog compiler | https://blogc.rgm.io/
- dnf - blogc-git-receiver - 0.20.1^20240602.b1ae9c9-5.fc45: normalized package name match | Fedora Rawhide package metadata: blogc-git-receiver from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | A simple login shell/git hook to deploy blogc websites | https://blogc.rgm.io/
- dnf - blogc-make - 0.20.1^20240602.b1ae9c9-5.fc45: normalized package name match | Fedora Rawhide package metadata: blogc-make from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | A simple build tool for blogc | https://blogc.rgm.io/
- dnf - blogc-runserver - 0.20.1^20240602.b1ae9c9-5.fc45: normalized package name match | Fedora Rawhide package metadata: blogc-runserver from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | A simple HTTP server to test blogc websites | https://blogc.rgm.io/
- zypper - blogc - 0.20.1-1.22: normalized package name match | openSUSE Tumbleweed package metadata: blogc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Blog compiler | https://blogc.rgm.io/


## Combined YAML source

View the package source record on GitHub. [combined/blogc.yml](https://github.com/mxcl/pkgdb/blob/main/combined/blogc.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated configuration and credential file locations
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
