Skip to content
This repository was archived by the owner on Dec 18, 2017. It is now read-only.

Creation of DEB, RPM, and PKGNG files for UNIX/Linux systems #417

Closed
wholroyd opened this issue Sep 2, 2015 · 2 comments
Closed

Creation of DEB, RPM, and PKGNG files for UNIX/Linux systems #417

wholroyd opened this issue Sep 2, 2015 · 2 comments
Milestone

Comments

@wholroyd
Copy link

wholroyd commented Sep 2, 2015

This was originally asked for over in dotnet/aspnetcore#437 back in April and just realized there is a dedicated repo for DNVM now.

The challenge of making these packages is that DNVM expects to be installed on a per-user basis today which all UNIX/Linux package managers don't support without hackery in the package. I think it should be considered that DNVM install runtimes at a system level and then a choice of active/default/{alias} be configured on a per-user basis, for moth Windows and UNIX/Linux alike.

I started working on this already and came up with a Docker image that builds the .rpm and .deb packages using the current version of the DNVM script as of this posting, and manages the runtimes and active/default/{alias} at system level.

https://github.com/wholroyd/dnvm

Both packages install DNVM at a system level into /usr/local/bin/dnx/ and it creates a shell script into /etc/profiles.d/ that sets up $PATH to know where DNVM is located (look at the dnx.sh file in the repo).

Contents of the RPM...

[root@22911933e21f data]# rpm -qp dnvm-1.0.0_beta8_15502-1.x86_64.rpm -l
/etc/profile.d/dnx.sh
/usr/local/bin/dnx/dnvm/dnvm.sh
/usr/local/bin/dnx/runtimes

I'm using FPM to do the magic which already supports RPM, DEB, PKG (Solaris), and OSXPKG (Mac OS X). The PKGNG format for FreeBSD will be supported in the future. The OSXPKG format requires a Mac however - a typical Apple development restriction.

@wholroyd
Copy link
Author

wholroyd commented Sep 4, 2015

The paths were changed from /usr/local/bin to /usr/bin/ for the RPM & DEB creation.

@pruiz
Copy link

pruiz commented Sep 11, 2015

Hi,

I would use '/usr/lib/dnx/*' as base directory for dnx files & runtimes, as this alings a bit better with LFHS (IMHO).

@muratg muratg modified the milestone: Backlog Dec 11, 2015
@Eilon Eilon closed this as completed Dec 17, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants