area-51/lib/font-logos/README.md

187 lines
22 KiB
Markdown
Raw Permalink Normal View History

2025-01-30 04:21:55 +01:00
# font-logos #
![Available logos](assets/readme-header.png)
font-logos is an icon font containing logos of popular linux distributions and other open source software.
*Note:* All brand icons are trademarks of their respective owners and should only be used to represent the company or product to which they refer.
## Installation ##
Install the font by downloading and unpacking the latest release's zip manually or installing it from npm:
npm install font-logos
To use the font, include `assets/font-logos.css` as well as the
fonts in your project and use the CSS classes listed below.
<link href="/assets/font-logos.css" rel="stylesheet">
Alternatively just link to it using a CDN such as [jsDelivr](//jsdelivr.com):
<link href="//cdn.jsdelivr.net/npm/font-logos@1/assets/font-logos.css" rel="stylesheet">
## Usage ##
Include an icon using the corresponding CSS class in an empty element:
<i class="fl-[icon]"></i>
Add `fl-fw` as class for a fixed width icon.
If you want to insert a glyph of this font on a GNU/Linux system press `Ctrl + Shift + u`, release the keys and then type the code point, for instance: `Ctrl + Shift + u` and `f31a` will insert the `Tux` glyph.
Available logos are:
| Distribution | CSS class | Code | Code point | Image |
| ------------------------- | ---------------------- | -------------------------------------- | :--------: | :--------------------------------------------------: |
| Alma Linux | `fl-almalinux` | `<i class="fl-almalinux"></i>` | `0xf31d` | <img src="vectors/almalinux.svg" width="24"> |
| Alpine | `fl-alpine` | `<i class="fl-alpine"></i>` | `0xf300` | <img src="vectors/alpine.svg" width="24"> |
| AOSC OS | `fl-aosc` | `<i class="fl-aosc"></i>` | `0xf301` | <img src="vectors/aosc.svg" width="24"> |
| Apple | `fl-apple` | `<i class="fl-apple"></i>` | `0xf302` | <img src="vectors/apple.svg" width="24"> |
| Archcraft | `fl-archcraft` | `<i class="fl-archcraft"></i>` | `0xf345` | <img src="vectors/archcraft.svg" width="24"> |
| ArchLabs | `fl-archlabs` | `<i class="fl-archlabs"></i>` | `0xf31e` | <img src="vectors/archlabs.svg" width="24"> |
| Arch Linux | `fl-archlinux` | `<i class="fl-archlinux"></i>` | `0xf303` | <img src="vectors/archlinux.svg" width="24"> |
| ArcoLinux | `fl-arcolinux` | `<i class="fl-arcolinux"></i>` | `0xf346` | <img src="vectors/arcolinux.svg" width="24"> |
| Arduino | `fl-arduino` | `<i class="fl-arduino"></i>` | `0xf34b` | <img src="vectors/arduino.svg" width="24"> |
| Artix Linux | `fl-artix` | `<i class="fl-artix"></i>` | `0xf31f` | <img src="vectors/artix.svg" width="24"> |
| Awesome WM | `fl-awesome` | `<i class="fl-awesome"></i>` | `0xf354` | <img src="vectors/awesome.svg" width="24"> |
| BigLinux | `fl-biglinux` | `<i class="fl-biglinux"></i>` | `0xf347` | <img src="vectors/biglinux.svg" width="24"> |
| bspwm | `fl-bspwm` | `<i class="fl-bspwm"></i>` | `0xf355` | <img src="vectors/bspwm.svg" width="24"> |
| Budgie | `fl-budgie` | `<i class="fl-budgie"></i>` | `0xf320` | <img src="vectors/budgie.svg" width="24"> |
| CentOS | `fl-centos` | `<i class="fl-centos"></i>` | `0xf304` | <img src="vectors/centos.svg" width="24"> |
| Cinnamon | `fl-cinnamon` | `<i class="fl-cinnamon"></i>` | `0xf35f` | <img src="vectors/cinnamon.svg" width="24"> |
| Codeberg | `fl-codeberg` | `<i class="fl-codeberg"></i>` | `0xf330` | <img src="vectors/codeberg.svg" width="24"> |
| CoreOS | `fl-coreos` | `<i class="fl-coreos"></i>` | `0xf305` | <img src="vectors/coreos.svg" width="24"> |
| Crystal Linux | `fl-crystal` | `<i class="fl-crystal"></i>` | `0xf348` | <img src="vectors/crystal.svg" width="24"> |
| Debian | `fl-debian` | `<i class="fl-debian"></i>` | `0xf306` | <img src="vectors/debian.svg" width="24"> |
| Deepin | `fl-deepin` | `<i class="fl-deepin"></i>` | `0xf321` | <img src="vectors/deepin.svg" width="24"> |
| Devuan | `fl-devuan` | `<i class="fl-devuan"></i>` | `0xf307` | <img src="vectors/devuan.svg" width="24"> |
| Docker | `fl-docker` | `<i class="fl-docker"></i>` | `0xf308` | <img src="vectors/docker.svg" width="24"> |
| dwm | `fl-dwm` | `<i class="fl-dwm"></i>` | `0xf356` | <img src="vectors/dwm.svg" width="24"> |
| elementary OS | `fl-elementary` | `<i class="fl-elementary"></i>` | `0xf309` | <img src="vectors/elementary.svg" width="24"> |
| Endeavour OS | `fl-endeavour` | `<i class="fl-endeavour"></i>` | `0xf322` | <img src="vectors/endeavour.svg" width="24"> |
| Enlightenment | `fl-enlightenment` | `<i class="fl-enlightenment"></i>` | `0xf357` | <img src="vectors/enlightenment.svg" width="24"> |
| F-droid | `fl-fdroid` | `<i class="fl-fdroid"></i>` | `0xf36a` | <img src="vectors/fdroid.svg" width="24"> |
| Fedora | `fl-fedora` | `<i class="fl-fedora"></i>` | `0xf30a` | <img src="vectors/fedora.svg" width="24"> |
| Fedora (inverse) | `fl-fedora-inverse` | `<i class="fl-fedora-inverse"></i>` | `0xf30b` | <img src="vectors/fedora-inverse.svg" width="24"> |
| Ferris | `fl-ferris` | `<i class="fl-ferris"></i>` | `0xf323` | <img src="vectors/ferris.svg" width="24"> |
| Flathub | `fl-flathub` | `<i class="fl-flathub"></i>` | `0xf324` | <img src="vectors/flathub.svg" width="24"> |
| Fluxbox | `fl-fluxbox` | `<i class="fl-fluxbox"></i>` | `0xf358` | <img src="vectors/fluxbox.svg" width="24"> |
| Forgejo | `fl-forgejo` | `<i class="fl-forgejo"></i>` | `0xf335` | <img src="vectors/forgejo.svg" width="24"> |
| FOSDEM | `fl-fosdem` | `<i class="fl-fosdem"></i>` | `0xf36b` | <img src="vectors/fosdem.svg" width="24"> |
| FreeBSD | `fl-freebsd` | `<i class="fl-freebsd"></i>` | `0xf30c` | <img src="vectors/freebsd.svg" width="24"> |
| FreeCAD | `fl-freecad` | `<i class="fl-freecad"></i>` | `0xf336` | <img src="vectors/freecad.svg" width="24"> |
| freedesktop.org | `fl-freedesktop` | `<i class="fl-freedesktop"></i>` | `0xf360` | <img src="vectors/freedesktop.svg" width="24"> |
| Garuda Linux | `fl-garuda` | `<i class="fl-garuda"></i>` | `0xf337` | <img src="vectors/garuda.svg" width="24"> |
| Gentoo | `fl-gentoo` | `<i class="fl-gentoo"></i>` | `0xf30d` | <img src="vectors/gentoo.svg" width="24"> |
| GIMP | `fl-gimp` | `<i class="fl-gimp"></i>` | `0xf338` | <img src="vectors/gimp.svg" width="24"> |
| Gitea | `fl-gitea` | `<i class="fl-gitea"></i>` | `0xf339` | <img src="vectors/gitea.svg" width="24"> |
| GNOME | `fl-gnome` | `<i class="fl-gnome"></i>` | `0xf361` | <img src="vectors/gnome.svg" width="24"> |
| GNU Guix | `fl-gnu-guix` | `<i class="fl-gnu-guix"></i>` | `0xf325` | <img src="vectors/gnu-guix.svg" width="24"> |
| GTK | `fl-gtk` | `<i class="fl-gtk"></i>` | `0xf362` | <img src="vectors/gtk.svg" width="24"> |
| Hyperbola GNU/Linux-libre | `fl-hyperbola` | `<i class="fl-hyperbola"></i>` | `0xf33a` | <img src="vectors/hyperbola.svg" width="24"> |
| Hyprland | `fl-hyprland` | `<i class="fl-hyprland"></i>` | `0xf359` | <img src="vectors/hyprland.svg" width="24"> |
| i3 | `fl-i3` | `<i class="fl-i3"></i>` | `0xf35a` | <img src="vectors/i3.svg" width="24"> |
| illumos | `fl-illumos` | `<i class="fl-illumos"></i>` | `0xf326` | <img src="vectors/illumos.svg" width="24"> |
| Inkscape | `fl-inkscape` | `<i class="fl-inkscape"></i>` | `0xf33b` | <img src="vectors/inkscape.svg" width="24"> |
| JWM | `fl-jwm` | `<i class="fl-jwm"></i>` | `0xf35b` | <img src="vectors/jwm.svg" width="24"> |
| Kali Linux | `fl-kali-linux` | `<i class="fl-kali-linux"></i>` | `0xf327` | <img src="vectors/kali-linux.svg" width="24"> |
| KDE | `fl-kde` | `<i class="fl-kde"></i>` | `0xf373` | <img src="vectors/kde.svg" width="24"> |
| KDE Neon | `fl-kde-neon` | `<i class="fl-kde-neon"></i>` | `0xf331` | <img src="vectors/kde-neon.svg" width="24"> |
| KDE Plasma | `fl-kde-plasma` | `<i class="fl-kde-plasma"></i>` | `0xf332` | <img src="vectors/kde-plasma.svg" width="24"> |
| Kdenlive | `fl-kdenlive` | `<i class="fl-kdenlive"></i>` | `0xf33c` | <img src="vectors/kdenlive.svg" width="24"> |
| KiCad | `fl-kicad` | `<i class="fl-kicad"></i>` | `0xf34c` | <img src="vectors/kicad.svg" width="24"> |
| Krita | `fl-krita` | `<i class="fl-krita"></i>` | `0xf33d` | <img src="vectors/krita.svg" width="24"> |
| Kubuntu | `fl-kubuntu` | `<i class="fl-kubuntu"></i>` | `0xf333` | <img src="vectors/kubuntu.svg" width="24"> |
| Kubuntu (inverse) | `fl-kubuntu-inverse` | `<i class="fl-kubuntu-inverse"></i>` | `0xf334` | <img src="vectors/kubuntu-inverse.svg" width="24"> |
| Linux Mint | `fl-linuxmint` | `<i class="fl-linuxmint"></i>` | `0xf30e` | <img src="vectors/linuxmint.svg" width="24"> |
| Linux Mint (inverse) | `fl-linuxmint-inverse` | `<i class="fl-linuxmint-inverse"></i>` | `0xf30f` | <img src="vectors/linuxmint-inverse.svg" width="24"> |
| Loc-OS | `fl-locos` | `<i class="fl-locos"></i>` | `0xf349` | <img src="vectors/locos.svg" width="24"> |
| LXDE | `fl-lxde` | `<i class="fl-lxde"></i>` | `0xf363` | <img src="vectors/lxde.svg" width="24"> |
| LXLE Linux | `fl-lxle` | `<i class="fl-lxle"></i>` | `0xf33e` | <img src="vectors/lxle.svg" width="24"> |
| LXQt | `fl-lxqt` | `<i class="fl-lxqt"></i>` | `0xf364` | <img src="vectors/lxqt.svg" width="24"> |
| Mageia | `fl-mageia` | `<i class="fl-mageia"></i>` | `0xf310` | <img src="vectors/mageia.svg" width="24"> |
| Mandriva | `fl-mandriva` | `<i class="fl-mandriva"></i>` | `0xf311` | <img src="vectors/mandriva.svg" width="24"> |
| Manjaro | `fl-manjaro` | `<i class="fl-manjaro"></i>` | `0xf312` | <img src="vectors/manjaro.svg" width="24"> |
| MATE | `fl-mate` | `<i class="fl-mate"></i>` | `0xf365` | <img src="vectors/mate.svg" width="24"> |
| mpv | `fl-mpv` | `<i class="fl-mpv"></i>` | `0xf36e` | <img src="vectors/mpv.svg" width="24"> |
| MX Linux | `fl-mxlinux` | `<i class="fl-mxlinux"></i>` | `0xf33f` | <img src="vectors/mxlinux.svg" width="24"> |
| Neovim | `fl-neovim` | `<i class="fl-neovim"></i>` | `0xf36f` | <img src="vectors/neovim.svg" width="24"> |
| NixOS | `fl-nixos` | `<i class="fl-nixos"></i>` | `0xf313` | <img src="vectors/nixos.svg" width="24"> |
| Octoprint | `fl-octoprint` | `<i class="fl-octoprint"></i>` | `0xf34d` | <img src="vectors/octoprint.svg" width="24"> |
| OpenBSD | `fl-openbsd` | `<i class="fl-openbsd"></i>` | `0xf328` | <img src="vectors/openbsd.svg" width="24"> |
| OpenSCAD | `fl-openscad` | `<i class="fl-openscad"></i>` | `0xf34e` | <img src="vectors/openscad.svg" width="24"> |
| OpenSUSE | `fl-opensuse` | `<i class="fl-opensuse"></i>` | `0xf314` | <img src="vectors/opensuse.svg" width="24"> |
| OSH | `fl-osh` | `<i class="fl-osh"></i>` | `0xf34f` | <img src="vectors/osh.svg" width="24"> |
| OSHWA | `fl-oshwa` | `<i class="fl-oshwa"></i>` | `0xf350` | <img src="vectors/oshwa.svg" width="24"> |
| OSI | `fl-osi` | `<i class="fl-osi"></i>` | `0xf36c` | <img src="vectors/osi.svg" width="24"> |
| Parabola GNU/Linux-libre | `fl-parabola` | `<i class="fl-parabola"></i>` | `0xf340` | <img src="vectors/parabola.svg" width="24"> |
| Parrot OS | `fl-parrot` | `<i class="fl-parrot"></i>` | `0xf329` | <img src="vectors/parrot.svg" width="24"> |
| Pop!_OS | `fl-pop-os` | `<i class="fl-pop-os"></i>` | `0xf32a` | <img src="vectors/pop-os.svg" width="24"> |
| PostmarketOS | `fl-postmarketos` | `<i class="fl-postmarketos"></i>` | `0xf374` | <img src="vectors/postmarketos.svg" width="24"> |
| Prusa Slicer | `fl-prusaslicer` | `<i class="fl-prusaslicer"></i>` | `0xf351` | <img src="vectors/prusaslicer.svg" width="24"> |
| Puppy Linux | `fl-puppy` | `<i class="fl-puppy"></i>` | `0xf341` | <img src="vectors/puppy.svg" width="24"> |
| Qt | `fl-qt` | `<i class="fl-qt"></i>` | `0xf375` | <img src="vectors/qt.svg" width="24"> |
| Qtile | `fl-qtile` | `<i class="fl-qtile"></i>` | `0xf35c` | <img src="vectors/qtile.svg" width="24"> |
| QubesOS | `fl-qubesos` | `<i class="fl-qubesos"></i>` | `0xf342` | <img src="vectors/qubesos.svg" width="24"> |
| Raspberry pi | `fl-raspberry-pi` | `<i class="fl-raspberry-pi"></i>` | `0xf315` | <img src="vectors/raspberry-pi.svg" width="24"> |
| Red Hat | `fl-redhat` | `<i class="fl-redhat"></i>` | `0xf316` | <img src="vectors/redhat.svg" width="24"> |
| RepRap | `fl-reprap` | `<i class="fl-reprap"></i>` | `0xf352` | <img src="vectors/reprap.svg" width="24"> |
| RISC-V | `fl-riscv` | `<i class="fl-riscv"></i>` | `0xf353` | <img src="vectors/riscv.svg" width="24"> |
| Rocky Linux | `fl-rocky-linux` | `<i class="fl-rocky-linux"></i>` | `0xf32b` | <img src="vectors/rocky-linux.svg" width="24"> |
| Sabayon | `fl-sabayon` | `<i class="fl-sabayon"></i>` | `0xf317` | <img src="vectors/sabayon.svg" width="24"> |
| Slackware | `fl-slackware` | `<i class="fl-slackware"></i>` | `0xf318` | <img src="vectors/slackware.svg" width="24"> |
| Slackware (inverse) | `fl-slackware-inverse` | `<i class="fl-slackware-inverse"></i>` | `0xf319` | <img src="vectors/slackware-inverse.svg" width="24"> |
| Snappy | `fl-snappy` | `<i class="fl-snappy"></i>` | `0xf32c` | <img src="vectors/snappy.svg" width="24"> |
| Solus | `fl-solus` | `<i class="fl-solus"></i>` | `0xf32d` | <img src="vectors/solus.svg" width="24"> |
| Sway | `fl-sway` | `<i class="fl-sway"></i>` | `0xf35d` | <img src="vectors/sway.svg" width="24"> |
| Tails | `fl-tails` | `<i class="fl-tails"></i>` | `0xf343` | <img src="vectors/tails.svg" width="24"> |
| Thunderbird | `fl-thunderbird` | `<i class="fl-thunderbird"></i>` | `0xf370` | <img src="vectors/thunderbird.svg" width="24"> |
| Tor Browser | `fl-tor` | `<i class="fl-tor"></i>` | `0xf371` | <img src="vectors/tor.svg" width="24"> |
| Trisquel GNU/Linux | `fl-trisquel` | `<i class="fl-trisquel"></i>` | `0xf344` | <img src="vectors/trisquel.svg" width="24"> |
| Tux | `fl-tux` | `<i class="fl-tux"></i>` | `0xf31a` | <img src="vectors/tux.svg" width="24"> |
| Ubuntu | `fl-ubuntu` | `<i class="fl-ubuntu"></i>` | `0xf31b` | <img src="vectors/ubuntu.svg" width="24"> |
| Ubuntu (inverse) | `fl-ubuntu-inverse` | `<i class="fl-ubuntu-inverse"></i>` | `0xf31c` | <img src="vectors/ubuntu-inverse.svg" width="24"> |
| Vanilla OS | `fl-vanilla` | `<i class="fl-vanilla"></i>` | `0xf366` | <img src="vectors/vanilla.svg" width="24"> |
| Void | `fl-void` | `<i class="fl-void"></i>` | `0xf32e` | <img src="vectors/void.svg" width="24"> |
| VS Codium | `fl-vscodium` | `<i class="fl-vscodium"></i>` | `0xf372` | <img src="vectors/vscodium.svg" width="24"> |
| Wayland | `fl-wayland` | `<i class="fl-wayland"></i>` | `0xf367` | <img src="vectors/wayland.svg" width="24"> |
| Wikimedia | `fl-wikimedia` | `<i class="fl-wikimedia"></i>` | `0xf36d` | <img src="vectors/wikimedia.svg" width="24"> |
| XeroLinux | `fl-xerolinux` | `<i class="fl-xerolinux"></i>` | `0xf34a` | <img src="vectors/xerolinux.svg" width="24"> |
| XFCE | `fl-xfce` | `<i class="fl-xfce"></i>` | `0xf368` | <img src="vectors/xfce.svg" width="24"> |
| Xmonad | `fl-xmonad` | `<i class="fl-xmonad"></i>` | `0xf35e` | <img src="vectors/xmonad.svg" width="24"> |
| Xorg | `fl-xorg` | `<i class="fl-xorg"></i>` | `0xf369` | <img src="vectors/xorg.svg" width="24"> |
| Zorin OS | `fl-zorin` | `<i class="fl-zorin"></i>` | `0xf32f` | <img src="vectors/zorin.svg" width="24"> |
## Building ##
Make sure you have the following dependencies installed:
* Node, Python and jq to run the build scripts
* [FontForge](//fontforge.org) to generate the fonts
* [wkhtmltopdf](http://wkhtmltopdf.org/) to generate this readme's preview image
Then run `npm install`/`yarn install` and `make`.
## Releasing ##
If you are a maintainer of this repository and a new release is to be published
* Make sure all PRs (that shall be pulled) are pulled
* The PRs add new `svg`s in `vectors/`
* The `icons.tsv` is ammended (i.e. new icons added at the bottom)
* Every time the `svg`s or `icons.tsv` is touched in the `master` branch (i.e. through pulling) the preview image is updated
* Note that the `README.md` is NOT updated. You can manually modify it do indicate/add recently added but not released icons.
* Once the release seems ready:
* Edit the version number in `package.json` (and push that change to `master`)
* Trigger the "Draft a Release" workflow manually on the Actions page (on the `master` branch)
* The workflow will add a git tag for the release
* Go to the releases list and find the draft release
* Edit the description etc pp and finally
* Push "publish release"
* The release is published on Github
* Automatically the "Update README" workflow is triggered
* The `README.md` is regenerated (the preview should already be up to date, see above)
* Automatically the "Publish release to npm" workflow is triggered
* If the npm token is not expired the release is pushed to NPM
* You need to publish on NPM manually if token is expired (expected)