18 berichten aan het bekijken - 1 tot 18 (van in totaal 18)
  • Q:
    Bijdrager
    Shmoo

    Nieuwe Mac – Ruby en alle teringzooi opnieuw installeren

    Daar zijn we weer. Na een dagje installeren en software opnieuw instellen zijn mijn computers klaar voor gebruik, maar … HaHa bestaande projecten gebruiken Ruby, Node, NPM en Composer. 😓

     

     

    Alleen denken aan dat lijstje maakt mij al zeeziek. 🤢

     

    Ik heb ruby -v gedaan in Terminal en Apple heeft standaard versie 2.6.3 meegeven. Alleen had ik gehoopt dat het al een jaartje later was zodat ze niets meer hadden meegegeven en je alles zelfstandig moet installeren want dan doe je het waarschijnlijk meteen op de juiste locatie. Ergens waar je altijd schrijfrechten hebt en je nooit meer hoeft te klooien met sudo of permissions denied.

     

    Dat is het hele probleem. Ik vind het prima om Ruby, gems, bundler en wat voor kermis allemaal zelf opnieuw te installeren zodra ik de basis maar goed heb staan. Zolang het voor het systeem maar duidelijk is dat het Ruby, en alles op X locatie kan vinden + gebruiken. Niet dat ik voor je project X locatie A (lokaal) heb en project Y locatie B (Apple systeem locatie).

     

    Volgens mij doe je dit door $PATH of zoiets in te stellen maar hoe doe je dat op een fatsoenlijke manier zodat alle tools hierboven dit begrijpen. Ik wil dit graag goed doen zodat ik over 7 maanden ook nog steeds weet, installeren van iets moet op locatie X gebeuren. Liefst gaat dat dan automatisch.

     

    Dit is volgens mij de locatie op dit moment. Met het probleem dat de bin folder van Apple is en met SIP beveiligd of zoiets.

    /usr/bin/

     

    Dit is volgens mij waar het naar toe moet en waar het de gebruiker voldoende rechten heeft.

    /usr/local/

     

     

    Iemand die dit stap voor stap goed kan uitleggen. 🙏

    Bijdrager
    JoopJoopJoop

    Je kan beter geen “teringzooi” op je computer zetten.

    Dat zou jij toch moeten weten…..

    • Deze reactie is gewijzigd 1 maand, 1 week geleden door JoopJoopJoop.
    Bijdrager
    Buzz

    Je kan het beste gewoon gebruik maken van homebrew of macports voor alle eigen projecten, of van iets als rvm (ruby) en conda (python) als je meerdere environments nodig hebt voor deze programmeertalen (klinkt alsof dat bij jou niet zo is). Bij installatie past deze software je path aan. Enige waar je op moet letten is dat je niet homebrew en macports door elkaar gebruikt.

    De systeemsoftware kan je voor je eigen projecten beter niet gebruiken, simpelweg omdat je dan een aantal jaar achter loopt en soms gedoe hebt bij systeem upgrades.

    Inactief
    Anoniem

    Homebrew 👊

    Bijdrager
    Shmoo

    Ik heb altijd maar één versie nodig – de meest actuele. Ik hou er ook van dat al dit soort software + hun packages en gems up to date blijven. Dat vind ik belangrijk.

     

    Maar kun je Homebrew voor alles gebruiken?

     

    Waar ik nu vaak tegenaan loop is dat stel je Googelt op ‘Ruby installeren Mac’. Dan kom je waarschijnlijk bij de StackOverflow uit en daar zegt iemand. Gebruikt: Homebrew OF RVM.

    Prima, dan zit je vast in de juiste richting en na een uurtje dollen krijg je het functionerend als leek maar je leert of begrijpt niet wat je gedaan hebt. Lullig maar zo werkt het vaak wel.

     

    Daarna heb je Node.js en NPM nodig. Dan zoek je weer met Google …. kom je op de website van Node.js uit en daar druk je op de knop Download. Een mooie installer is gemaakt voor macOS om het proces te vereenvoudigen. Activeer de installer, je doorloopt het installatiescherm zoals je elke andere app (MAMP) waarschijnlijk op je computer installeert en klaar. Als je geluk hebt krijg je geen foutmelding en kun je je ding gaan doen met Node en NPM.

     

    Zie je waar ik naar toe wil, ik heb nu drie verschillende talen geïnstalleerd op mijn systeem in twee totaal verschillende workflows en nergens heb ik ook maar een idee gekregen wat er op mijn systeem gaande was. En het lullig is, dit is een voorbeeld in een ideale wereld. Das niet waarin ik leef. Als ik dit soort dingen ga doen dan kan ik iets installeren. Krijg ik een melding dat alles goed is verlopen, yay, feest. En dan twee weken later wil een gem of package updaten en dan krijg ik dat heel gezeik weer met permissies die niet kloppen, bepaalde bundles die niet geïnstalleerd kunnen worden vanwege schrijfrechten maar 94% van het gedoe wel, behalve dat ene pakketje.

     

    Dan word ik echt witheet. Hier gaat vaak meer tijd in zitten dan een website bouwen. Als het eenmaal is geïnstalleerd en ik kan gewoon mijn updates uitvoeren dan blijft het ook gewoon functioneren.

     

    Wat ik wil is dus een soort cheatsheet maken met de meest voorkomende Brew commando’s die je nodig hebt om te kunnen installeren en updaten. Deze plaats ik op een Prikbord zodat ik ze makkelijk kan raadplegen en copy/pasten, na een tijdje zal je deze gewoon uit je hoofd leren en heb je voldoende basis. Zolang je maar bij Homebrew (dit voorbeeld) blijft.

     

    En het systeem moet natuurlijk weten dat als ik Ruby wil gebruiken dat het Ruby van Homebrew neemt en niet de Ruby die macOS/Apple, zodat je geen conflicten krijgt.

     

     

    Bijdrager
    Shmoo

    Oké deze site is wel een betrouwbare partij volgens mij.

    Installing Homebrew on macOS Catalina 10.15, Package Manager for Linux Apps

     

    Homebrew staat nu op beide machine – stap voor stap zodat ik op beide machines hetzelfde doe.

    – Eerst Command Line Tools geïnstalleerd (heb je altijd wel nodig)

    – Homebrew

     

    Daarna heb ik brew doctor gedaan om te kijken of alles oké was en ruby -v om te kijken welke versie er nu actief is (Apple).  Prima.

     

    Dus als ik nu brew install ruby doe, installeer ik Ruby buiten de SIP structuur van Apple en in het Homebrew gedeelte.

     

    Dan krijg ik dit. Hier gaat het altijd mis. Want met zo’n Symlink zeg je volgens mij tegen het systeem, elke keer als iemand Ruby wil gebruiken –> gebruik de Homebrew Ruby versie. Toch?

     

    Volgens mij moet ik nu dus die hele regel binnen het rode met:  echo ‘export PATH=…….  overnemen en uitvoeren om zo’n symlink te maken.

     

    Bijdrager
    TheBigZ

    Hoe je je PATH kunt uitbreiden is eerder besproken in een vorig topic van je:

     

    NPM install – permissies gezeik is weer begonnen

     

     

     

    Bijdrager
    Shmoo

    Volgens mij heb ik hem nu ingesteld. Als ik nu ruby -v type dan krijg ik 2.6.5 standaard (Apple) was 2.6.3

     

     

     

    Ik krijg nu ook twee versies te zien.

     

    Al weet ik nog steeds niet of ik nu ook iets moet doen met dat ‘brew link’ gebeuren. Ik krijg nog steeds de Refusing to link warning.

     

    Bijdrager
    Shmoo

    Eigenlijk is het wel gewoon van de gekke. Een hele dag met deze onzin bezig geweest en het werkt nog steeds niet zoals het hoort. Ben vandaag in totaal drie keer een half uurtje buiten geweest om met de hond te wandelen – het enige positieve is dat ik niets gegeten heb vandaag.

     

     

    Hopelijk krijg ik het morgen nog allemaal geïnstalleerd. Maandag een interview bij een bedrijf en ik dacht, vrijdag macOS upgraden en alles opnieuw instellen, het weekend om iets te bouwen dat ik kan laten zien. Dat laatste gaat sowieso al niet door, weg weekend.

     

     

     

    Bijdrager
    Jakko Westerbeke

    <p class=”cite”>Shmoo op 7 december 2019 om 15:48</p>
    Zie je waar ik naar toe wil, ik heb nu drie verschillende talen geïnstalleerd op mijn systeem

    Ruby en welke twee andere dan nog?

     

    Afgezien daarvan zie ik niet waarom het zo;n ramp is dat je deze software op verschillende manieren moet installeren. dat doe je één keer en dan ben je klaar (tot de volgende macOS-versie, dan mag je weer opzoeken hoe het ook alweer moet :)).

    <p class=”cite”>Shmoo op 7 december 2019 om 21:02</p>
    Dan krijg ik dit. Hier gaat het altijd mis. Want met zo’n Symlink zeg je volgens mij tegen het systeem, elke keer als iemand Ruby wil gebruiken –> gebruik de Homebrew Ruby versie. Toch?

     

    Volgens mij moet ik nu dus die hele regel binnen het rode met:  echo ‘export PATH=…….  overnemen en uitvoeren om zo’n symlink te maken.

    Waar ik niet zo goed uitkom, is hoe jij kunt programmeren maar toch vastloopt op eenvoudige opdrachten als „Voer het volgende commando uit” …

     

    Er staat niet dat je op die manier „zo’n” symlink maakt, er staat dat als je de Homebrew-Ruby wilt gebruiken, je die opdracht moet geven om het pad naar de Homebrew-Ruby aan je $PATH-variabele toe te voegen. Wat die opdracht precies doet, is de definitie van $PATH opzoeken in het bestand ~/.zshrc (d.w.z. het configuratiebestand voor de Z shell in je thuismap) en er /usr/local/opt/ruby/bin: vóór zetten. Dat zorgt ervoor dat, wanneer je een opdracht geeft in de terminal, die eerst zal zoeken in /usr/local/opt/ruby/binof de opdracht daar te vinden is. Voor de meeste opdrachten maakt dat niks uit, maar wél als je ruby intikt: dat zal dan namelijk gevonden worden in die map, waardoor de shell niet uitkomt bij de standaardversie die Apple levert (en in /usr/sbin staat). Je kunt die laatste nog altijd wel gebruiken door de opdracht /usr/bin/ruby te geven.

    Bijdrager
    Shmoo

    Het is geïnstalleerd. Ruby, gems, bundler en jekyll.

     

    Is het raar gedacht om te denken dat het bovenste resultaat van de twee (ruby/gem) meer prioriteit heeft, zeg maar de default keuze is?

     

    ]

     

     

    Volgens mij moet dit ‘m zijn. Nu heb ik Ruby en Gems in /usr/local/ staan + een verwijzing naar deze in het .zshrc bestand.

     

    Dus als ik nu naar een bestaand project zou gaan (waar ik gebleven was) en daar het commando bundle update uitvoer dan zou het goed moeten komen. 🤞

     

     

     

    Bijdrager
    Shmoo

    Niet dus. ☹️

     

    gem install jekyll

    1 gem installed

     

    jekyll -v

    command not found: jekyll

     

    De gem locatie zit in het $PATH.

    Bijdrager
    feek

    Heb je nu wel of geen Homebrew geïnstalleerd ?

    en mocht je geen HomeBrew hebben geïnstalleerd, dan moet je volgens mij Jelyll als volgt installeren:

    gem install --user-install bundler jekyll

    Bijdrager
    TheBigZ

    Zie voor aanvullende informatie:

     

    https://jekyllrb.com/docs/installation/macos/

     

    Let ook op Mojave (en hoger) acties. (Zie link.)

    Inactief
    Anoniem

    Zeg @shmoo, was je hier een tijdje geleden ook niet mee aan het stoeien?

    Bijdrager
    Jakko Westerbeke

    <p class=”cite”>Shmoo op 8 december 2019 om 16:51</p>
    jekyll -v

    command not found: jekyll

    Wat komt er te staan als je whereis jekyll probeert?

    Bijdrager
    feek

    Inderdaad @TheBigZ voor 10.14+ is het anders

    Zojuist op mijn nieuwe Catalina installatie, gewoon out of the box en geen extra ruby install, met de volgende commando’s:

    sudo gem install bundler
    sudo gem install -n /usr/local/bin/jekyll
    
    

    Jekyll meteen up and running!

    Bijdrager
    Shmoo

    <p class=”cite”>koen op 8 december 2019 om 18:55</p>
    Zeg @shmoo, was je hier een tijdje geleden ook niet mee aan het stoeien?

    Zou je denken met zo’n titel? 🙄

18 berichten aan het bekijken - 1 tot 18 (van in totaal 18)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.