12

On Ubuntu 14.04 LTS (Trusty Tahr), tidy is very old:

$ tidy --version
HTML Tidy for Linux released on 25 March 2009
$

What's the easiest way to get tidy-html5 installed?

Have I somehow overlooked the package for it?

serv-inc
  • 3,159
  • 1
  • 26
  • 32
Tom Hale
  • 3,728

4 Answers4

12

You can install the latest html-tidy from source using the instruction given on its github page.

But the easiest way to install the latest version of html-tidy5 would be downloading the latest binary from this page http://binaries.html-tidy.org/

If you're using 64bit Ubuntu, you'd do basically these commands

wget https://github.com/htacg/tidy-html5/releases/download/5.4.0/tidy-5.4.0-64bit.deb
sudo dpkg -i tidy-5.4.0-64bit.deb

It should be installed fine.

Anwar
  • 77,855
2

1. Summary

Compile HTML Tidy from sources as described in the Tidy official documentation.

Commands for the compilation of the latest Tidy CLI version for macOS/Linux/Unix:

$ sudo apt-get install xsltproc

$ git clone https://github.com/htacg/tidy-html5.git

$ cd tidy-html5

$ cd build/cmake

$ cmake ../.. -DCMAKE_BUILD_TYPE=Release

$ make

$ sudo make install


2. Relevance

This answer is relevant for March 17, 2025. In the future, the data of this answer may be obsolete.


3. Demonstration

The build on the Travis CI environment.


4. Build customization

If you need custom HTML Tidy things, you can need another options. Some citations of HTML Tidy contributor:

If you are just going to use the console app tidy, which by default is linked with the static library libtidys.a, then not building and installing the shared library, libtidy.so, that is -DBUILD_SHARED_LIB:BOOL=OFF, is fine, but this is unusual in unix/linux…

There are even some in the unix/linux community that prefer to build the console app tidy linking only with the shared library. See the cmake -DTIDY_CONSOLE_SHARED:BOOL=ON option, and see issue #326…

And that also means to try to be consistent with the install location, like using -DCMAKE_INSTALL_PREFIX[:PATH]=/usr, but as stated in most cases the cmake default is also fine… and usually does not represent a problem…

2

From source

Follow the instructions at the GitHub page. For the prerequisites, I needed to:

sudo apt-get install -y cmake xsltproc

Package install

Here's what I did to move from the current apt-get install tidy to the latest version.

  1. Find the URL of the latest version to download at: http://binaries.html-tidy.org.

    Try the linux 64-bit DEB first if you're not sure which to pick.

  2. Download it:

    wget <LATEST URL>
    
  3. Remove unneeded tidy-lib package. tidy-lib is included in the .deb you just downloaded.

    sudo apt-get -y autoremove tidy
    
  4. Install the .deb you just downloaded:

    sudo dpkg -i tidy-5.2.0-64bit.deb
    
  5. Clean up:

    rm tidy-*.deb
    

Thanks to @Anwar for pointing me in this direction.

Troubleshooting

I needed to do hash -d tidy to get bash to run the new version from /usr/local after I installed from source. You also may need to do this if you chose to keep the previous package of tidy.

Tom Hale
  • 3,728
2
  1. On the latest Ubuntus (Zesty, 17.04, and Artful, 17.10), it is updated to version 5.2.

  2. There is a backports ppa for Trusty (14.04) and Xenial (16.04): ppa:jonathonf/backports

  3. You could also use the nodejs package html-validator-cli as a workaround

    sudo -H npm install -g html-validator-cli
    html-validator --filename=path/to/file
    

    but it needs an internet connection.

serv-inc
  • 3,159
  • 1
  • 26
  • 32