sindro.me

feeling bold
on the internet

info 🇬🇧🇮🇹

Come compilare python2.5 su SCO_SV

- 2 min di lettura
  • Devi avere PTH installato, e forse altre librerie.
  • Testato su SCO_SV os507 3.2 5.0.7 i386

Se hai UDK, lancia:

$ CFLAGS='-I/usr/local/include -belf' LDFLAGS='-L/usr/local/lib' \
  ./configure --with-threads --with-pth --disable-shared --disable-ipv6
  • Aggiungi /usr/local/include a BASECFLAGS nel Makefile (autocrap fa schifo).
  • Patcha Modules/ctypes/_ctypes_test.c mettendo un #ifdef HAVE_LONG_LONG attorno alle funzioni che usano PY_LONG_LONG (suggerimenti: righe 384 e 318).
  • Patcha Objects/longobject.c e alla riga 817 metti la macro IS_LITTLE_ENDIAN prima del blocco #ifdef HAVE_LONG_LONG, e metti _PyLong_FromSsize_t e _PyLong_FromSize_t dopo il blocco HAVE_LONG_LONG.

Se hai GCC, lancia:

$ CFLAGS='-I/usr/local/include' LDFLAGS='-L/usr/local/lib'            \
  ./configure --with-threads --with-pth --disable-shared --disable-ipv6

Sia con UDK che con GCC:

  • Modifica pyconfig.h e commenta il define di socklen_t
  • Modifica Modules/socketmodule.c e alla riga 226 aggiungi || defined(SCO5) per definire INET_ADDRSTRLEN.
  • Lancia make (o gmake se preferisci)
  • Rimarrai senza _curses.so, _curses_panel.so, _locale.so e readline.so se usi GCC, e anche senza pyexpat, elementtree e sha512 se usi UDK.
      __   ____  __ __  ____     __
      \ \ / /  \/  |  \/  \ \   / /
       \ V /| |\/| | |\/| |\ \ / / 
        | | | |  | | |  | | \ V /_ 
        |_| |_|  |_|_|  |_|  \_/(_)
[vjt@os507 ~/Python-2.5.1-vjt] $ python
Python 2.5.1 (r251:31337, Sep 13 2007, 22:40:33) 
[GCC 4.2.1] on sco_sv3
Type "help", "copyright", "credits" or "license" for more information.
>>> import socket
>>> 
[vjt@os507 ~] $ hg clone http://code.wuhrer.thc/hg/Antani
destination directory: Antani
http authorization required

!! YAY! :D

Quando i sysadmin governavano la Terra

- 1 min di lettura

Logo del romanzo

Un romanzo davvero, davvero, davvero NERD di Cory Doctorow che racconta di un gruppo di sysadmin che lottano per tenere in piedi la cara vecchia Rete dopo un evento catastrofico che ha messo il mondo intero in ginocchio. Combattono con scorte limitate di energia e cibo e comunicano via Usenet… usando la buona vecchia gerarchia alt.

Voto: 10+ per la cosa più geek che abbia mai letto. Vale davvero l’ora necessaria per leggerlo tutto. Buona lettura

Ingredienti: Debian, Netatalk, Avahi, un po’ di trucchetti.

Passo 1: Ricompilare Netatalk con supporto SSL

Ricompila Netatalk con il supporto SSL.

Puoi tranquillamente ignorare la roba del “.passwd”, perché afpd usa PAM per l’autenticazione degli utenti.

Suggerimento: Disabilita i gestori del protocollo atalk in /etc/default/netatalk per un avvio più veloce:

# Set which daemons to run (papd is dependent upon atalkd):
ATALKD_RUN=no        # appletalk protocol
PAPD_RUN=no          # printer sharing daemon (printers are soooo '90s)
CNID_METAD_RUN=yes   # don't remember but is needed, rtfm!
AFPD_RUN=yes         # you will always need this
TIMELORD_RUN=no      # my time lord's name is <a href="http://openntpd.org">openntpd</a>
A2BOOT_RUN=no        # boot? nah! :P

Passo 2: Crea una condivisione per i dati di backup di Time Machine, aggiungendo ad es.

# path         name           perms     charset
/some/where/tm "Time Machine" allow:vjt volcharset:"UTF8" 

in /etc/netatalk/AppleVolumes.default.

Passo 3: Fai comparire il server AFPD nel Finder

Scarica il file di servizio avahi, mettilo in /etc/avahi/services e ricarica avahi con /etc/init.d/avahi-daemon reload (scusate, i link originali sono rotti).

Passo 4: Configura il backup di Time Machine

Ti servono due file sulla condivisione di rete AFP: .com.apple.timemachine.supported e un dot-file che prende il nome dal MAC address della tua en0. Per crearlo, il modo più semplice è collegare un disco USB/Firewire, rinominarlo con il nome della condivisione di rete desiderata (specificata nel file AppleVolumes) e abilitare Time Machine su di esso.

Poi, copia il file .00… dal disco esterno nella tua home directory, espelli il disco, monta la condivisione di rete dal Finder e copia il file lì.

Infine, fai un touch di .com.apple.timemachine.supported sulla condivisione di rete e riapri le preferenze di Time Machine: la dimensione del tuo volume di backup dovrebbe essere uguale alla dimensione della condivisione di rete :).