pkgme/0000775000000000000000000000000011767651576007076 5ustar pkgme/index.txt0000664000000000000000000000152511767651501010735 0ustar ``pkgme`` ========= ``pkgme`` takes care of packaging your application for distribution on Ubuntu. Provided that you follow conventions of your language pkgme will generate working packaging without you having to know any of the inner workings. Currently ``pkgme`` is looking for "backend" authors who can write the code that will make ``pkgme`` work for your language. This doesn't require you to know everything about packaging, just write code that can tell ``pkgme`` certain facts about a project, such as the version or who wrote it, using whatever convention makes sense for your language. If you would like to help then see :doc:`/doc/backends/index`. Development of ``pkgme`` takes place `at Launchpad.net.`_ There are several ways to :doc:`contact the developers ` if you wish. .. _at Launchpad.net.: https://launchpad.net/pkgme pkgme/_static/0000775000000000000000000000000011767651501010510 5ustar pkgme/debian/0000775000000000000000000000000011767651525010312 5ustar pkgme/debian/control0000664000000000000000000000204011767651512011705 0ustar Source: pkgme Section: misc Priority: extra Maintainer: pkgme developers Standards-Version: 3.9.3 Build-Depends: debhelper (>= 7), python-all, python-argparse, python-cheetah, python-debian, python-fixtures, python-launchpadlib, python-markdown, python-setuptools, python-testtools Homepage: https://launchpad.net/pkgme Vcs-Bzr: lp:pkgme Package: pkgme Architecture: all Depends: debhelper (>= 7), python-setuptools, python-testresources, ${misc:Depends}, ${python:Depends} Description: framework for generating Debian packaging artifacts The pkgme program is a framework for generating Debian packaging artifacts from information gleaned from inspecting the code. The framework takes care of the common tasks, and knows about packaging in general. It is extensible so that programming language-specific conventions and rules can be supported. pkgme/debian/watch0000664000000000000000000000006611767651512011341 0ustar # For now we will use bzr checkouts of lp:pkgme only. pkgme/debian/source/0000775000000000000000000000000011767651512011606 5ustar pkgme/debian/source/format0000664000000000000000000000001511767651512013015 0ustar 3.0 (native) pkgme/debian/rules0000755000000000000000000000011511767651512011361 0ustar #!/usr/bin/make -f %: dh $@ --buildsystem=python_distutils --with=python2 pkgme/debian/compat0000664000000000000000000000000211767651512011504 0ustar 7 pkgme/debian/changelog0000664000000000000000000000023711767651512012162 0ustar pkgme (0.1+bzr114) quantal; urgency=low * Initial release. (LP: #1007327) -- Daniel Holbach Mon, 18 Jun 2012 14:08:58 +0200 pkgme/debian/copyright0000664000000000000000000000470511767651512012247 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: pkgme Upstream-Contact: pkgme developers Source: https://launchpad.net/pkgme Files: * Copyright: (C) 2010 by Canonical Ltd. License: GPL-3 This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . . On Debian systems, the full text of the GNU General Public License version 2 can be found in the file `/usr/share/common-licenses/GPL-3'. Files: setup_helpers.py Copyright: Copyright (C) 2009, 2010 by Barry A. Warsaw License: LGPL-3 This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 3 of the License. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. . You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . . On Debian systems, the full text of the GNU Lesser General Public License version 3 can be found in the file `/usr/share/common-licenses/LGPL-3'. Files: _templates/ubuntu1204/static/lib/prettyprint/lang-clj.js Copyright: Copyright (C) 2011 Google Inc. License: Apache-2.0 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. pkgme/debian/README.source0000664000000000000000000000014011767651512012460 0ustar For now we just use bzr checkouts of lp:pkgme, but might go for regular releases at some stage. pkgme/NEWS.txt0000664000000000000000000000014411767651501010376 0ustar ============== NEWS for pkgme ============== 0.1 (201X-XX-XX) ================ * Initial release. pkgme/conf.py0000664000000000000000000001246111767651501010365 0ustar # -*- coding: utf-8 -*- # # pkgme documentation build configuration file, created by # sphinx-quickstart on Thu Jan 7 18:41:30 2010. # # This file is execfile()d with the current directory set to its containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import sys, os # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. #sys.path.append(os.path.abspath('.')) # -- General configuration ----------------------------------------------------- # Add any Sphinx extension module names here, as strings. They can be extensions # coming with Sphinx (named 'sphinx.ext.*') or your custom ones. extensions = ['sphinx.ext.autodoc'] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix of source filenames. source_suffix = '.txt' # The encoding of source files. #source_encoding = 'utf-8' # The master toctree document. master_doc = 'doc/index' # General information about the project. project = u'pkgme' copyright = u'2012, Canonical Ltd.' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # #from pkgme import __version__ # The short X.Y version. version = 0.1 # The full version, including alpha/beta/rc tags. release = 0.1 # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. #language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. today_fmt = '%B %d, %Y' # List of documents that shouldn't be included in the build. #unused_docs = [] # List of directories, relative to source directory, that shouldn't be searched # for source files. exclude_trees = ['_build', 'build', 'pkgme.egg-info', 'distribute-0.6.10'] # The reST default role (used for this markup: `text`) to use for all documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # -- Options for HTML output --------------------------------------------------- sys.path.append(os.path.abspath('_templates')) html_theme_path = ['_templates'] html_theme = 'ubuntu1204' html_title = "pkgme" html_short_title = "pkgme" ## should be 32x32 #html_logo = "" #html_favicon = None html_static_path = ['_static'] html_last_updated_fmt = '%b %d, %Y' html_use_smartypants = False # Custom sidebar templates, maps document names to template names. #html_sidebars = { # 'index': 'project-links.html' #} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = False # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml"). html_file_suffix = '.html' # Output file base name for HTML help builder. htmlhelp_basename = 'pkgmedoc' # -- Options for LaTeX output -------------------------------------------------- # The paper size ('letter' or 'a4'). #latex_paper_size = 'letter' # The font size ('10pt', '11pt' or '12pt'). #latex_font_size = '10pt' # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, author, documentclass [howto/manual]). latex_documents = [ ('README.txt', 'pkgme.tex', u'pkgme Documentation', u'pkgme developers', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # Additional stuff for the LaTeX preamble. #latex_preamble = '' # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_use_modindex = True pkgme/.testr.conf0000664000000000000000000000016211767651501011147 0ustar [DEFAULT] test_command=PYTHONPATH=`pwd` python -m subunit.run $IDLIST test_id_list_default=pkgme.tests.test_suite pkgme/tarmac_tests.sh0000775000000000000000000000026111767651501012111 0ustar #!/bin/sh set -e virtualenv --no-site-packages virtualenv > log . virtualenv/bin/activate >> log python setup.py develop >> log python -m testtools.run pkgme.tests.test_suite pkgme/_templates/0000775000000000000000000000000011767651501011217 5ustar pkgme/_templates/ubuntu1204/0000775000000000000000000000000011767651501013050 5ustar pkgme/_templates/ubuntu1204/layout.html0000664000000000000000000001451311767651501015257 0ustar {% set script_files = script_files + ['_static/lib/prettyprint/prettyprint.js', 'https://html5shim.googlecode.com/svn/trunk/html5.js'] %} {% set css_files = ['_static/ubuntu1204-core.css', '_static/ubuntu1204-sphinx.css', '_static/lib/font/font-awesome.css','_static/lib/prettyprint/prettyprint.css'] %} {%- block doctype -%}{%- endblock %} {%- macro script() %} {%- for scriptfile in script_files %} {%- endfor %} {%- endmacro %} {%- macro css() %} {%- for cssfile in css_files %} {%- endfor %} {%- endmacro %} {%- macro relbar() %} {%- for rellink in rellinks %}{% if loop.first %}{% else %}
  • {{ rellink[3] }}
  • {% endif %}{%- endfor %} {%- endmacro %} {{ metatags }} {%- block htmltitle %}{{ title|striptags|e }}{{ titlesuffix }}{%- endblock %} {{ css() }} {{ script() }} {%- if use_opensearch %} {%- endif %} {%- block linktags %} {%- if hasdoc('about') %} {%- endif %} {%- if hasdoc('genindex') %} {%- endif %} {%- if hasdoc('search') %} {%- endif %} {%- if hasdoc('copyright') %} {%- endif %} {%- if parents %} {%- endif %} {%- if next %} {%- endif %} {%- if prev %} {%- endif %} {%- endblock %} {% macro navBar() %}
    Ubuntu logo

    {{ docstitle|e }}

    {% endmacro %} {% block header %}{{ navBar() }}{% endblock %}
    {%- block content %} {% block body %} {% endblock %} {%- endblock %}
    {%- block footer %}


    {%- if show_copyright %} {%- if hasdoc('copyright') %} {% trans path=pathto('copyright'), copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
    {%- else %} {% trans copyright=copyright|e %}© Copyright {{ copyright }}. Documentation Source Licensed GPLv3.{% endtrans %} {%- endif %} {%- endif %}
    {%- if last_updated %} {% trans last_updated=last_updated|e %}Last Generated on {{ last_updated }}.{% endtrans %} {%- endif %} {% trans sphinx_version=sphinx_version|e %}Created using Sphinx {{ sphinx_version }}.{% endtrans %}

    Ubuntu logo
    {%- endblock %} pkgme/_templates/ubuntu1204/sourcelink.html0000664000000000000000000000026311767651501016115 0ustar {%- if show_source and has_source and sourcename %}
  • {{ _('Source') }}
  • {%- endif %} pkgme/_templates/ubuntu1204/theme.conf0000664000000000000000000000040111767651501015014 0ustar # Ubuntu 1204 Branding Guidelines Spinx Theme [theme] inherit = basic rightsidebar = false stickysidebar = false collapsiblesidebar = false externalrefs = false #basedomain = "" basepath = "/docs/" headfont = Ubuntu bodyfont = free-sans,sans,sans-serif pkgme/_templates/ubuntu1204/static/0000775000000000000000000000000011767651501014337 5ustar pkgme/_templates/ubuntu1204/static/js/0000775000000000000000000000000011767651501014753 5ustar pkgme/_templates/ubuntu1204/static/js/src/0000775000000000000000000000000011767651501015542 5ustar pkgme/_templates/ubuntu1204/static/js/bootstrap.js0000664000000000000000000005346311767651501017341 0ustar /*! * Bootstrap.js by @fat & @mdo * Copyright 2012 Twitter, Inc. * http://www.apache.org/licenses/LICENSE-2.0.txt */ !function(a){a(function(){"use strict",a.support.transition=function(){var a=function(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",msTransition:"MSTransitionEnd",transition:"transitionend"},c;for(c in b)if(a.style[c]!==undefined)return b[c]}();return a&&{end:a}}()})}(window.jQuery),!function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function f(){e.trigger("closed").remove()}var c=a(this),d=c.attr("data-target"),e;d||(d=c.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),e=a(d),b&&b.preventDefault(),e.length||(e=c.hasClass("alert")?c:c.parent()),e.trigger(b=a.Event("close"));if(b.isDefaultPrevented())return;e.removeClass("in"),a.support.transition&&e.hasClass("fade")?e.on(a.support.transition.end,f):f()},a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.alert.Constructor=c,a(function(){a("body").on("click.alert.data-api",b,c.prototype.close)})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){a=="loadingText"?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.parent('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")},a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f=typeof c=="object"&&c;e||d.data("button",e=new b(this,f)),c=="toggle"?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a(function(){a("body").on("click.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=c,this.options.slide&&this.slide(this.options.slide),this.options.pause=="hover"&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(b){return b||(this.paused=!1),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},to:function(b){var c=this.$element.find(".active"),d=c.parent().children(),e=d.index(c),f=this;if(b>d.length-1||b<0)return;return this.sliding?this.$element.one("slid",function(){f.to(b)}):e==b?this.pause().cycle():this.slide(b>e?"next":"prev",a(d[b]))},pause:function(a){return a||(this.paused=!0),clearInterval(this.interval),this.interval=null,this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(b,c){var d=this.$element.find(".active"),e=c||d[b](),f=this.interval,g=b=="next"?"left":"right",h=b=="next"?"first":"last",i=this,j=a.Event("slide");this.sliding=!0,f&&this.pause(),e=e.length?e:this.$element.find(".item")[h]();if(e.hasClass("active"))return;if(a.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(j);if(j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),this.$element.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)})}else{this.$element.trigger(j);if(j.isDefaultPrevented())return;d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return f&&this.cycle(),this}},a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=a.extend({},a.fn.carousel.defaults,typeof c=="object"&&c);e||d.data("carousel",e=new b(this,f)),typeof c=="number"?e.to(c):typeof c=="string"||(c=f.slide)?e[c]():f.interval&&e.cycle()})},a.fn.carousel.defaults={interval:5e3,pause:"hover"},a.fn.carousel.Constructor=b,a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!e.data("modal")&&a.extend({},e.data(),c.data());e.carousel(f),b.preventDefault()})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b,c,d,e;if(this.transitioning)return;b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find("> .accordion-group > .in");if(d&&d.length){e=d.data("collapse");if(e&&e.transitioning)return;d.collapse("hide"),e||d.data("collapse",null)}this.$element[b](0),this.transition("addClass",a.Event("show"),"shown"),this.$element[b](this.$element[0][c])},hide:function(){var b;if(this.transitioning)return;b=this.dimension(),this.reset(this.$element[b]()),this.transition("removeClass",a.Event("hide"),"hidden"),this.$element[b](0)},reset:function(a){var b=this.dimension();return this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element[a!==null?"addClass":"removeClass"]("collapse"),this},transition:function(b,c,d){var e=this,f=function(){c.type=="show"&&e.reset(),e.transitioning=0,e.$element.trigger(d)};this.$element.trigger(c);if(c.isDefaultPrevented())return;this.transitioning=1,this.$element[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=typeof c=="object"&&c;e||d.data("collapse",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c=a(this),d,e=c.attr("data-target")||b.preventDefault()||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":c.data();a(e).collapse(f)})})}(window.jQuery),!function(a){function d(){a(b).parent().removeClass("open")}"use strict";var b='[data-toggle="dropdown"]',c=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};c.prototype={constructor:c,toggle:function(b){var c=a(this),e,f,g;if(c.is(".disabled, :disabled"))return;return f=c.attr("data-target"),f||(f=c.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,"")),e=a(f),e.length||(e=c.parent()),g=e.hasClass("open"),d(),g||e.toggleClass("open"),!1}},a.fn.dropdown=function(b){return this.each(function(){var d=a(this),e=d.data("dropdown");e||d.data("dropdown",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.dropdown.Constructor=c,a(function(){a("html").on("click.dropdown.data-api",d),a("body").on("click.dropdown",".dropdown form",function(a){a.stopPropagation()}).on("click.dropdown.data-api",b,c.prototype.toggle)})}(window.jQuery),!function(a){function c(){var b=this,c=setTimeout(function(){b.$element.off(a.support.transition.end),d.call(b)},500);this.$element.one(a.support.transition.end,function(){clearTimeout(c),d.call(b)})}function d(a){this.$element.hide().trigger("hidden"),e.call(this)}function e(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;this.$backdrop=a('