#security #assets #date #config-file #version #update #tool

bin+lib assetinfo

assetinfo is a tool to watch for versions of assets and their end-of-life date

10 releases (6 breaking)

0.12.0 Aug 6, 2024
0.11.0 Aug 4, 2024
0.10.1 Aug 2, 2024
0.9.0 Aug 1, 2024
0.6.2 Jul 29, 2024

#2479 in Command line utilities

AGPL-3.0-or-later

120KB
1K SLoC

assetinfo

About

assetinfo is a tool to watch for versions of assets and their end-of-life date.

Installation

You can install assetinfo using Cargo.

cargo install assetinfo

Usage

assetinfo requires a config file as well as a database of supported programs, which can be updated using assetinfo itself. The minimal required configuration states the path of the database and a URL from which updates can be fetched. It can be seen below. By default, assetinfo looks for the configuration file in the current working directory under the name assetinfo-config.toml.

[database]
path = "./db"
update_url= "https://db.assetinfo.de/latest.tar.zstd"

[!CAUTION] At the time of writing, there is no signing and validation process in place. The files do contain commands that will be executed which could delete or leak data or otherwise harm your system. Be sure to manually validate all program files after download.

In order to update your database, run assetinfo update. This will download an update your local database.

To list the programs in your database, run assetinfo list. You can find an example output below.

 Supported programs
-----------------------------+-------------------------------+--------+--------
 Program Name                | Program ID                    | Binary | Docker
 Ansible Community           | com.ansible.ansible-community | true   | false
 Ansible Core                | com.ansible.ansible-core      | true   | false
 Apache HTTP Server          | org.apache.httpd              | true   | false
 Debian                      | org.debian                    | true   | false
 Docker Engine               | com.docker                    | true   | false
 Firefox                     | org.mozilla.firefox           | true   | false
 Grocy                       | org.grocy                     | false  | true
 MariaDB                     | org.mariadb                   | true   | false
 Mattermost                  | com.mattermost                | true   | true
 PHP: Hypertext Preprocessor | net.php                       | true   | false
 PostgreSQL                  | org.postgresql                | true   | true
 Ubuntu                      | com.ubuntu                    | true   | false
 linux                       | org.kernel.linux              | true   | false
 nginx                       | org.nginx                     | true   | true
 python                      | org.python                    | true   | false
 systemd                     | org.freedesktop.systemd       | true   | false

To get information on one program, use assetinfo info <program>. Program can be either the name or the program ID.

assetinfo info org.python
python (Binary) found in Version 3.12.4
Version 3.12 will be supported for 1549 days (2028-10-31)
python (Binary) found in Version 3.12.4
Version 3.12 will be supported for 1549 days (2028-10-31)

To check for all supported programs, run assetinfo info-all.

Contributing

Right now, I sadly do not have the time to accept contributions. But I greatly appreciate feedback and hope this might change in the future.

Authors and Acknowledgment

This README is inspired by makeareadme.com.

License

The code of this project is licensed under the AGPL 3.0 or later. The documentation is licensed under CC-BY-SA 4.0. Some small configuration files (which probably do not reach the threshold of originality) are given a license with no conditions under CC0 1.0.

See LICENSES for more information.

Dependencies

~23–38MB
~613K SLoC