How do I use apt-now

Bear with me while I write the manuals, but it shouldn’t take long, because as you’re about to see, it’s really simple. First, you need to get a copy of the system. You can do this by forking the apt-now repository and cloning it.

    git clone https://github.com/$YOUR_FORK/apt-git

BUT you’ll still have the apt-now repository’s public key in your copy if you do it this way. No biggie, though just delete cmotc.github.io.gpg.key from your copy and apt-now will automatically generate a new key for you next time you use it. apt-now also host’s itself the site at https://cmotc.github.io/apt-now/ is a live copy of the repository hosting apt-now and pkpage(A script which generates pages for each of the packages hosted in your apt-now instance) and so is every fork of that repository and the clone on your computer. So if you create a file like /etc/apt/sources.list.d/apt-now.list with the contents

    deb https://cmotc.github.io/apt-git/debian rolling main

and tell your Package Manager to trust my key by running this command

    wget -qO - https://cmotc.github.io/apt-git/cmotc.github.io.gpg.key | sudo apt-key add -

then you’ll be able to run the following commands

    sudo apt-get install apt-transport-https
    sudo apt-get update
    sudo apt-get install apt-now pkpage

and have a copy of apt-now installed on your system, managed by your package manager, from a repository created by apt-now! Which is kinda cool. Now unfortunately it’s not totally zero-configuration yet. I’m working on it, some things need to be a little bit better organized first to generate the configuration file for you. But apt-now is intended to be pretty flexible to configure, and you can do it by passing parameters to the program, or setting environment variables, or by creating a configuration file which loads those environment variables called aptgit.conf.

Environment Variables

The basis for all the configuration is a group of environment variables which are read by the program. You can set them in your shell, via a config file, or as parameters.

aptgit.conf is just a shell script

These environment variables can also be set in a configuration file at the base of your repository called aptgit.conf. This is an example aptgit.conf file for the default apt-now repository.

    #! /bin/sh
    #CURDIR=""
    ORIGIN="cmotc.github.io"
    REPONAME="apt-now"
    REPODESC="Repository for apt-now, a system for setting up apt
    repositories on static hosts."
    CODENAME="rolling"
    REPOARCH="amd64 i386 armhf"
    POLICY="main"
    KEY="554DB437"
    OVERRIDE="override.testing"
    START_HTTPD=YES
    LOCAL_ONLY_HTTPD=YES
    USE_TOR=YES
    USE_I2P=YES