2

I was surprised to not find more people asking this question, but so far I've only found one from a couple of years ago, with not much in the way of responses.

First, some background on what I'm actually trying to accomplish here: I am working on a custom spin of Edubuntu designed for use by educational nonprofits in low/no-bandwidth locations. The server would need to come pre-configured in some specific ways, and I need a reliable way to provide updates to those configurations without having direct access to the systems. Thus, a .deb repository that can be put on a USB drive if necessary seems like a reasonable solution.

It looks like the packagename.install file wants you to specify every file and dir that you want to include in your package individually. For a package that just places or updates files on a system, this seems like overkill (and quite tedious if you have a lot of files/dirs), as opposed to having something like this your build dir:

fs/
 |-etc/
    |-apache2/
         |- conf.d/
               |- some_custom_settings.conf
 |-var/
    |-www/
         |-html/
            |- some_custom_page.html

AND SO ON

and then having the "build" process basically just be rsync -a fs/ /

...but then, that also seems a bit hacky, which makes me wonder if I'm either missing something or just using the wrong tool for the job.

Of course, I could just suck it up and use the more tedious packagename.install approach to make .debs, or maybe I should look into something like Puppet instead, assuming there's a way to push updates to disconnected systems in that scenario. Or maybe just a git repo?

Basically, I'd welcome any suggestions, whether via .debs or something else.

Thanks in advance to anyone who can answer!

1

1 Answer 1

0

Effing Package Management https://github.com/jordansissel/fpm is one of my favorite tools for creating packages.

Create the directory tree you want and use https://github.com/jordansissel/fpm/wiki/Source:-dir

2
  • Wow, that was remarkably, refreshingly easy! I'm still open to someone making the case that I should be using Puppet or somesuch for this, but I've already got fpm up and running in a way that makes a .deb-based solution practically trivial. Thanks! May 18, 2014 at 20:40
  • by the way, if you ever need a config management tool, I would recommend ansible docs.ansible.com. simple and powerful.
    – resmo
    May 18, 2014 at 20:44

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .