1. Summary
  2. Files
  3. Support
  4. Report Spam
  5. Create account
  6. Log in
Version 3 (modified by nhruby, 5 years ago)

nrh: first pass

Release Files for Download (FRS)

To download files, please refer to the documentation on how to Find software to download

The File Release System (FRS) provides an interface for projects to release files for download by their end-users. Files released using this mechanism are distributed among our network of download servers, or mirrors, to ensure file availability and provide a download location close to the user downloading the files. This feature allows developers to concentrate their efforts on code development and not concern themselves with the administrative overhead in maintaining a globally distributed network of download mirrors.

Terminology

Package
A package is the highest level item in the FRS hierarchy. It contains one or more releases. It is typically used to group together releases that are related to one another. For example, the sample project could have two packages, one for the sample program, and another for the associated library libsample.
Release
A release is the middle level item in the FRS hierarchy. It contains one or more files that are related. For example, a release may have a source code archive, several builds of the sample program at version 0.9 for different architectures and operating systems, a documentation file, and a file containing sha1 or md5 sums for the released files.
File
A file is the lowest level item in the FRS hierarchy. It is a literal file. For example, a file containing the compiled version 0.9 sample program for BarOS on the i386 architecture would be sample-binary-baros-0.9.i386.tgz. A file can be an archive of multiple files.

File Naming Limitations

The FRS has a few restrictions on file names to ensure cross-platform function and safety:

  • Filenames can contain only the letters a-z and A-Z, numbers 0-9, period '.', hyphen '-', underscore '_' and plus '+' characters.
  • The first character in a filename must be a letter or a number

Making a File Release

There are no quotas in the File Release System, we do ask that you limit yourself to reasonable size constraints when making file releases. Files released via the FRS will exist for perpetuity, they are not end-user removable.

File releases should minimally include the following:

  • Source code (this is not optional, it must be included if a binary release is made)
  • License terms
  • A README file or other similar instructions

Additionally, we suggest that you create a file containing md5 sums, sha1 sums, or GPG signatures for all files in a release and adding the file to the release as well. This allows users to verify that the file they have (regardless if where they may have obtained it) is the file that you uploaded for distribution.

Overview

The following is a list of the general steps needed to create a file release. If you've created a file release before, you can likely reuse the existing packages created and skip to the second step.

  1. Create a package, if one doesn't exist yet for this purpose. A default package with the name of the project is created at project approval.
  2. Upload the files to be released.
  3. Create the release to associate the uploaded files with one another.
  4. Create or modify the default download page denoting what most users will need to download to use your software.
  5. Download the file and verify that it is correct, for both security and to verify that the upload successfully completed.

Create a package

A package contains a set of releases. Most projects will only require one package. Packages are typically used to denote sub-projects hosted on one SourceForge.net project. For example, the foo project has 3 separate foo clients, Winfoo, Macfoo and Snafoo. Each foo client is independent of the other, but they have elected to host them all under one project. To separate them in the file list from one another, and to denote that they aren't related, the foo project has elected to create separate packages for each of the different foo clients.

To create a package:

  1. Login to the SourceForge.net website.
  2. Select the project to administer from the 'My Projects' listing on the My Page.
  3. Select 'File Releases' from the Admin pulldown.
  4. Type in the new package name into the 'New Package Name:' field.
  5. Click the 'Create This Package' button. NOTE: Once a package is created, it cannot be deleted. You will have to hide it until you need a new package later, at which time you can unhide and rename it.

Upload a file

The FRS allows for 4 different upload mechanisms: Web Upload, WebDAV, rsync over SSH, sftp.

Files are uploaded to the uploads subdirectory of your home directory on the FRS upload host, frs.sourceforge.net. These files will then display to you when creating a file release via the site web interface. The directory is no longer shared with all other SourceForge.net users, thus increasing the security of the upload process and allowing you to upload, delete, and change the files that you have uploaded prior to generating a release. Files uploaded to this interface are deleted when they are 7 to 14 days old and haven't been associated with a release yet.

Please see the File management service page for detailed documentation on how to upload a file.

Create or edit a release

Releases belong to a package. Generally, a release will contain all the files relating to a software version. As an example, the project lame wants to release version 1.0.0 of lame, they create a new release under the package lame named 1.0.0. There are 2 different versions of lame 1.0.0, one for Windows and another for Linux. Both files uploaded are associated with the same release as they have the same features and are the same version.

It may take an hour or so before the files released are available on all mirrors. To ensure the file gets distributed, make sure the file is not hidden during the release process or afterwards.

To create a release:

  1. Login to the SourceForge.net website.
  2. Select the project to administer from the 'My Projects' listing on the My Page.
  3. Select 'File Releases' from the Admin pulldown.
  4. Click on the '[Add Release]' link next to the Package Name associated with the release.
  5. Enter the release name for the release into the 'New release name:' field and click the 'Create This Release' button.
  6. Type in or paste Change Log and Release notes for the release, if desired. They must be in plain text format.
  7. Check the checkbox next to the filename of each file to be added to the release in section 2 of the form, and click on the 'Add Files and/or Refresh View' button
  8. Go to Step 3 of the form, modifying the value in each field for each file, as necessary. Click on the 'Update/Refresh' button after each change to a file.
  9. If you want to send out a notice of the new file release, go to Step 4 in the form, check the 'I'm sure' checkbox and click the 'Send Notice' button.

Configure download page

The download page is a landing page for users who click on the green Download button on the project summary page. It has the ability to autodetect end-user platform details and help direct the user to the proper files for their platform (Windows, Linux and Mac OS are auto-detected and directed to the proper page, other OS users can manually select an alternate landing page if created). While this is not required to make a file release, we recommend that this be updated with each release to make the download process easier for your users.

To update the download page:

  1. Login to the SourceForge.net website.
  2. Select the project to administer from the 'My Projects' listing on the My Page.
  3. Select 'File Releases' from the Admin pulldown.
  4. Click the 'Create / Edit Download Page' link.
  5. Select the platform page to edit from the pulldown menu.
  6. Click on the 'Add a primary file download' link.
  7. Select the primary file for the release and platform selected from the list provided, fill in the 'Displayed File Title' field and click the 'Submit' button.
  1. If there are other files that are required or optional and related to the primary file for the platform, select them using the 'Add a file ...' link.
  2. Fill in the 'Download Instructions' box with any information your users may want regarding how to download and install the software.
  3. Click the 'Preview' button to preview the download page created.
  4. Click the 'Save' button to save the download page, when it meets your needs.
  5. Repeat these steps for each platform supported by your project.

EXPANDME PLEASEREVIEWME