Vim vs Neovim on FreeBSD

Posted 2019-07-22

I have a FreeBSD server which primarily serves as a jail host. As such, I’d like to keep its installed packages to a minimum. FreeBSD’s default install comes with vi, but not vim. Using vi feels familiar enough, but it becomes annoying not to have things like gg available. So I decided to install vim to make my life a little nicer:

$ sudo pkg install vim
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 103 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        vim: 8.1.1439
        libXpm: 3.5.12_2
        libXext: 1.3.4,1
        libXau: 1.0.9
        libX11: 1.6.8,1
        libxcb: 1.13.1
        libXdmcp: 1.1.3
        xorgproto: 2019.1
        libxml2: 2.9.9
        libpthread-stubs: 0.4
        libXt: 1.2.0,1
        libSM: 1.2.3,1
        libICE: 1.0.9_3,1
        pango: 1.42.4_2
        libXrender: 0.9.10_2
        xorg-fonts-truetype: 7.7_1
        font-misc-meltho: 1.0.3_4
        mkfontscale: 1.2.1
        libfontenc: 1.1.4
        freetype2: 2.10.0
        fontconfig: 2.12.6,1
        font-misc-ethiopic: 1.0.3_4
        font-bh-ttf: 1.0.3_4
        encodings: 1.0.5,1
        font-util: 1.3.1
        dejavu: 2.37_1
        libXft: 2.3.2_3
        harfbuzz: 2.5.3
        graphite2: 1.3.13
        cairo: 1.16.0,2
        pixman: 0.34.0_1
        png: 1.6.37
        mesa-libs: 18.3.2_1
        libxshmfence: 1.3
        libXxf86vm: 1.1.4_3
        libXfixes: 5.0.3_2
        libXdamage: 1.1.5
        wayland: 1.16.0_1
        libepoll-shim: 0.0.20190311
        libdrm: 2.4.98_1,1
        libpciaccess: 0.14
        pciids: 20190620
        libunwind: 20170615
        glib: 2.56.3_5,1
        xkeyboard-config: 2.27
        libXrandr: 1.5.2
        libedit: 3.1.20190324,1
        libepoxy: 1.5.2
        fribidi: 0.19.7
        gtk3: 3.24.9
        libxkbcommon: 0.8.4
        libXinerama: 1.1.4_2,1
        libXi: 1.7.10,1
        libXcursor: 1.2.0
        libXcomposite: 0.4.5,1
        adwaita-icon-theme: 3.28.0
        gtk-update-icon-cache: 2.24.32
        shared-mime-info: 1.10_1
        hicolor-icon-theme: 0.17
        gdk-pixbuf2: 2.36.12
        tiff: 4.0.10_1
        jpeg-turbo: 2.0.2
        jbigkit: 2.1_1
        atk: 2.28.1
        cups: 2.2.11
        gnutls: 3.6.8
        trousers: 0.3.14_2
        tpm-emulator: 0.7.4_2
        gmp: 6.1.2_1
        p11-kit: 0.23.16.1
        libtasn1: 4.13_1
        nettle: 3.4.1_1
        libidn2: 2.2.0
        libunistring: 0.9.10_1
        libpaper: 1.1.24.4
        avahi-app: 0.7_2
        gnome_subr: 1.0
        libdaemon: 0.14_1
        gobject-introspection: 1.56.1,1
        dbus-glib: 0.110
        dbus: 1.12.12
        gdbm: 1.18.1_1
        wayland-protocols: 1.17
        librsvg2: 2.40.20
        libcroco: 0.6.12
        libgsf: 1.14.44
        colord: 1.3.5
        polkit: 0.114_2
        spidermonkey52: 52.9.0_3
        nspr: 4.21
        icu: 64.2,1
        sqlite3: 3.28.0
        desktop-file-utils: 0.23
        lcms2: 2.9
        argyllcms: 1.9.2_4
        libXScrnSaver: 1.2.3_2
        at-spi2-atk: 2.26.2
        at-spi2-core: 2.28.0
        libXtst: 1.2.3_2
        ruby: 2.5.5_2,1
        libyaml: 0.2.2
        ctags: 5.8
        cscope: 15.8b_1

Number of packages to be installed: 103

The process will require 517 MiB more space.
96 MiB to be downloaded.

Whoa, what?! Why do I need wayland and gtk for vim? ^C^C^C

$ sudo pkg install neovim
]Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 7 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        neovim: 0.3.8
        luajit: 2.0.5_3
        unibilium: 2.0.0
        msgpack: 3.2.0
        libvterm: git20161218
        libuv: 1.30.1
        libtermkey: 0.22

Number of packages to be installed: 7

The process will require 28 MiB more space.
5 MiB to be downloaded.

Much more palatable.