The "Fossies" Software Archive
... Fresh Open Source Software mainly for Internet, Engineering and Science ...

Special features of the "Fossies" software archive

The "Fossies" software archive not only allows the "pure" download of software packages but also provides, among many other features, the ability to browse and search within the individual member files of the software packages in order to study for e.g. the READMEs and other documentation or to download selected individual files (e.g. images or libraries). This may avoid unnecessary file transfers and installation effort and may let you detect some otherwise undetected open source software treasures (that we name "fossies").

You may click "simply" on the download icon in front of a package (archive) name in order to transfer that package but the "Fossies" software archive offers the following additional special features to you:

And last but not least: The term "Fresh" (original derived from "FREeware SHareware") is at the same time one of our missions so we have developed different control techniques to archive and support always the freshest releases.

INDEX Viewing archive contents (index) plus browsing archive member files

View the contents of an archive

As an special feature of the Fossies service you may click on an archive name in order to view the contents of that archive within a special page. That page gives you also the possibility to see all archive member files in different sort orders, via a menu line for e.g. like that:

   docs related | original | size (top100) | date | path | name | ext | top-path files

In the standard "docs related" view Fossies tries to assist users to get relevant package information quickly by sorting the member files into the following three categories:

   Basic infos (README, FAQ, INSTALL, ChangeLog, ...)
   Basic docs (manual pages, PDF-,HTML-,/doc/-files, ...)
   All other files (if too numereous at least 50)

The file extension sorted list (index_ax.html) offers at top an extra information line with all found extensions, like for e.g.:

   Found file extensions: 1 bat cfg dot el in jpeg py rc rst txt

If the mouse is over an extension a tooltip with a short explanation of the extension type is shown (using Fossies own file extension description file). Clicking on such an extension lets you jump to the first member file with that extension.

Browsing selected archive member files

As an additional - originally (Dec. 1994) probably world-wide unique - feature of the Fossies server you may click within the displayed archive index on any member name in order to browse or download that selected member.

Automatic mode (default):

The server tries to send an appropriate "Content-type" header field ("mime-type") according to the member's file extension (default: text/html). For example clicking on a GIF file (embedded in an archive file) lets see you the image via your browser or an external viewer without downloading the complete, possibly large archive file.

As a further newer special service some documentation-related files are presented more "user-friendly" respectively "readable" by trying a local pre-formatting (only in standard "automatic"-mode):

Also pure HTML files are forced to be formatted respectively displayed in rendered format. But some HTML code for e.g. with forms or using PHP or Perl code are forced to be displayed as unformatted but syntax-highlighted source code.

Additionally most programming language, markup language and configuration files are shown with line numbering and syntax highlighting.

All line numbers are anchored and directly addressable by adding "#l_<LINENO>" at the end of a member file URL. So for accessing for e.g. line 174 of the README file in the subdirectory foobar-x.y of package foobar-x.y.tar.gz you may just use

  https://fossies.org/linux/misc/foobar-x.y.tar.gz/foobar-x.y/README#l_174

As a new feature (Feb. 2016) Fossies source code highlighting now offers optional "code folding" for member files written in curly-bracket languages like C, C#, Go, JavaScript, Java, Lua, Perl, PHP, Ruby and others (JavaScript must be enabled). To selectively "fold" (hide and display) blocks respectively sections of source code you may click on the marked lines that begin a block. Foldable (expanded) blocks are marked by a preceeding "" character, folded (hidden respectively collapsed) blocks by a preceeding "" character and a red marked line number and the folded block itself by a as placeholder. Alternatively you can use the toggle buttons of the grey transparent box appearing at the bottom right to fold and unfold globally all blocks of different folding levels. See here a simple example:

   Screenshot 1: Code unfolded   Screenshot 2: Code with a folded level 3 block (containing 37 lines)
      

That feature may allow you to get a better overview of the overall structure of the browsed program code (as seen in your favourite source code editor).

Text (raw) mode:

In order to view the "raw" source code file you may force a "t(ext)"-mode transfer ("Content-type: text/plain") by adding the parameter "m=t" to the requested member URL, for e.g.
  https://fossies.org/linux/misc/foobar-x.y.tar.gz/foobar-x.y/README.md?m=t
Remark: For non-text "binary" files (like for e.g. images, videos or executables) the "text mode" is principally meaningless so Fossies tries instead to give out some hopefully interesting meta informations about the requested member file!

Binary (download) mode:

In order to force a binary transfer ("Content-type: application/octet-stream") for e.g. to save the file you may click on the member's "file size" field instead of the member's "file name". Or you can use the "b(inary)"-mode directly (adding the parameter "m=b") by calling for e.g.
  https://fossies.org/linux/misc/foobar-x.y.tar.gz/foobar-x.y/README.md?m=b
Remark: This feature uses sometimes on-the-fly expansion so displaying the requested member may take some seconds according to the archive size. But repeated requests are answered immediately.

Media type (download) mode:

If you prefer for some reasons to download a file with the appropriate media (MIME) type you can add the parameter "m=m"
  https://fossies.org/linux/misc/foobar-x.y.tar.gz/foobar-x.y/README.md?m=m
Caution: This may force your browser to call an assigned application.

Different archive download formats

In that page you can see all the member files of an archive in different listing orders, and browse/download that members. That page allows also the archive download in different archive formats respectively newer not yet common but more effective compression types: So you can choose an compression format suited for your environment.

If you move the mouse over the filename of such an alternative compressed archive its size in bytes is shown and also the percentual size decrease compared to the "standard" format (tar.gz or zip).

To download an archive in a different supported format you may change in a Fossies standard download URL simply the archive file extension, so instead of

 https://fossies.org/linux/misc/foobar-x.y.tar.gz
you may use
 https://fossies.org/linux/misc/foobar-x.y.tar.xz
for e.g. to force a faster download by a higher compression.

CLOC ("Count Lines of Code") analysis

As a further special feature you can view a so-called CLOC ("Count Lines of Code") statistics that counts physical lines of source code in many programming languages and in addition comments and blank lines, so you can get quickly an overview about the scale of the project and the used program languages.

Hint (July 2014): Files that are contained within the project packages but are probably generated by "autotools" programs are now excluded since they "distort" in some respects the CLOC analysis.

Doxygen generated source code documentation

As an advanced feature - especially useful for developers - Fossies offers Doxygen generated source code documentation for most archives respectively software packages (cross referencing documentation and code). Although Doxygen isn't package specific customized here we hope that it would be nevertheless helpful for understanding code structures and detecting dependencies - especially for large projects. And it may encourage authors or package maintainers to create her own specific and thereby probably improved Doxygen documentation.

Doxygen generates amongst others a class browser and tries to extract the code-structure also from undocumented source files. This includes dependency graphs (see an example here), class diagrams and hyperlinked syntax-highlighted source code (latter as an alternative to the orign Fossies offered source code browsing using the program "highlight").

Doxygen documentation is extracted directly from the sources, which makes it much easier to keep the documentation consistent with the source code.

The Fossies generated Doxygen documentation can be accessed via the respective package contents pages or more directly via URLs like

  https://fossies.org/dox/...
For more information see the Fossies Dox page.

Pkgdiff generated source code and documentation changes

With the beginning of the year 2015 the "Fossies" software archive offers a further new service for most of the provided open source software packages on Fossies: "pkgdiff"-generated reports of source code changes between the current and the preceeding version.

This extension may be of particular interest to software authors and developers but also to package maintainers and installers. The service appears to be especially useful for software projects that are not hosted on big code managment or repository systems with similar or even more powerful services.

The Fossies generated so-called "diffs"-reports can be accessed via the respective package contents pages or more directly via URLs like

  https://fossies.org/diffs/...
For more information see the Fossies Diffs page.

UNCOMPRESS Browsing compressed text files

You may click on the icons placed in front of compressed text files of the following type to browse that files forcing on-the-fly expansion.

FILE On-the-fly compression of files before transfer

You may click on one of the optional
  (Z/gz/zip)
strings after the file description of uncompressed files in order to transfer it as a
  Z   = "Unix-compressed" 
  gz  = "GNU-zipped"
  zip = "(PK-)zipped"
file in order to save network bandwith.

*** NEW ***Marking of new archive files

Files that are recently inserted in the software archive are marked by two small icons:

*** NEW *** file is not older than 7 days
*new* file is not older than 31 days

[new...] button Archive-insertion-time sorted index

Standardally the archive index is sorted by the archive-insertion-time (not the modified time) in order to get in a clearly arranged matter information about recently archived software.

[abc...] button Alternate alphabetically sorted index

Beside the "standard" archive-insertion-time sorted archive index you may select an alternate alphabetically sorted index.

[search] button Advanced search facility

In order to find a given software package or file you may search recursively starting at the current archive directory. The optional use of different approximative search modes and the optional inclusion of file description texts into the search space may let you find a match even if you don't remember a filename exactly (e.g. "mosaik" instead of "Mosaic") or if you search for a more generic term (e.g. "ftp").

You may specify the

and limit the search for archive members with an archive insertion time not older than a given range.

Searching in the archive internal documentation files outputs not only the found documentation files but also a user specified number of matching lines. Browsing a found documentation file displays at the top of the document the first 10 matching lines with anchors into the file and tries to mark the matches as bolded strings.

The total number of displayed matches may be limited. Consecutive requests for the display of suppressed matches - with optionally different limits - are supported.

Attention: The search-syntax is currently NOT "google"-like, here are some simple examples:

foo bar
would search for a line containg the exact string "foo bar"
foo.*bar
would search for a line containing first "foo" and than "bar" (regular expression)
foo and bar
would search for a line containing "foo" and "bar"
foo or bar
would search for a line containing "foo" or "bar"
Additionally the character ^ matches the starting position, the character $ the ending position. So
^bar
would search for a line starting with "bar" but wouldn't match a line starting for e.g. with "foobar"

The search string must contain at least four "relevant" characters if searching within the archives internal doc files, three if searching within the archive short descriptions and two if searching for filenames.

Short URLs

To make the finding and download of packages more comfortable and easier Fossies supports also short URLs that are independent of the package version and Fossies folder path. They have just the simple form
  https://fossies.org/<package>/
For e.g. the URL
  https://fossies.org/foobar/
may redirect you automatically to
  https://fossies.org/linux/misc/foobar-x.y.tar.gz/
If the redirect isn't unique Fossies will show you all matches (including the according Fossies folder pathes) and you can choose yourself the appropriate link!

The string "<package>" in the short URL may be for e.g. a name like "atool" or "glpk" (with probably unique matches so direct redirects) or "gcc" or "ImageMagick" (with probably multiple matches so redirects to a selection page).

Similar package version independent short URLs exist for the Doxygen-generated source code documentation:

  https://fossies.org/dox/<package>/

Archive file descriptions

All packages contain besides a link to the original home page (if known and available) additionally a brief description to make it easier for the user to evaluate the type and intended use of a given archive file respectively software package. In a second step the user can take advantage of the special Fossies browsing features and study abailable READMEs, FAQ or other appropriate internal documentation like the manual pages.

Legacy folders

Every main Linux folder has a sub-folder named "legacy". That folders aren't intended for normal usage but are just a collection of previous (legacy) releases that were in the past available in the according parent main folder but are now replaced on Fossies by newer production releases. The packages in the legacy folders are offered without any freshness maintenance only as a kind of long-term availability support service for some Fossies referencing external sites. An internal mapping system ensures that the "legacy" packages remain accessible via its old (original) URLs to avoid stale links on external sites. Normally "legacy" packages are kept 3 months but noteworthy accessed ones even til 6 months.

RSS feeds support

To be always promptly informed about the newest software packages on Fossies you may subscribe to one of the different Fossies RSS feeds.

HTTPS (HTTP) support

Since September 2012 Fossies is also accessible and since October 20, 2016 only accessible via the HTTPS protocol to add the security capabilities of SSL/TLS to standard HTTP communications. For a limited period the Fossies ressources are still available via HTTP by using the server name fresh-center.net:

    http://fresh-center.net/


The above descripted features are enabled by software written by Jens Schleusener mainly in his spare time - while employed at the Central Division Data Processing of the German Aerospace Center (DLR) which division is now incorporated in the T-Systems Solutions for Research GmbH (SfR). That software consists mainly of two core components:

Furthermore the Fossies software archive itself benefits awfully from many great open source software products. Especially to be mentioned:

Use of the Fossies software archive is entirely at your own risk - no warranty is expressed or implied.

You are encouraged to send your comments and suggestions concerning the Fossies software archive ... or look for some annotations from other users!


Home  |  About  |  All  |  Newest  |  Fossies Dox  |  Fossies Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)