# guide for dev desktop based on Linux Mint

sudo apt install perlbrew libx11-dev libpng-dev xterm vim-nox
sudo update-alternatives --config editor
perlbrew init

echo "source ~/perl5/perlbrew/etc/bashrc" >> ~/.bashrc
exec bash -i

perlbrew available
perlbrew install perl-5.30.3
tail -f ~/perl5/perlbrew/build.perl-5.30.3.log

perlbrew switch perl-5.30.3

perlbrew install-cpanm

# install prereqs
cpanm Module::Build Tk Exception::Class Try::Tiny X11::Protocol X11::Protocol::Other Test::Trap File::Which Readonly Test::Differences Test::Pod::Coverage

# author prereqs
cpanm Test::Pod Test::CPAN::Changes Perl::Tidy Pod::Coverage::TrustPod Test::Perl::Critic Test::Pod::Coverage Test::Pod Test::Trap

ln -s `pwd`/t/perltidyrc ~/.perltidyrc

./Build manifest
./Build
./Build test
./Build disttest

export COVERAGE=1
export RELEASE_TESTING=1
export AUTHOR_TESTING=1

perlbrew install perl-5.38.2
perlbrew clone-modules perl-5.38.2

perlbrew switch perl-5.38.2
# perform tests again

perlbrew install perl-5.40.0
perlbrew clone-modules perl-5.38.2
# perform tests again

# for individual test
prove -I lib t/pod-coverage.t 

# release prep
correct date and version in Changes; make sure everything is logged
correct version in lib/App/ClusterSSH.pm
AUTHOR_TESTING=1 COVERAGE=1 ./Build test
