[DNG] [Ruby on rails - RVM] Patch for RVM and Devuan

2015-08-05 Thread aleskandro
Hi all, I have to develop a simple app in ruby on rails for an exam in my 
university. To deploy it I chose Devuan so that I can start to try it and not 
use systemd.
Installing rvm I see that it detect the distro 'automagically' to install 
needed dependencies: Devuan have not /etc/debian_version (but 
/etc/devuan_version) and the script doesn't recognize our distro.

Well I created a simple patch to solve this issue, I upload it here.

I opened an issue with this patch into github project of rvm (I don't know if 
it is the better way to sent a patch): 
https://github.com/rvm/rvm/issues/3482[1] 

A very small contribution to an important project

--
Happy hacking
Aleskandro


[1] https://github.com/rvm/rvm/issues/3482
diff -u --recursive --new-file rvm.old/scripts/functions/detect_system rvm/scripts/functions/detect_system
--- scripts/functions/detect_system	2015-08-05 15:29:50.124352334 +0200
+++ scripts/functions/detect_system	2015-08-05 15:39:00.640372870 +0200
@@ -58,6 +58,12 @@
 _system_version="$(\command \cat /etc/debian_version | \command \awk -F. '{print $1}' | head -n 1)"
 _system_arch="$( dpkg --print-architecture )"
   elif
+ 	[[ -f /etc/devuan_version ]]
+  then
+_system_name="Devuan"
+_system_version="$(\command \cat /etc/devuan_version | \command \awk -F. '{print $1}' | head -n 1)"
+_system_arch="$( dpkg --print-architecture )"
+  elif
 [[ -f /etc/os-release ]] &&
 GREP_OPTIONS="" \command \grep "ID=debian" /etc/os-release >/dev/null
   then
diff -u --recursive --new-file rvm.old/scripts/functions/requirements/devuan rvm/scripts/functions/requirements/devuan
--- scripts/functions/requirements/devuan	1970-01-01 01:00:00.0 +0100
+++ scripts/functions/requirements/devuan	2015-08-05 15:39:00.636372869 +0200
@@ -0,0 +1,141 @@
+#!/usr/bin/env bash
+
+# AMD64, i386, ARM.
+requirements_devuan_arch()
+{
+  __architecture="$(dpkg --print-architecture)"
+}
+
+# Queries the dpkg system for packages that are installed only asking about
+# the package name and it's arch.  This package will fall back to :all for
+# cases where we cannot get an arch specific package (such is the case
+# for a few packages.)
+
+requirements_devuan_lib_installed()
+{
+  dpkg-query -s "${1}:${__architecture}" >/dev/null 2>&1 ||
+  dpkg-query -s "${1}:all"   >/dev/null 2>&1 ||
+  dpkg-query -s "$1" 2>/dev/null | __rvm_grep "Architecture: ${__architecture}" >/dev/null ||
+  dpkg-query -s "$1" 2>/dev/null | __rvm_grep "Architecture: all"   >/dev/null ||
+  return $?
+}
+
+# Informs us if a package is even available on the distro we are working
+# with, this is more of a transitional method kind of like Ubuntu
+# has a transitional git-core package right now.  This will allow us
+# to continue to support older versions of Ubuntu while enforcing newer
+# packages on newer Ubuntu.
+
+requirements_devuan_lib_available()
+{
+  apt-cache show "$1" >/dev/null 2>&1 || return $?
+}
+
+requirements_devuan_libs_install()
+{
+  __rvm_try_sudo apt-get --no-install-recommends --yes install "$@" || return $?
+}
+
+requirements_devuan_update_system()
+{
+  __rvm_try_sudo apt-get --quiet --yes update ||
+  {
+\typeset __ret=$?
+case ${__ret} in
+  (100)
+rvm_error "There has been error while updating 'apt-get', please give it some time and try again later.
+404 errors should be fixed for rvm to proceed. Check your sources configured in:
+/etc/apt/sources.list
+/etc/apt/sources.list.d/*.list
+"
+;;
+esac
+return ${__ret}
+  }
+}
+
+requirements_devuan_define_java()
+{
+  update-alternatives --list ${1:-java} >/dev/null 2>&1 ||
+requirements_check_fallback \
+  openjdk-7-jre-headless openjdk-7-jdk oracle-j2sdk1.7 \
+  openjdk-6-jre-headless opendjk-6-jdk oracle-j2sdk1.6
+}
+
+requirements_devuan_define()
+{
+  \typeset __architecture
+  requirements_devuan_arch
+
+  case "$1" in
+(rvm)
+  requirements_check bash curl patch bzip2 ca-certificates gawk
+  ;;
+
+(jruby*)
+  requirements_check g++
+  if
+is_head_or_disable_binary "$1"
+  then
+requirements_devuan_define_java javac
+requirements_check_fallback git git-core
+if is_jruby_post17 "$1"
+then __rvm_which mvn >/dev/null || requirements_check_fallback maven maven2
+else __rvm_which ant >/dev/null || requirements_check ant
+fi
+  else
+requirements_devuan_define_java java
+  fi
+  ;;
+
+(ir*)
+  requirements_check curl mono-2.0-devel
+  ;;
+
+(opal)
+  requirements_check nodejs npm
+ 

Re: [DNG] [Ruby on rails - RVM] Patch for RVM and Devuan

2015-08-11 Thread aleskandro
The patch was merged. Now devuan is supported by rvm in the branch master.


-- 
A presto
aleskan...@lucylaika.ovh
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng


[DNG] Devuan mirror down

2016-03-24 Thread aleskandro
Hi all, I noted that the server hosting packages.devuan.org and  
files.devuan.org are down.

Fix it ;)
Good work
Aleskandro
___
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng