C’è qualche repository segreto che usano tutti per mantenere aggiornate le cose?
Grazie! asdf è di grande aiuto! Penso di averlo già visto, ma volevo evitare Yet Another Package Manager. Se è abbastanza buono per te, sono completamente d’accordo.
E sembra che anche nodejs sia obsoleto nello script di installazione. Un’installazione recente ha la v18.12.1 e lo script installa la 16.
Quindi sembra che
git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.2
asdf plugin add ruby https://github.com/asdf-vm/asdf-ruby.git
asdf plugin add imagemagick
asdf install imagemagick 7.1.0-55
asdf plugin add nodejs
asdf install nodejs 18.12.1
Supponendo che tu ottenga questo nel tuo .bashrc (o simile) in qualche modo:
. $HOME/.asdf/asdf.sh
. $HOME/.asdf/completions/asdf.bash
E installando queste gem:
- bundler
- discourse_theme
- minitar
- listen
- rb-fsevent
- rb-inotify
- ffi
- multipart-post
- tty-prompt
- pastel
- tty-color
- tty-reader
- tty-screen
- advancecomp
- gifsicle
- jpegoptim
- libjpeg-progs
- optipng
- pngcrush
- pngquant
- jhead
- rails
Alcuni di questi potrei averli aggiunti per qualche motivo diverso da Discourse, anche se non ne sono del tutto sicuro.
E
apt-get install -y git build-essential libxslt1-dev libcurl4-openssl-dev libksba8 \
libksba-dev libreadline-dev libssl-dev zlib1g-dev libsnappy-dev \
sqlite3 libsqlite3-dev postgresql postgresql-server-dev-all \
postgresql-contrib libpq-dev redis-server golang-go
go get github.com/mailhog/MailHog
(Probabilmente non in quest’ordine) Si avvicina abbastanza. L’attuale redis incluso con ubuntu è abbastanza buono per il 99% degli sviluppatori (è 7.0.7 e non 6.x) Oh! 7.0.7 è ora quello incluso. Ma c’è anche un plugin asdf per redis.
Uno script del genere sarebbe quindi molto facile da mantenere nel core quando ci fosse un aumento di versione in node, imagemagick o Ruby, e poi uno sviluppatore pigro potrebbe eseguire quello script una volta alla settimana o con ogni nuovo pull e avere un ambiente di sviluppo aggiornato. Con un’ora o tre qualcuno di intelligente potrebbe renderlo abbastanza multipiattaforma per Linux, Mac/homebrew e Windows/WSL in un paio d’ore. Fortunatamente non ho un facile accesso a Windows in questi giorni, quindi non mi offro volontario.
Ma penso che se monitoro le modifiche a discourse_docker forse noterò quando quelle verranno aggiornate e le mie aggiunte improvvisate al mio playbook Ansible newmachine potrebbero ora fare il lavoro.
Grazie per il suggerimento! Penso di poter ora avere una configurazione di sviluppo su qualsiasi macchina con un singolo comando.