INSTALL.Debian.txt 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297
  1. #!/bin/cat
  2. # $Id: INSTALL.Debian.txt,v 1.38 2022/05/17 14:29:36 gilles Exp gilles $
  3. This documentation is also located online at
  4. https://imapsync.lamiral.info/INSTALL.d/
  5. https://imapsync.lamiral.info/INSTALL.d/INSTALL.Debian.txt
  6. There is four install sections in this document,
  7. 1) one for Debian 9 Stretch, Debian 10 Buster, Debian 11 Bullseye, Debian 12 Bookworm
  8. 2) one for all the Debian, called "After installing the dependencies".
  9. 3) one for Debian 8 Jessie (obsolete)
  10. 4) one for Debian 7 Wheezy (even more obsolete)
  11. After reading and following 1) or 3) or 4), you'll be invited to read and follow
  12. the section "2) After installing the dependencies"
  13. What is your Debian release?
  14. Type on a terminal:
  15. cat /etc/debian_version
  16. 12.x => Bookworm
  17. 11.x => Bullseye
  18. 10.x => Buster
  19. 9.x => Stretch
  20. 8.x => Jessie
  21. 7.x => Wheezy
  22. where x is any number between 0 and 9, x is minor and to be forgotten.
  23. First, a call to Debian packagers
  24. Why imapsync is not in Debian as a package?
  25. Imapsync used to be in Debian from 2005-04-25 (release 1.125) to 2011-01-25 (release 1.315).
  26. It could be in Debian nowadays, as always, my last words on this discussion were
  27. "Do what you want, I promise I won't complain anymore about the fact imapsync is in Debian or not."
  28. https://lists.debian.org/debian-legal/2011/01/msg00058.html
  29. The Imapsync license is "No limits to do anything with this work and this license".
  30. So feel free!
  31. See also a more detailed story at
  32. https://lists.debian.org/debian-user/2016/11/msg00849.html
  33. =======================================================================
  34. 1) Installing imapsync on Debian 9 Stretch, 10 Buster, 11 Bullseye
  35. =======================================================================
  36. How to install imapsync dependencies on a Debian system?
  37. The repositories are the classical ones, ie, a
  38. /etc/apt/sources.list file with:
  39. # Debian 12 Bookworm
  40. deb http://deb.debian.org/debian bookworm main contrib
  41. or
  42. # Debian 11 Bullseye
  43. deb http://deb.debian.org/debian bullseye main contrib
  44. or
  45. # Debian 10 Buster
  46. deb http://deb.debian.org/debian buster main contrib
  47. or
  48. # Debian 9 Stretch
  49. deb http://deb.debian.org/debian stretch main contrib
  50. You need root privilege to run it, be root or use sudo.
  51. apt install -y \
  52. libauthen-ntlm-perl \
  53. libcgi-pm-perl \
  54. libcrypt-openssl-rsa-perl \
  55. libdata-uniqid-perl \
  56. libencode-imaputf7-perl \
  57. libfile-copy-recursive-perl \
  58. libfile-tail-perl \
  59. libio-socket-inet6-perl \
  60. libio-socket-ssl-perl \
  61. libio-tee-perl \
  62. libhtml-parser-perl \
  63. libjson-webtoken-perl \
  64. libmail-imapclient-perl \
  65. libparse-recdescent-perl \
  66. libproc-processtable-perl \
  67. libmodule-scandeps-perl \
  68. libreadonly-perl \
  69. libregexp-common-perl \
  70. libsys-meminfo-perl \
  71. libterm-readkey-perl \
  72. libtest-mockobject-perl \
  73. libtest-pod-perl \
  74. libunicode-string-perl \
  75. liburi-perl \
  76. libwww-perl \
  77. libtest-nowarnings-perl \
  78. libtest-deep-perl \
  79. libtest-warn-perl \
  80. make \
  81. time \
  82. cpanminus
  83. After installing the dependencies, imapsync should be working,
  84. go to the section "2) After installing the dependencies" below.
  85. =======================================================================
  86. 2) After installing the dependencies
  87. =======================================================================
  88. You don't have to be root to test and use imapsync.
  89. Take imapsync either on github:
  90. wget -N https://raw.githubusercontent.com/imapsync/imapsync/master/imapsync
  91. or be on the cutting edge with the upstream site:
  92. wget -N https://imapsync.lamiral.info/imapsync
  93. Add execution permission to the downloaded script:
  94. chmod +x imapsync
  95. Check the dependencies and print also the basic example:
  96. ./imapsync
  97. Perform a live test showing imapsync job:
  98. ./imapsync --testslive
  99. Now install imapsync on the system (need root priviledges again):
  100. cp imapsync /usr/bin/
  101. That's finished for the installation part.
  102. You can now use imapsync without knowing where it is located
  103. on the system:
  104. imapsync
  105. Now go read the menu http://imapsync.lamiral.info/#doc
  106. and start with the tutorial
  107. https://imapsync.lamiral.info/doc/TUTORIAL_Unix.html
  108. Feedback is welcome!
  109. =======================================================================
  110. 3) Installing imapsync on Debian 8 Jessie
  111. =======================================================================
  112. How to install imapsync dependencies on a Debian system?
  113. You need root priviledge.
  114. The first command installs standard Debian packages:
  115. apt install \
  116. libauthen-ntlm-perl \
  117. libcgi-pm-perl \
  118. libcrypt-openssl-rsa-perl \
  119. libdata-uniqid-perl \
  120. libencode-imaputf7-perl \
  121. libfile-copy-recursive-perl \
  122. libfile-tail-perl \
  123. libio-socket-inet6-perl \
  124. libio-socket-ssl-perl \
  125. libio-tee-perl \
  126. libhtml-parser-perl \
  127. libmail-imapclient-perl \
  128. libparse-recdescent-perl \
  129. libmodule-scandeps-perl \
  130. libreadonly-perl \
  131. libterm-readkey-perl \
  132. libtest-mockobject-perl \
  133. libtest-pod-perl \
  134. libunicode-string-perl \
  135. liburi-perl \
  136. libwww-perl \
  137. libregexp-common-perl \
  138. libtest-nowarnings-perl \
  139. libtest-deep-perl \
  140. libtest-warn-perl \
  141. gcc \
  142. make \
  143. cpanminus
  144. The package libdata-uniqid-perl is in the jessie-backports repository
  145. https://packages.debian.org/fr/jessie-backports/libdata-uniqid-perl
  146. Here is how to add jessie-backports repository in /etc/apt/sources.list
  147. https://backports.debian.org/Instructions/
  148. If you can't add the jessie-backports repository in /etc/apt/sources.list you
  149. have to install Perl module Data::Uniqid with cpanm:
  150. cpanm Data::Uniqid
  151. The following second command installs "manually" the Perl module Sys::MemInfo
  152. because Debian 8 Jessie doesn't have this Perl module available via a package
  153. (but Debian 9 Stretch does):
  154. cpanm Sys::MemInfo
  155. The following optional cpanm command updates Perl module Mail::IMAPClient
  156. because it is good to be up to date with that imapsync dependency,
  157. but it is not mandatory since Mail::IMAPClient is installed by
  158. the Debian package libmail-imapclient-perl:
  159. cpanm Mail::IMAPClient
  160. Last, in case you need to use XOAUTH2 authentication you have to install
  161. the module JSON::WebToken with the command:
  162. cpanm JSON::WebToken
  163. After installing the dependencies, imapsync should be working,
  164. go to the section "2) After installing the dependencies" above.
  165. =======================================================================
  166. 4) Installing imapsync on Debian 7 Wheezy
  167. =======================================================================
  168. How to install imapsync dependencies on a Debian system?
  169. You need root priviledge to run the commands.
  170. The first command installs standard Debian packages:
  171. apt-get install \
  172. libauthen-ntlm-perl \
  173. libclass-load-perl \
  174. libcrypt-openssl-rsa-perl \
  175. libdigest-hmac-perl \
  176. libencode-imaputf7-perl \
  177. libfile-copy-recursive-perl \
  178. libfile-tail-perl \
  179. libio-compress-perl \
  180. libio-socket-inet6-perl \
  181. libio-socket-ssl-perl \
  182. libio-tee-perl \
  183. libmail-imapclient-perl \
  184. libmodule-implementation-perl \
  185. libmodule-runtime-perl \
  186. libmodule-scandeps-perl \
  187. libpackage-stash-perl \
  188. libpackage-stash-xs-perl \
  189. libpar-packer-perl \
  190. libreadonly-perl \
  191. libterm-readkey-perl \
  192. libtest-fatal-perl \
  193. libtest-pod-perl \
  194. libtest-requires-perl \
  195. libtest-simple-perl \
  196. libunicode-string-perl \
  197. liburi-perl \
  198. gcc \
  199. make \
  200. cpanminus
  201. The following second command installs "manually" the Perl modules
  202. Data::Uniqid
  203. Sys::MemInfo
  204. because Debian hasn't made them available via a package yet.
  205. This cpanm command also installs manually Perl module Mail::IMAPClient
  206. because it is good to be up to date with that imapsync dependency,
  207. but it is not mandatory since Mail::IMAPClient is installed by
  208. the Debian package libmail-imapclient-perl:
  209. cpanm Data::Uniqid Sys::MemInfo
  210. In case you want to update the Perl module Mail::IMAPClient,
  211. a major module for imapsync, but an old March 2012 release 3.31 in Wheezy,
  212. the following command updates it "manually":
  213. cpanm Mail::IMAPClient
  214. Last, in case you need to use XOAUTH2 authentication you have to install
  215. the module JSON::WebToken with the command:
  216. cpanm JSON::WebToken
  217. After installing the dependencies, imapsync should be working,
  218. then go to the section "2) After installing the dependencies" above.
  219. =======================================================================