Ehhhhhhhhhhhh, really want to stick with using native package managers (brew, apt). Did you just add htop to the apt exclude?
I keep a ~/local directory with built-from-source programs in it. That way I don't get any conflicts with system-wide package managers.
Configure line for ncurses:
./configure --enable-pc-files --with-pkg-config-libdir=$HOME/local/lib/pkgconfig --with-shared --prefix=$HOME/local
make -j8 && make install
And for htop, a regular configure worked fine: ./configure --prefix=$HOME/local
make -j8 && make install
A quick check in my .bashrc (actually .zshrc) prepends $HOME/local/bin to my $PATH if it exists.I've got it on my list to fully fix it up and submit a PR, but feel free to flesh out my changes and submit instead :D