<commit_before><head>
<title>
apt-now instant package repositories
</title>
<p><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></p>
<p><link rel="stylesheet" type="text/css" href="style.css" /></p>
</head>
<div id="header">
<h2 id="apt-now">apt-now</h2>
<p>A tool for setting up and hosting an apt repository using arbitrary http/s hosts to make files accessible with extra features for git-enabled hosting sites.</p>
<p><a href="http://area51.stackexchange.com/proposals/99297/i2p?referrer=xh8rCeF30swuqv_zBnPYPw2">Support the i2p Stack Exchange Proposal</a></p>
<h2 id="usage">usage</h2>
<p>For usage help, <a href="usage.html">go here</a>.</p>
</div>
<div id="content">
<h2 id="details">Details</h2>
<p>This tool, currently called apt-now but soon to be changed to repo-now, is essentially a static site generator geared toward generating and formatting a specific type of content in a specific type of way, the content being GNU/Linux or Android/Linux binary packages, and the format being a signed repository accessible from the web or something like it(It can also, for instance, be used to statically host software repositories over i2p with no substantial modification.) It does this by taking advantage of the structural regularity of these types of resources and constructs the whole site on the client side, transmitting content to the server only after a valid repository has been built. This means that the server doesn't have to run any code at all to present the site to the end-user taking advantage of the resource over the web, doesn't need to support ssh or remote desktop, and doesn't even technically need to support ftp or git, as long as a way of transferring the repository to the remote storage service can be included in the program.</p>
<h2 id="use-cases">Use Cases</h2>
<ul>
<li>Personal Use: Independent, hobbyist, and self-employed developers can use this program to host their own packages in a way which allows them to use their package management interface, encourages them to learn more about their choices of software and GNU/Linux distributions, and which provides an easy way for them to back up their configuration.</li>
<li>Educational Use: Educational and corporate training programs which work with Open-Source projects can use this program to host code repositories for employees during training, and in turn their trainers and supervisors can follow versioned updates and use them to build redistributable packages of viable projects.</li>
<li>Activist Use: Activists who deliver things like privacy and security related packages that might find their main repositories censored in some regions can use this tool to maintain mirrors on sites which will prove much more difficult to keep people from accessing, like &quot;burner&quot; accounts on free file hosting sites, distributed file systems, and fire-and-forget hidden services.</li>
<li>Small Groups: Small groups of hobbyists and hackers can collaborate on projects and take advantage of the instant clonability of github repositories to create instant mirrors of their group's packages, sharing, testing, and growing their projects potential userbase and lowering barriers to entry for their ideas.</li>
<li>Small Businesses: Small businesses can save costs on hosting their in-house process software and encourage a culture of peer review by hosting both their source repositories and tiny package repositories on github, bitbucket, or similar versioned web hosting services.</li>
<li>Large Businesses: Larger businesses which allow their employees to use &quot;20% time&quot; or similar programs to develop projects can use this in conjunction with tools like dh_make or fpm to roll out an instant package repository when a program is ready for testing with a wider audience.</li>
</ul>
<p>If you're one of these people and you have a bitcoin or two lying around, you could send them my way and support development.</p>
<ul>
<li><strong>1HfTfgVVcvSe33TVrbRYKLawMQ21hXDABd</strong></li>
</ul>
<h2 id="versioning-and-features">Versioning and Features</h2>
<p>Right now, binary repository generation for Debian(APT Repositories) is stable and source repository generation for Debian/Apt is nearing stability and are in usuable form. While these are the only working types of repositories, the pre-hyphenate part of this project's name will be &quot;apt.&quot; Additionally, while an end user could use any means to transfer the repository constructed by the apt-now tool, there is currently only support for the use of github-pages as a hosting medium in the code. While this remains the case the post-hyphenate part of this project's name will be &quot;git.&quot; When experimental support for F-Droid and Redhat(Yellowdog Updater) are complete, additional ways of transferring the files will be considered and added, and the final version will implement APT, YUM, and F-Droid repositories in an easy to configure, polyglot(But probably not agnostic) way.</p>
<p>You should be aware that if you use this, your .git directory will be visible to all users of the repository, allowing them to completely copy the repository and it's entire history. It assumes that is what you want. If you don't, you must remove the .git directory manually. In the future, a command-line option will be provided.</p>
<h3 id="repository-types">Repository Types</h3>
<ul>
<li>Debian/APT
<ul>
<li>Binary Repository(Complete, Stable, Generates Web Pages from package info)</li>
<li>Source Repository(Pretty much complete and stable. Doesn't generate pages yet.)</li>
<li>Notes: Depends on normal debian tools, including reprepro</li>
</ul></li>
<li>Android/F-Droid
<ul>
<li>Binary Repository(Experimental, Unstable, broken, see fdroid-git. The documentation for fdroidserver sometimes implies that the system requires some small amount of server-side code.)</li>
<li>Source Repository(Research phases)</li>
<li>Notes: Android implies somewhat different separation of logic from GNU/Linux</li>
</ul></li>
<li>Redhat/YUM
<ul>
<li>Binary Repository(Experimental, Still researching, but from the looks of things it's really straightforward. I do not know how to build RPM packages though, so we'll be working with Fedora's rpm's.)</li>
<li>Source Repository(Experimental, Still researching, but the YUM paradigm seems to be astoundingly simple.)</li>
<li>Notes: None yet. But I'm sure there's something.</li>
</ul></li>
</ul>
<h3 id="transport-types">Transport Types</h3>
<ul>
<li>Version-Controlled
<ul>
<li>git(Complete as a way up updating the server, but can't be used to retrieve inpidual software packages or update software. Cloning is pretty much like making an instant mirror, which is cool.) Will be considered complete when a repository can be initialized and cloned from in the apt-now directory in the absence of a configured web-based git account.</li>
<li>hg(Not started, but straightforward. Pretty much the same as the git code with very little alteration, just some transliterating of commands with identical benefits.) Will be considered complete when fulfilling the same requirements as git.</li><commit_msg>changed bitcoin address. the blockchain is big, my ssd is small.<commit_after><head>
<title>
apt-now instant package repositories
</title>
<p><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></p>
<p><link rel="stylesheet" type="text/css" href="style.css" /></p>
</head>
<div id="header">
<h2 id="apt-now">apt-now</h2>
<p>A tool for setting up and hosting an apt repository using arbitrary http/s hosts to make files accessible with extra features for git-enabled hosting sites.</p>
<p><a href="http://area51.stackexchange.com/proposals/99297/i2p?referrer=xh8rCeF30swuqv_zBnPYPw2">Support the i2p Stack Exchange Proposal</a></p>
<h2 id="usage">usage</h2>
<p>For usage help, <a href="usage.html">go here</a>.</p>
</div>
<div id="content">
<h2 id="details">Details</h2>
<p>This tool, currently called apt-now but soon to be changed to repo-now, is essentially a static site generator geared toward generating and formatting a specific type of content in a specific type of way, the content being GNU/Linux or Android/Linux binary packages, and the format being a signed repository accessible from the web or something like it(It can also, for instance, be used to statically host software repositories over i2p with no substantial modification.) It does this by taking advantage of the structural regularity of these types of resources and constructs the whole site on the client side, transmitting content to the server only after a valid repository has been built. This means that the server doesn't have to run any code at all to present the site to the end-user taking advantage of the resource over the web, doesn't need to support ssh or remote desktop, and doesn't even technically need to support ftp or git, as long as a way of transferring the repository to the remote storage service can be included in the program.</p>
<h2 id="use-cases">Use Cases</h2>
<ul>
<li>Personal Use: Independent, hobbyist, and self-employed developers can use this program to host their own packages in a way which allows them to use their package management interface, encourages them to learn more about their choices of software and GNU/Linux distributions, and which provides an easy way for them to back up their configuration.</li>
<li>Educational Use: Educational and corporate training programs which work with Open-Source projects can use this program to host code repositories for employees during training, and in turn their trainers and supervisors can follow versioned updates and use them to build redistributable packages of viable projects.</li>
<li>Activist Use: Activists who deliver things like privacy and security related packages that might find their main repositories censored in some regions can use this tool to maintain mirrors on sites which will prove much more difficult to keep people from accessing, like &quot;burner&quot; accounts on free file hosting sites, distributed file systems, and fire-and-forget hidden services.</li>
<li>Small Groups: Small groups of hobbyists and hackers can collaborate on projects and take advantage of the instant clonability of github repositories to create instant mirrors of their group's packages, sharing, testing, and growing their projects potential userbase and lowering barriers to entry for their ideas.</li>
<li>Small Businesses: Small businesses can save costs on hosting their in-house process software and encourage a culture of peer review by hosting both their source repositories and tiny package repositories on github, bitbucket, or similar versioned web hosting services.</li>
<li>Large Businesses: Larger businesses which allow their employees to use &quot;20% time&quot; or similar programs to develop projects can use this in conjunction with tools like dh_make or fpm to roll out an instant package repository when a program is ready for testing with a wider audience.</li>
</ul>
<p>If you're one of these people and you have a bitcoin or two lying around, you could send them my way and support development.</p>
<ul>
<li><strong>1FMSVpcKGuRhTjCcWegCgET9x3er28BzkA</strong></li>
</ul>
<h2 id="versioning-and-features">Versioning and Features</h2>
<p>Right now, binary repository generation for Debian(APT Repositories) is stable and source repository generation for Debian/Apt is nearing stability and are in usuable form. While these are the only working types of repositories, the pre-hyphenate part of this project's name will be &quot;apt.&quot; Additionally, while an end user could use any means to transfer the repository constructed by the apt-now tool, there is currently only support for the use of github-pages as a hosting medium in the code. While this remains the case the post-hyphenate part of this project's name will be &quot;git.&quot; When experimental support for F-Droid and Redhat(Yellowdog Updater) are complete, additional ways of transferring the files will be considered and added, and the final version will implement APT, YUM, and F-Droid repositories in an easy to configure, polyglot(But probably not agnostic) way.</p>
<p>You should be aware that if you use this, your .git directory will be visible to all users of the repository, allowing them to completely copy the repository and it's entire history. It assumes that is what you want. If you don't, you must remove the .git directory manually. In the future, a command-line option will be provided.</p>
<h3 id="repository-types">Repository Types</h3>
<ul>
<li>Debian/APT
<ul>
<li>Binary Repository(Complete, Stable, Generates Web Pages from package info)</li>
<li>Source Repository(Pretty much complete and stable. Doesn't generate pages yet.)</li>
<li>Notes: Depends on normal debian tools, including reprepro</li>
</ul></li>
<li>Android/F-Droid
<ul>
<li>Binary Repository(Experimental, Unstable, broken, see fdroid-git. The documentation for fdroidserver sometimes implies that the system requires some small amount of server-side code.)</li>
<li>Source Repository(Research phases)</li>
<li>Notes: Android implies somewhat different separation of logic from GNU/Linux</li>
</ul></li>
<li>Redhat/YUM
<ul>
<li>Binary Repository(Experimental, Still researching, but from the looks of things it's really straightforward. I do not know how to build RPM packages though, so we'll be working with Fedora's rpm's.)</li>
<li>Source Repository(Experimental, Still researching, but the YUM paradigm seems to be astoundingly simple.)</li>
<li>Notes: None yet. But I'm sure there's something.</li>
</ul></li>
</ul>
<h3 id="transport-types">Transport Types</h3>
<ul>
<li>Version-Controlled
<ul>
<li>git(Complete as a way up updating the server, but can't be used to retrieve inpidual software packages or update software. Cloning is pretty much like making an instant mirror, which is cool.) Will be considered complete when a repository can be initialized and cloned from in the apt-now directory in the absence of a configured web-based git account.</li>
<li>hg(Not started, but straightforward. Pretty much the same as the git code with very little alteration, just some transliterating of commands with identical benefits.) Will be considered complete when fulfilling the same requirements as git.</li>
{'fraction_non_alphanumeric': 0.07379170455340281, 'fraction_numerical': 0.005036021542981045, 'mean_word_length': 5.301454385191715, 'pattern_counts': {'":': 0, '<': 211, '<?xml version=': 0, '>': 211, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1003062', 'n_tokens_mistral': 3791, 'n_tokens_neox': 3570, 'n_words': 1983}