My workaround for dealing with different org versions on different machines:
 (org-babel-do-load-languages
  'org-babel-load-languages
  `((perl       . t)
    (ruby       . t)
    ,(if (version< org-version "9.0")
         '(sh         . t)
       '(shell      . t))
    (python     . t)
    (emacs-lisp . t)
    (C          . t)
    (dot        . t)))))

On Tue, Apr 21, 2020 at 9:59 AM Loris Bennett <loris.bennett@fu-berlin.de> wrote:
Loris Bennett <loris.bennett@fu-berlin.de> writes:

> Hi,
>
> I want to use one init.el across multiple machines with different
> versions of Emacs and Org.  Since 'ob-sh.el' changed to 'ob-shell', I
> need to do either
>
>   (org-babel-do-load-languages
>    'org-babel-load-languages
>    '((org . t)
>      (emacs-lisp . t)
>      (shell . t)
>      (perl . t)
>      (R . t)
>      (matlab . t)
>      (gnuplot . t)
>      (dot . t)
>      (ditaa . t)
>      (plantuml . t)
>      (sqlite . t)
>      (python . t)
>      (latex . t)))
> or
>
>   (org-babel-do-load-languages
>    'org-babel-load-languages
>    '((org . t)
>      (emacs-lisp . t)
>      (sh . t)
>      (perl . t)
>      (R . t)
>      (matlab . t)
>      (gnuplot . t)
>      (dot . t)
>      (ditaa . t)
>      (plantuml . t)
>      (sqlite . t)
>      (python . t)
>      (latex . t)))
>     
> I can obviously use a conditional to test the Emacs or Org version and
> execute one block or the other.  However, since the list of languages is
> quite long, I would like to avoid repeating it.
>
> I create init.el from an init.org, so I am open to tangling solutions too.
>
> Cheers,
>
> Loris

I discovered

  append org-babel-load-languages

and solved the problem like this:

  (org-babel-do-load-languages                                                                 
   'org-babel-load-languages                                                                   
   '(                                                                                           
     (org . t)                                                                                 
     (emacs-lisp . t)                                                                           
     (perl . t)                                                                                 
     (R . t)                                                                                   
     (matlab . t)                                                                               
     (gnuplot . t)                                                                             
     (dot . t)                                                                                 
     (ditaa . t)                                                                               
     (plantuml . t)                                                                             
     (sqlite . t)                                                                               
     (python . t)                                                                               
     (latex . t)))

  (if (string= org-version "8.2.10")                                                           
      (org-babel-do-load-languages                                                             
       'org-babel-load-languages                                                               
       (append org-babel-load-languages                                                         
               '((sh . t))))                                                                   
    (org-babel-do-load-languages                                                               
     'org-babel-load-languages                                                                 
     (append org-babel-load-languages                                                           
             '((shell . t)))))           

The version test is a bit rigid, but

  org-version-check

is deprecated in my newer, primary version of Org and I couldn't work
out how to use it anyway 😅

Cheers,

Loris

--
This signature is currently under construction.