InfiniTimeOrg / InfiniTime

Firmware for Pinetime smartwatch written in C++ and based on FreeRTOS
GNU General Public License v3.0
2.64k stars 903 forks source link

Nodesource script is deprecated #1846

Closed blm768 closed 6 months ago

blm768 commented 10 months ago

Verification

Introduce the issue

The dev container pulls in https://deb.nodesource.com/setup_18.x. Running that script produces a deprecation notice:/

================================================================================
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
================================================================================

                           SCRIPT DEPRECATION WARNING                    

  This script, located at https://deb.nodesource.com/setup_X, used to
  install Node.js is deprecated now and will eventually be made inactive.

  Please visit the NodeSource distributions Github and follow the
  instructions to migrate your repo.
  https://github.com/nodesource/distributions

  The NodeSource Node.js Linux distributions GitHub repository contains
  information about which versions of Node.js and which Linux distributions
  are supported and how to install it.
  https://github.com/nodesource/distributions

                          SCRIPT DEPRECATION WARNING

================================================================================
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
================================================================================

I don't know if this is related, but on my machine, the dev container is somehow missing npm. I'm not sure how the rest of the dev container can build if this step is failing, so that's pretty weird. My system might just be special, though. Running the script manually in the container does let me install npm.

Preferred solution

No response

Version

v1.13.0

blm768 commented 10 months ago

Ah, I was looking at the wrong Dockerfile. That'd explain why the dev container didn't have NPM; it just wasn't installing it.

FintasticMan commented 10 months ago

Yeah, the devcontainer is very outdated

blm768 commented 10 months ago

While it was up to date, did it have reasonable usability? I ask because I'm working on NixOS, which makes it kind of clunky to install all the dependencies via apt. There are various things I can try with the main Dockerfile and/or systemd-machined if the dev container was abandoned due to usability issues.

FintasticMan commented 10 months ago

The Dockerfile in the docker directory is up to date, and is used for the CI builds. There is a PR that merges the devcontainer with the main Dockerfile, see #1587. I've never used the devcontainer myself, so I can't attest to how well it worked, but I think the reason it was left untouched was just because none of the core developers use it to keep it up to date.

blm768 commented 10 months ago

Ooh, nice! I'll see if I can get things to build on top of that PR locally. If it looks like the PR's going to stall out, I could try to stack some fixes on it to address the outstanding issues.

JF002 commented 6 months ago

Fixed in #1849.