started re-counting some programs with cloc

master
Alessandro Mauri 4 years ago
parent f8cfa1fbcd
commit 8a5e6a70c1
  1. 250
      src/commonsizes.md

@ -15,95 +15,104 @@ power of post-its, git and [scc][1] I cloned the repositories of many
common programs in order to check their bloat suckless style, with
lines of code. Let's get to the data.
**UPDATE**: I changed the method for counting lines of code, that is I changed
utility from [scc][1] to [cloc][2]. The reason behind this is that [cloc][2]
allows to excude a list of languages from the code count, that way I can count
only the lines that matter excluding stuff like documentation and so on.
So entries marked with *"x"* mean that they were re-counted using the following
command (that's a big command):
```
cloc --exclude-lang='make,m4,YAML,SVG,CMake,DTD,Markdown,CSS,Meson,diff,Dockerfile,NAnt script,HTML,TeX,PO File,reStructuredText,vim script,AsciiDoc'
```
## Init systems
| Name | loc |
| ----------- | --------- |
| systemd | 722K |
| OpenRC | 21K |
| s6 | 20K |
| runit | 12K |
| sysVinit | 9K |
| systemd | 566K | x
| OpenRC | 14K | x
| s6 | 10K | x
| runit | 6.2K | x
| sysVinit | 8.7K | x
## Logging daemons
Technically systemd includes its own logging daemon but here is omitted.
| Name | loc |
| ----------- | --------- |
| rsyslog | 157K |
| socklog | 5.6K |
| metalog | 2.5K |
| rsyslog | 152K | x
| socklog | 3.7K | x
| metalog | 1.9K | x
## Network
Generic network management programs.
| Name | loc |
| --------------- | --------- |
| wpa_supplicant | 555K |
| kea | 486K |
| NetworkManager | 429K |
| ModemManager | 194K |
| connman | 103K |
| (e)iwd | 86K |
| dhcpcd | 41K |
| wpa_supplicant | 529K | x
| kea | 454K | x
| NetworkManager | 413K | x
| ModemManager | 192K | x
| connman | 98K | x
| iwd | 85K | x
| dhcpcd | 38K | x
## Music players
| Name | loc |
| ----------- | --------- |
| mpd | 102K |
| cmus | 42K |
| moc(p) | 35K |
| ncmpcpp | 25K |
| herrie | 7.4K |
| mpd | 93K | x
| cmus | 40K | x
| mocp | 35K | x
| ncmpcpp | 23K | x
| herrie | 7.1K | x
## Text editors
Don't tell me you saw that one coming.
| Name | loc |
| ----------- | --------- |
| vim | 931K |
| neovim | 771K |
| vis | 109K |
| kakoune | 31K |
| micro | 29K |
| nano | 17K |
| vim | 667K | x
| neovim | 550K | x
| vis | 32K | x
| kakoune | 30K | x
| micro | 27K | x
| nano | 16K | x
## Build systems
| Name | loc |
| ----------- | --------- |
| cmake | 854K |
| tup | 271K |
| meson | 107K |
| GNU make | 34K |
| ninja | 20K |
| samurai | 3.7K |
| cmake | 774K | x
| tup | 243K | x
| meson | 68K | x
| GNU make | 31K | x
| ninja | 18K | x
| samurai | 3.3K | x
## Shells (POSIX or not)
| Name | loc |
| ----------- | --------- |
| bash | 210K |
| fish | 165K |
| zsh | 119K |
| ksh93 | 72K |
| tcsh | 65K |
| mksh | 30K |
| ash | 21K |
| dash | 13K |
| bash | 161K | x
| fish | 157K | x
| zsh | 115K | x
| ksh93 | 72K | x
| tcsh | 65K | x
| mksh | 30K | x
| ash | 12K | x
| dash | 13K | x
## Boot loaders/managers
| Name | loc |
| ----------- | --------- |
| CloverBoot | 1.8M |
| GRUB | 331K |
| syslinux | 254K |
| eEFInd | 75K |
| LILO | 36K |
| CloverBoot | 1.7M | x
| GRUB | 281K | x
| syslinux | 222K | x
| reEFInd | 27K | x
| LILO | 24K | x
## Display servers
Dependencies are counted two levels "deep" excluding duplicates, from
@ -123,47 +132,47 @@ B: Code generated
| Name | loc |
| ----------- | --------- |
| dropbear | 144K |
| OpenSSH | 123K |
| TinySSH | 14K |
| dropbear | 101K | x
| OpenSSH | 123K | x
| TinySSH | 13K | x
## Terminal multiplexers
| Name | loc |
| ----------- | --------- |
| tmux | 132K |
| GNU screen | 36K |
| dvtm | 4.0K |
| tmux | 57K | x
| GNU screen | 32K | x
| dvtm | 4.1K | x
## Terminal emulators
| Name | loc |
| ----------- | --------- |
| kitty | 114K |
| alacritty | 26K |
| wayst | 24K |
| havoc | 10K |
| wterm | 10K |
| st | 4.4K |
| kitty | 174K | x
| alacritty | 18K | x
| wayst | 31K | x
| havoc | 10K | x
| wterm | 10K | x
| st | 4.3K | x
## Kernels
| Name | loc |
| ------------ | --------- |
| netbsd | 40M |
| linux | 21M |
| FreeBSD | 18M |
| OpenBSD | 17M |
| DragonflyBSD | 934K |
| netbsd | 32M | x
| linux | 19M | x
| FreeBSD | 16M | x
| OpenBSD | 15M | x
| DragonflyBSD | 887K | x
## Permission managers
| Name | loc |
| ----------- | --------- |
| sudo | 195K |
| polkit | 26K |
| OpenDoas | 2.9K |
| PAM | 61K |
| sudo | 140K | x
| polkit | 22K | x
| OpenDoas | 2.8K | x
| PAM | 60K | x
## Compilers
@ -172,38 +181,55 @@ B: Code generated
| gcc | 9.0M |
| llvm | 8.0M |
| zig | 2.1M |
| rust | 856K |
| rust | 801K | x
| tcc | 93K |
## Torrent clients
| Name | loc |
| ------------- | --------- |
| qBittorrent | 762K |
| transmission | 329K |
| deluge | 137K |
| rtorrent | 24K |
| qBittorrent | 743K | x
| transmission | 282K | x
| deluge | 118K | x
| rtorrent | 22K | x
## Web browsers
Does not include libraries, only the main repos.
| Name | loc |
| ----------- | --------- |
| chromium | |
| Firefox | 27M |
| chromium | too large |
| Firefox | 19M | x
| Webkit | 12M | x
| qutebrowser | 92K | x
| min | 20K | x
| vimb | 9.4K | x
| badwolf | 1.8K |
## Window managers
| Name | loc |
| ----------- | --------- |
| awesome | 83K |
| i3 | 58K |
| openbox | 42K |
| bspwm | 12K |
| awesome | 65K | x
| i3 | 44K | x
| openbox | 40K | x
| bspwm | 12K | x
| 2bwm | 3.3K |
| dwm | 2.5K |
## Audio systems
### ALSA
| Name | loc |
| ------------- | --------- |
| alsa-firmware | 133K | x
| alsa-lib | 93K | x
| alsa-tools | 43K | x
| alsa-utils | 36K | x
| alsa-plugins | 12K | x
| alsa-oss | 4.0K | x
## Wayland compositors
| Name | loc |
@ -218,11 +244,11 @@ Does not include libraries, only the main repos.
| Name | loc |
| ------------- | --------- |
| rofi | 84K |
| bemenu | 6.6K |
| wofi | 4.3K |
| nwg-launchers | 3.5K |
| dmenu | 1.3K |
| rofi | 20K | x
| bemenu | 5.3K | x
| wofi | 3.6K | x
| nwg-launchers | 2.2K | x
| dmenu | 1.2K | x
## Device managers
NOTE: mdev is only one source file, so loc count doesn't
@ -230,68 +256,68 @@ include anything but that file.
| Name | loc |
| ----------- | --------- |
| eudev | 28K |
| mdevd | 2.3K |
| smdev | 771 |
| eudev | 27K | x
| mdevd | 1.6K | x
| smdev | 697 | x
| mdev | 751 |
## Initramfs generators
| Name | loc |
| ----------- | --------- |
| dracut | 32K |
| tinyramfs | 1.0K |
| dracut | 28K | x
| tinyramfs | 448 | x
## Code counters
| Name | loc |
| ----------- | --------- |
| scc | 19K |
| tokei | 11K |
| scc | 41K | x
| tokei | 5.7K | x
## Package managers
| Name | loc |
| ----------- | --------- |
| apt | 100K |
| xbps | 43K |
| pacman | 37K |
| apk | 17K |
| kiss | 1.1K |
| apt | 98K | x
| xbps | 40K | x
| pacman | 28K | x
| apk | 17K | x
| kiss | 1.0K | x
## Webservers
| Name | loc |
| ----------- | --------- |
| apache | 419K |
| nginx | 142K |
| hiawatha | 113K |
| lighttpd | 75K |
| caddy | 30K |
| nginx | 144K | x
| hiawatha | 105K | x
| lighttpd | 70K | x
| caddy | 27K | x
## Syncronization and backup programs
| Name | loc |
| ----------- | --------- |
| borg | 236K |
| syncthing | 153K |
| git-annex | 123K |
| rsync | 56K |
| restic | 49K |
| casync | 33K |
| borg | 86K | x
| syncthing | 129K | x
| git-annex | 77K | x
| rsync | 51K | x
| restic | 43K | x
| casync | 31K | x
## Others
Stuff that doesn't fit any other category (for now)
| Name | loc |
| ----------- | --------- |
| openssl | 894K |
| bluez | 395K |
| libressl | 384K |
| elogind | 145K |
| dbus | 126K |
| tint2 | 37K |
| lowdown | 19K |
| pass | 3.5K |
| openssl | 642K | x
| bluez | 373K | x
| libressl | 374K | x
| elogind | 137K | x
| dbus | 115K | x
| tint2 | 33K | x
| lowdown | 15K | x
| pass | 2.8K | x
[1]: https://github.com/boyter/scc

Loading…
Cancel
Save