aptly - Debian repository management tool https://www.aptly.info/
 
 
 
 
Go to file
Andrey Smirnov 9cb2a302f8
Merge pull request #683 from smira/545-download-contxt
Use Go context to abort gracefully mirror updates
2017-12-01 00:27:26 +03:00
.github Add bash completion to PR template [ci skip] 2017-03-16 01:30:00 +03:00
_man Rework man generator with new `go install` format 2017-03-24 21:07:38 +03:00
api Merge pull request #682 from tirolerstefan/remove-buildinfo 2017-12-01 00:23:49 +03:00
aptly Merge pull request #683 from smira/545-download-contxt 2017-12-01 00:27:26 +03:00
bash_completion.d Order publish parameters in bash completion 2017-11-30 09:46:02 +01:00
cmd Merge pull request #683 from smira/545-download-contxt 2017-12-01 00:27:26 +03:00
console Print error messagge 'unable to open database' to stderr 2017-08-09 00:01:51 +03:00
context Refactor to embed `gocontext.Context` into aptly `context` 2017-11-30 23:44:04 +03:00
database Rework the way database is open/re-open in aptly 2017-07-05 00:17:48 +03:00
deb Merge pull request #683 from smira/545-download-contxt 2017-12-01 00:27:26 +03:00
files Adjust FileExists to differentiate between error and actual file existence 2017-11-30 09:46:02 +01:00
http Use Go context to abort gracefully mirror updates 2017-11-30 00:49:37 +03:00
man Update man page and bash completion 2017-11-30 09:46:02 +01:00
pgp Improve internal PGP provider 2017-07-28 00:53:50 +03:00
query Allow uppercase package name in package query expressions 2017-09-18 21:36:06 +03:00
s3 Adjust FileExists to differentiate between error and actual file existence 2017-11-30 09:46:02 +01:00
swift Adjust FileExists to differentiate between error and actual file existence 2017-11-30 09:46:02 +01:00
system Add acquire by hash when updating publish 2017-11-30 09:46:02 +01:00
systemd Switch to gometalinter 2017-03-23 01:51:08 +03:00
utils fix linting by using new maligned linter instead of aligncheck 2017-10-31 12:24:31 +01:00
vendor Update goleveldb vendored dependency (see #662) 2017-11-08 00:49:56 +03:00
.gitignore Add system's requirements.txt, enforce flake8 linter 2017-04-28 00:05:11 +03:00
.goxc.json Update `Depends:` for homegrown packages 2017-04-13 01:33:30 +03:00
.travis.yml Fix lint warning & add Go 1.9 to the mix 2017-09-15 22:54:39 +03:00
AUTHORS Merge branch 'master' into skipCleanup 2017-08-16 14:44:33 -07:00
CODE_OF_CONDUCT.md Add Contributor Covenant Code of Conduct [ci skip] 2016-12-29 00:01:17 +03:00
CONTRIBUTING.md Docs on contributing to aptly [ci skip] 2017-06-27 01:13:18 +03:00
Gopkg.lock Update goleveldb vendored dependency (see #662) 2017-11-08 00:49:56 +03:00
Gopkg.toml Upgrade gin-gonic to latest master, fix compatibility issues 2017-09-28 00:33:59 +03:00
LICENSE Update license to mention that there are many contributors. 2015-07-04 13:06:58 +03:00
Makefile Attempt to fix the tests 2017-07-28 22:37:20 +03:00
README.rst Drop support for Go 1.6, only Go 1.7+ is supported 2017-08-17 00:44:04 +03:00
linter.json fix linting by using new maligned linter instead of aligncheck 2017-10-31 12:24:31 +01:00
main.go Rework the way database is open/re-open in aptly 2017-07-05 00:17:48 +03:00
mem.gp gnuplot script. 2014-03-03 20:59:37 +04:00

README.rst

=====
aptly
=====

.. image:: https://api.travis-ci.org/smira/aptly.svg?branch=master
    :target: https://travis-ci.org/smira/aptly

.. image:: https://coveralls.io/repos/smira/aptly/badge.svg?branch=master
    :target: https://coveralls.io/r/smira/aptly?branch=master

.. image:: https://badges.gitter.im/Join Chat.svg
    :target: https://gitter.im/smira/aptly?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge

.. image:: http://goreportcard.com/badge/smira/aptly
    :target: http://goreportcard.com/report/smira/aptly

Aptly is a swiss army knife for Debian repository management.

.. image:: http://www.aptly.info/img/aptly_logo.png
    :target: http://www.aptly.info/

Documentation is available at `http://www.aptly.info/ <http://www.aptly.info/>`_. For support please use
mailing list `aptly-discuss <https://groups.google.com/forum/#!forum/aptly-discuss>`_.

Aptly features: ("+" means planned features)

* make mirrors of remote Debian/Ubuntu repositories, limiting by components/architectures
* take snapshots of mirrors at any point in time, fixing state of repository at some moment of time
* publish snapshot as Debian repository, ready to be consumed by apt
* controlled update of one or more packages in snapshot from upstream mirror, tracking dependencies
* merge two or more snapshots into one
* filter repository by search query, pulling dependencies when required
* publish self-made packages as Debian repositories
* REST API for remote access
* mirror repositories "as-is" (without resigning with user's key) (+)
* support for yum repositories (+)

Current limitations:

* translations are not supported yet

Download
--------

To install aptly on Debian/Ubuntu, add new repository to ``/etc/apt/sources.list``::

    deb http://repo.aptly.info/ squeeze main

And import key that is used to sign the release::

    $ apt-key adv --keyserver keys.gnupg.net --recv-keys 9E3E53F19C7DE460

After that you can install aptly as any other software package::

    $ apt-get update
    $ apt-get install aptly

Don't worry about squeeze part in repo name: aptly package should work on Debian squeeze+,
Ubuntu 10.0+. Package contains aptly binary, man page and bash completion.

If you would like to use nightly builds (unstable), please use following repository::

    deb http://repo.aptly.info/ nightly main

Binary executables (depends almost only on libc) are available for download from `Bintray <http://dl.bintray.com/smira/aptly/>`_.

If you have Go environment set up, you can build aptly from source by running (go 1.7+ required)::

    mkdir -p $GOPATH/src/github.com/smira/aptly
    git clone https://github.com/smira/aptly $GOPATH/src/github.com/smira/aptly
    cd $GOPATH/src/github.com/smira/aptly
    make install

Binary would be installed to ```$GOPATH/bin/aptly``.

Contributing
------------

Please follow detailed documentation in `CONTRIBUTING.md <CONTRIBUTING.md>`_.

Integrations
------------

Vagrant:

-   `Vagrant configuration <https://github.com/sepulworld/aptly-vagrant>`_ by
    Zane Williamson, allowing to bring two virtual servers, one with aptly installed
    and another one set up to install packages from repository published by aptly

Docker:

-    `Docker container <https://github.com/mikepurvis/aptly-docker>`_ with aptly inside by Mike Purvis
-    `Docker container <https://github.com/bryanhong/docker-aptly>`_ with aptly and nginx by Bryan Hong

With configuration management systems:

-   `Chef cookbook <https://github.com/hw-cookbooks/aptly>`_ by Aaron Baer
    (Heavy Water Operations, LLC)
-   `Puppet module <https://github.com/alphagov/puppet-aptly>`_ by
    Government Digital Services
-   `Puppet module <https://github.com/tubemogul/puppet-aptly>`_ by
    TubeMogul
-   `SaltStack Formula <https://github.com/saltstack-formulas/aptly-formula>`_ by
    Forrest Alvarez and Brian Jackson
-   `Ansible role <https://github.com/aioue/ansible-role-aptly>`_ by Tom Paine

CLI for aptly API:

-   `Ruby aptly CLI/library <https://github.com/sepulworld/aptly_cli>`_ by Zane Williamson
-   `Python aptly CLI (good for CI) <https://github.com/TimSusa/aptly_api_cli>`_ by Tim Susa

Scala sbt:

-   `sbt aptly plugin <https://github.com/amalakar/sbt-aptly>`_ by Arup Malakar