Live data from Hacker News

Using NetBSD’s pkgsrc everywhere I can

rubenerd.com

71–80 of 80 posts

Re: Using NetBSD’s pkgsrc everywhere I can

#71
post #35
post #21

Earlier quoted context omitted.

In addition to the valid criticisms in sibling comments: I don’t like that it changes the rules on file ownership in /opt and /usr/local. And it’s petty but I really don’t appreciate the beer brewing metaphor. It doesn’t fit and it feels forced. Giving the project a searchable name is fine but cutesy names are irritating when I have real work to do. Just name the tool and especially commands for what they do. I say t…

I still don’t understand why sometimes I must type “cask” and sometimes I must not type “cask”. No, I didn’t RTFM; I’m sure that would help, but I mostly just avoid homebrew when I can, and that’s worked out OK.

brew cask is a whole separate quasi-package management system built around pre-built macOS GUI applications distributed/installed as .app folders, same as you'd get downloading a .dmg from the web them doing a drag and drop install.

Think of it as an installer fetcher and runner, as opposed to a collection of integrated and uniformly built packages.

It's great, because downloading and running installers manually by clicking around sucks. But it's totally separate from the rest of Homebrew, which is a monorepo of build recipes targeting a separate base system, similar in that basic way to things like pkgsrc and FreeBSD Ports.

Re: Using NetBSD’s pkgsrc everywhere I can

#73
post #62

Earlier quoted context omitted.

Why are you comparing pkgsrc to pacman. The orginal comparison suggested in the parent comment was between xbps and nixpkgs or other Linux package managers. pkgsrc boostraps itself using a program called "boostrap" in the pkgsrc directory. It builds a version of NetBSD's GCC toolchain and has no reliance on the host's userland. IME, this is very reliable and is its single greatest strength. Beyond that, pkgsrc is onl…

> Why are you comparing pkgsrc to pacman. The original commented suggested that XBPS was similar to pkgsrc. I suggested that XBPS has far more in common with Arch Linux's package manager than pkgsrc or anything else in the BSD world. As you yourself note in your next paragraph... > Your comments do not sound like those of a daily NetBSD user. I have commit access. Since three years ago. My name is on the latest relea…

That's not nice and totally uncalled for. Three years is a very short time.

The original comment did not compare xbps to BSD package managers. What it said was that xbps was written by a former NetBSD developer and thus arguably has different qualities than other Linux package managers. It is a different approach from someone with different sensibilities than a Linux developer. I have read comments from Void Linux mantainers and users that say more or less the same thing.

Re: Using NetBSD’s pkgsrc everywhere I can

#74
post #41
post #15

Earlier quoted context omitted.

I dislike it because it’s really slow to do everything. Even printing help text is slow. Contrast with pacman on Arch, which is incredibly fast at nearly every operation. Unfortunately I’ve found all the package managers for macOS to be lacking. brew is slow, but has packages for most things and generally up to date. fink packages seem a bit out dated last I checked. At least the ones I cared about. MacPorts is also…

Nix is probably the slowest and is missing many packages. It's Kool-Aid for the cool kids. MacPorts was good until everyone started using Homebrew. Homebrew has some weird quirks that drive me crazy, but it mostly works and is up to date. I tried pkgsrc and liked it, but a few common packages were weirdly named and it didn't have some Mac specific stuff. Some new package manager that's a mix of pkgsrc, brew, and MacP…

tl;dr: Homebrew actually takes several times as long to install packages as Nix does, and uses up way more space despite a less isolated toolchain.

Now that I'm on my Ubuntu system, I can easily test Nix and Homebrew side-by-side.

To make it fair, I've removed almost everything I have installed with Nix, as well as Homebrew. Interestingly, Homebrew is using ~2x as much disk space, and listing my installed packages (none) with Homebrew takes ~30x as long as with Nix:

    ~ 
    du -hsxc /nix/store /home/linuxbrew
    238M /nix/store
    584M /home/linuxbrew
    822M total

    ~ 
    time nix profile list

    ________________________________________________________
    Executed in   19.88 millis    fish           external
        usr time   11.21 millis  174.00 micros   11.04 millis
        sys time   11.18 millis  141.00 micros   11.04 millis

    ~ 
    time sudo -H nix profile list
    0 flake:nixpkgs#legacyPackages.x86_64-linux.nixFlakes github:NixOS/nixpkgs/b2f2d04f01b3de3abad0dd9bc48ad7a3ee32bbc6#legacyPackages.x86_64-linux.nixFlakes /nix/store/g4xva7x46h5bqqh811n12dzjc7325x21-nix-2.4pre20210326_dd77f71
    1 flake:nixpkgs#legacyPackages.x86_64-linux.starship github:NixOS/nixpkgs/b2f2d04f01b3de3abad0dd9bc48ad7a3ee32bbc6#legacyPackages.x86_64-linux.starship /nix/store/5n36vabqg701l9nji30m1r004zcy4q0w-starship-0.51.0

    ________________________________________________________
    Executed in   29.91 millis    fish           external
        usr time   27.30 millis  380.00 micros   26.92 millis
        sys time    4.72 millis  283.00 micros    4.43 millis

    ~ 
    time brew list
    ==> Formulae

    ________________________________________________________
    Executed in  881.81 millis    fish           external
        usr time  527.24 millis  411.00 micros  526.83 millis
        sys time  173.15 millis  298.00 micros  172.85 millis
Homebrew takes about twice as long to search for packages related to Libreoffice (results omitted to HN won't tell me this post is too long):

    ~ 
    time nix search nixpkgs libreoffice >/dev/null

    ________________________________________________________
    Executed in  554.37 millis    fish           external
        usr time  537.39 millis  434.00 micros  536.95 millis
        sys time   16.44 millis  289.00 micros   16.15 millis

    ~ 
    time brew search libreoffice >/dev/null

    ________________________________________________________
    Executed in    1.33 secs      fish           external
        usr time  578.16 millis    0.00 micros  578.16 millis
        sys time  124.57 millis  367.00 micros  124.20 millis
I had some trouble looking for large packages to install with Homebrew and Nix for comparison. It seems that GUI apps (Libreoffice, Firefox, etc.) tend to be packaged exclusively as casks for Homebrew, which means they don't exist on Linux. So instead, I selected a handful of packages from the Linux formulas list[1] that I figured would pull in a substantive dependency closure. Apparently there's no bottle for Crystal, so it took a very long time to install because it had to compile from source. Prior to that, though, installation crashed because of a ulimits issue when ‘pouring the bottle’ for LLVM:

    ~
    time brew install imagemagick bat feh crystal python mruby
    ==> Downloading https://ghcr.io/v2/linuxbrew/core/zlib/manifests/1.2.11
    ######################################################################## 100.0%
    ==> Downloading https://ghcr.io/v2/linuxbrew/core/zlib/blobs/sha256:6f604280b9e056da163b81cef3076b2e39bbd2b8d3cc8c36d27c19c472c760a4
    ==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:6f604280b9e056da163b81cef3076b2e39bbd2b8d3cc8c36d27c19c472c760a4?se=20
    ######################################################################## 100.0%
    ==> Downloading https://ghcr.io/v2/linuxbrew/core/libpng/manifests/1.6.37
    ######################################################################## 100.0%
    ==> Downloading https://ghcr.io/v2/linuxbrew/core/libpng/blobs/sha256:c5d219b27780c730af50693110ed2c79e50200d3595c7e395998fe3950354ec9
    ==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:c5d219b27780c730af50693110ed2c79e50200d3595c7e395998fe3950354ec9?se=20
    ######################################################################## 100.0%
    ==> Downloading https://ghcr.io/v2/linuxbrew/core/bzip2/manifests/1.0.8-1
    ######################################################################## 100.0%
    
    ==> Installing crystal dependency: llvm@9
    ==> Pouring llvm@9--9.0.1_5.x86_64_linux.bottle.tar.gz
    Error: Too many open files @ rb_sysopen - /home/linuxbrew/.linuxbrew/Cellar/llvm@9/9.0.1_5/bin/llvm-jitlink

    ________________________________________________________
    Executed in  600.02 secs    fish           external
        usr time  203.24 secs  479.00 micros  203.24 secs
        sys time   70.80 secs  313.00 micros   70.80 secs

I decided to re-run the brew install command, but skip Crystal, which only took a few more seconds:

    ~
    time brew install imagemagick bat feh python mruby
            
    ==> Installing mruby
    ==> Pouring mruby--3.0.0.x86_64_linux.bottle.tar.gz
    /home/linuxbrew/.linuxbrew/Cellar/mruby/3.0.0: 323 files, 14.7MB

    ________________________________________________________
    Executed in   20.18 secs    fish           external
        usr time    9.56 secs    0.00 micros    9.56 secs
        sys time    3.06 secs  761.00 micros    3.06 secs

    I left Crystal in when I tested Nix, since I knew it would be no problem, and Nix was done in ~36 seconds, meaning Homebrew ~17x the time, skipping one package entirely.

    After the two install operations, Homebrew was using several more gigabytes of storage than Nix:

    du -hsxc /nix/store /home/linuxbrew
    2.0G /nix/store
    4.9G /home/linuxbrew
    6.8G total
I'll reply to this comment with a ‘warmed-up’ test of installing a single additional package, as well. But it seems pretty clear already that it's misleading at best to characterize Homebrew as faster than Nix.

1: https://formulae.brew.sh/formula-linux/

Re: Using NetBSD’s pkgsrc everywhere I can

#75
post #74
post #41

Earlier quoted context omitted.

Nix is probably the slowest and is missing many packages. It's Kool-Aid for the cool kids. MacPorts was good until everyone started using Homebrew. Homebrew has some weird quirks that drive me crazy, but it mostly works and is up to date. I tried pkgsrc and liked it, but a few common packages were weirdly named and it didn't have some Mac specific stuff. Some new package manager that's a mix of pkgsrc, brew, and MacP…

tl;dr: Homebrew actually takes several times as long to install packages as Nix does, and uses up way more space despite a less isolated toolchain. Now that I'm on my Ubuntu system, I can easily test Nix and Homebrew side-by-side. To make it fair, I've removed almost everything I have installed with Nix, as well as Homebrew. Interestingly, Homebrew is using ~2x as much disk space, and listing my installed packages (n…

Now for a single-package ‘warmed up’ test, and some cleanup on both sides to see what the total installed size looks like after autoremoval of orphaned dependencies, build-time dependencies, etc.

Installing one package with Homebrew, where the whole dependency closure is bottled, no building from source:

    ~ 
    time brew install graphicsmagick
    ==> Downloading https://ghcr.io/v2/linuxbrew/core/libxfixes/manifests/5.0.3
    ######################################################################## 100.0%
    ==> Downloading https://ghcr.io/v2/linuxbrew/core/libxfixes/blobs/sha256:3aaba846570380f7dbf5cf7f93280866318a7730c9c5fd38fd1ad275aec037bd
    
    ==> Pouring freeglut--3.2.1_5.x86_64_linux.bottle.tar.gz
    /home/linuxbrew/.linuxbrew/Cellar/freeglut/3.2.1_5: 20 files, 1.3MB
    ==> Installing graphicsmagick dependency: jasper
    ==> Pouring jasper--2.0.32.x86_64_linux.bottle.tar.gz
    /home/linuxbrew/.linuxbrew/Cellar/jasper/2.0.32: 40 files, 1.1MB
    ==> Installing graphicsmagick
    ==> Pouring graphicsmagick--1.3.36.x86_64_linux.bottle.tar.gz
    /home/linuxbrew/.linuxbrew/Cellar/graphicsmagick/1.3.36: 497 files, 14.7MB

    ________________________________________________________
    Executed in  362.04 secs    fish           external
        usr time   56.32 secs  603.00 micros   56.32 secs
        sys time   20.00 secs  383.00 micros   20.00 secs
Installing the same package with Nix:

    ~ 
    time nix profile install nixpkgs#graphicsmagick

    ________________________________________________________
    Executed in   11.58 secs      fish           external
        usr time  701.80 millis  500.00 micros  701.30 millis
        sys time  310.06 millis  319.00 micros  309.74 millis
So in terms of time, they're not really in the same ballpark. Nix is operating in ‘wait a few seconds’ time, and Homebrew is operating in ‘go make yourself a cup of coffee and come back’ time.

And after running `brew cleanup` and `brew autoremove`, then `nix-collect-garbage` and `nix-store --optimize`:

    ~
    du -hsxc /nix/store /home/linuxbrew
    1.9G /nix/store
    3.9G /home/linuxbrew
    5.8G total
Listing installed packages now:

    ~ 
    time brew list
    ==> Formulae
    aom      fontconfig      imagemagick  libelf libmpc    libx11       libxshmfence  mesa-glu   python@3.9      xinput
    bat      freeglut      imath   libev  libomp    libxau       libxslt      mpdecimal   readline      xmlto
    binutils     freetype      imlib2   libexif libpciaccess   libxcb       libxt      mpfr   rtmpdump      xorgproto
    bison      gcc      isl   libffi libpng    libxdamage   libxv      mruby   ruby       xz
    brotli      gdbm      jasper   libgcrypt libpthread-stubs  libxdmcp     libxvmc      ncurses   shared-mime-info   zlib
    bzip2      gettext      jbig2dec   libgpg-error libsm    libxext      libxxf86vm    nghttp2   sqlite      zstd
    c-ares      ghostscript     jemalloc   libheif libssh2    libxfixes    libyaml      openexr   unzip
    curl      giflib      jpeg   libice libtiff    libxi        little-cms2   openjpeg   util-linux
    docbook      glib      krb5   libidn libtool    libxinerama  llvm      openldap   wayland
    docbook-xsl  gmp      libde265   libidn2 libunistring   libxml2      lm-sensors    openssl@1.1  wayland-protocols
    expat      gnu-getopt      libdrm   liblqr libva    libxrandr    m4      pcre   webp
    feh      graphicsmagick  libedit   libmetalink libvdpau   libxrender   mesa      pkg-config   x265

    ________________________________________________________
    Executed in  580.23 millis    fish           external
        usr time  478.15 millis    0.00 micros  478.15 millis
        sys time  108.59 millis  759.00 micros  107.83 millis

    ~ 
    time nix profile list
    0 flake:nixpkgs#legacyPackages.x86_64-linux.imagemagick github:NixOS/nixpkgs/b2f2d04f01b3de3abad0dd9bc48ad7a3ee32bbc6#legacyPackages.x86_64-linux.imagemagick /nix/store/5ps3bydsjiqgycbzg2cxkwyz50m4rga7-imagemagick-7.0.11-6
    1 flake:nixpkgs#legacyPackages.x86_64-linux.bat github:NixOS/nixpkgs/b2f2d04f01b3de3abad0dd9bc48ad7a3ee32bbc6#legacyPackages.x86_64-linux.bat /nix/store/0lyhwrmf3nbadavaq3ixfndhiaw3b86l-bat-0.18.0
    2 flake:nixpkgs#legacyPackages.x86_64-linux.feh github:NixOS/nixpkgs/b2f2d04f01b3de3abad0dd9bc48ad7a3ee32bbc6#legacyPackages.x86_64-linux.feh /nix/store/sy0xxs6lbvwhidg5dlj6ckwik2mn3b6l-feh-3.6.3
    3 flake:nixpkgs#legacyPackages.x86_64-linux.crystal github:NixOS/nixpkgs/b2f2d04f01b3de3abad0dd9bc48ad7a3ee32bbc6#legacyPackages.x86_64-linux.crystal /nix/store/fbnk8kwbllsn2m60d43y2cfqpwbw5pk4-crystal-1.0.0
    4 flake:nixpkgs#legacyPackages.x86_64-linux.python github:NixOS/nixpkgs/b2f2d04f01b3de3abad0dd9bc48ad7a3ee32bbc6#legacyPackages.x86_64-linux.python /nix/store/pp0fp5zds7wqhyx6zqnnxl2aqzf4a51r-python-2.7.18
    5 flake:nixpkgs#legacyPackages.x86_64-linux.graphicsmagick github:NixOS/nixpkgs/b2f2d04f01b3de3abad0dd9bc48ad7a3ee32bbc6#legacyPackages.x86_64-linux.graphicsmagick /nix/store/fm7fa16blb4xadsxxagxy0vfmhrjqns0-graphicsmagick-1.3.36

    ________________________________________________________
    Executed in   25.18 millis    fish           external
        usr time   18.24 millis  452.00 micros   17.79 millis
        sys time    9.17 millis  279.00 micros    8.89 millis
Nix's output is a mess, visually, and that'll change in the future. But note that it doesn't bother me with the whole dependency closure, and instead tracks what I actually wanted to install.

Finally, a removal test. I'll uninstall everything but graphicsmagick, with both package managers.

    time brew remove imagemagick bat feh python mruby
    Error: Refusing to uninstall /home/linuxbrew/.linuxbrew/Cellar/python@3.9/3.9.5
    because it is required by freeglut, glib, graphicsmagick, jasper, libheif, liblqr, llvm, mesa, mesa-glu and shared-mime-info, which are currently installed.
    You can override this and force removal with:
    brew uninstall --ignore-dependencies imagemagick bat feh python mruby
Oops. A second try, since Homebrew put me in dependency hell because it doesn't know the difference between what's installed as a dependency and what I explicitly asked it to install (I thought this functionality was needed to implement `brew autoremove`??).

    ~ 
    time brew remove --ignore-dependencies imagemagick bat feh python mruby
    Uninstalling /home/linuxbrew/.linuxbrew/Cellar/imagemagick/7.0.11-13_2... (805 files, 31.4MB)
    Uninstalling /home/linuxbrew/.linuxbrew/Cellar/bat/0.18.1... (12 files, 5.5MB)
    Uninstalling /home/linuxbrew/.linuxbrew/Cellar/feh/3.7... (26 files, 716.9KB)
    Uninstalling /home/linuxbrew/.linuxbrew/Cellar/python@3.9/3.9.5... (2,650 files, 76.9MB)
    Uninstalling /home/linuxbrew/.linuxbrew/Cellar/mruby/3.0.0... (323 files, 14.7MB)

    ________________________________________________________
    Executed in    1.11 secs      fish           external
        usr time  874.06 millis  420.00 micros  873.64 millis
        sys time  224.91 millis  261.00 micros  224.65 millis

    ~ 
    time brew autoremove
    
    Uninstalling /home/linuxbrew/.linuxbrew/Cellar/libgpg-error/1.42... (48 files, 1.8MB)

    ________________________________________________________
    Executed in    3.35 secs    fish           external
        usr time    2.51 secs  424.00 micros    2.51 secs
        sys time    0.82 secs  261.00 micros    0.82 secs
Nice and fast. :)

Now for Nix:

    ~ 
    time begin
    nix profile remove '.\*'
    nix profile install nixpkgs#graphicsmagick
        end

    ________________________________________________________
    Executed in    2.99 secs      fish           external
        usr time  499.04 millis  871.00 micros  498.17 millis
        sys time  126.67 millis  527.00 micros  126.14 millis
Not as fast, because I garbage-collected the evaluation of Nixpkgs itself, so it fetched and re-evaluated that. (Also I did this in a weird way because the UI for the `nix profile` command is incomplete and still kinda clunky.)

I also need to clean up with Nix:

    ~ 
    time nix-collect-garbage -d
    removing old generations of profile /nix/var/nix/profiles/per-user/pxc/profile
    removing generation 49
    
    deleting '/nix/store/znvl3v02hy8ffkhwc6m9z1q5pj8j6ppj-setup-hook.sh'
    deleting '/nix/store/trash'
    deleting unused links...
    note: currently hard linking saves -1.14 MiB
    188 store paths deleted, 1574.20 MiB freed

    ________________________________________________________
    Executed in    1.23 secs      fish           external
        usr time   14.30 millis  160.00 micros   14.14 millis
        sys time   10.70 millis   96.00 micros   10.60 millis

    And after cleanup, the usage:
    ~ 
    du -hsxc /nix/store /home/linuxbrew
    412M /nix/store
    3.2G /home/linuxbrew
    3.6G total
Is there a cleanup command I've missed for Homebrew?

Performance considerations aren't really among my main concerns when it comes to package management, so I didn't mention them in my original post about what's ‘wrong’ with Homebrew. But I'd have to add it now.

Re: Using NetBSD’s pkgsrc everywhere I can

#76
post #66

Earlier quoted context omitted.

How are you handling the read only root folder with nix?

You mean for installation on macOS? For current versions of Nix and macOS, you just invoke the installer with an additional command-line flag at installation time, per the manual[1]: sh I don't remember whether I actually did this on my system. I think I manually created an additional volume for /nix, but encrypted it. That approach is also now described in the manual, should you prefer it.[2] (Unencrypted should be…

Thanks. The first and last option seem to be the same, no?

Re: Using NetBSD’s pkgsrc everywhere I can

#77
post #72

I wish there was a package manager for kde and konqueror for the mac

There's a Homebrew tap for KDE! I'm not sure what the present state of it is, but it's here if you wanna try it out: https://invent.kde.org/packaging/homebrew-kde

Thanks. I'll look in to this.

Re: Using NetBSD’s pkgsrc everywhere I can

#78
post #52

Earlier quoted context omitted.

pkgsrc does work on Linux, but pkgin does not. I have no idea how to update my mirror and so forth using pkgsrc alone. Do not I need pkgin? I cannot do `pkg_add` at all. I tried to make pkgin work, too, and I think it is possible to make it work with libbsd but I do not have the time. I wonder if anyone has done it.

I am the pkgin maintainer, and would be interested to hear about any issues you have building pkgin. It should build on any of the 23 platforms that pkgsrc supports, including Linux. I even offer daily binary package builds for CentOS here: https://pkgsrc.joyent.com/install-on-linux/ Feel free to open up an issue at https://github.com/NetBSDfr/pkgin/issues and we can take a look.

I am trying to compile it from source on Linux.

I immediately ran into an annoying issue, which is having the need to specify those directories manually. So I did, and the configure finished successfully when I ran:

  ./configure --prefix=/home/john/.local/pkg/pkgin-20210529 --with-dbdir=/usr/ --with-libarchive=/usr/ --with-libfetch=/home/john/Downloads/libfetch-2.33 --with-openssl=/usr/ --with-sqlite3=/usr/ --with-pkg-install=/home/john/.local/pkg/pkgsrc-2021Q1/sbin/ --with-machine-arch=x86_64
When I ran `make`, I ran into:

  actions.c: In function ‘verb_flag’:
  actions.c:53:3: error: implicit declaration of function ‘strlcat’; did you mean ‘strncat’? [-Werror=implicit-function-declaration]
     53 |   strlcat(pkgtools_flags, "v", 1);
        |   ^~~~~~~
        |   strncat
Which tells me that I could fix it by providing `-I/usr/include/bsd/` and `-lbsd` or the like. I will give it a go. Any ideas anyway?

Edit: I added the above, and it went on to:

  In function ‘strncpy’,
      inlined from ‘read_repos’ at fsops.c:133:6:
  /usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:10: error: ‘__builtin_strncpy’ specified bound 8192 equals destination size [-Werror=stringop-truncation]
    106 |   return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
        |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This does not sound too good, you probably want to fix it (along with the other warnings on Linux). In any case, I got rid of `-Werror` and I have a couple of undefined references. I will most likely get it to work, but you see my issue here, right? Is it the "official" way to compile it from source by the way?

Edit #2: I got a working binary by making those changes[1]. Last few lines:

   CCLD     pkgin
  /usr/bin/ld: external/pkgin-var.o: in function `var_get':
  /tmp/pkgin/external/var.c:99: warning: This function cannot be safely ported, use getline(3) instead, as it is supported by GNU and POSIX.1-2008.
  make[1]: Leaving directory '/tmp/pkgin'
---

You might want to look into compiling it on Linux, because without those changes[1], you cannot do it. I was using commit e963d1e1a2409ed51d191d936b5f75e35bdf9197, version 20.12.1.

[1] You also have to include `` for `strlcpy` on Linux. Only `actions.c` is affected.

---

If you want, I am willing to send you an e-mail with the diff, but I will fix the other warnings, too, then. Oh, and instead of relying on `libbsd`, one could just add `strlcpy` and the like themselves.

---

By the way, from where do I get the `repositories.conf` exactly? The supplied `repositories.conf` seems outdated. I tried using both `ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/$arch/5.1/All` and `http://mirror-master.dragonflybsd.org/packages/$arch/DragonF...`, but they were not working.

Hmm, I tried to use a working one, but I got this:

  processing remote summary (https://pkgsrc.joyent.com/packages/Linux/el7/trunk/x86_64/All)...
  SSL support disabled
  SSL support disabled
  SSL support disabled
  pkgin: Could not fetch https://pkgsrc.joyent.com/packages/Linux/el7/trunk/x86_64/All/pkg_summary.gz
I am currently using `file://` that points to the manually downloaded `pkg_summary.gz`. Not sure why SSL support is disabled when I configured it, it specifically asked for it, and I provided it through `--with-openssl=/usr/` and it passed because it found it.

Re: Using NetBSD’s pkgsrc everywhere I can

#79
post #52

Earlier quoted context omitted.

I am the pkgin maintainer, and would be interested to hear about any issues you have building pkgin. It should build on any of the 23 platforms that pkgsrc supports, including Linux. I even offer daily binary package builds for CentOS here: https://pkgsrc.joyent.com/install-on-linux/ Feel free to open up an issue at https://github.com/NetBSDfr/pkgin/issues and we can take a look.

I am trying to compile it from source on Linux. I immediately ran into an annoying issue, which is having the need to specify those directories manually. So I did, and the configure finished successfully when I ran: ./configure --prefix=/home/john/.local/pkg/pkgin-20210529 --with-dbdir=/usr/ --with-libarchive=/usr/ --with-libfetch=/home/john/Downloads/libfetch-2.33 --with-openssl=/usr/ --with-sqlite3=/usr/ --with-pkg…

  http://ftp.fr.netbsd.org/pub/pkgsrc/packages/NetBSD/amd64/7.1/All/
seems to work!

Although I do get:

  pkg_add: Warning: package `bootstrap-mk-files-20180901' was built for a platform:
  pkg_add: NetBSD/x86_64 7.0 (pkg) vs. Linux/x86_64 5.8.0 (this host)
So how would I remedy this for Linux? I want to use "https://pkgsrc.joyent.com/packages/Linux/el7/trunk/x86_64/Al..." but I get "SSL support disabled". I will debug this I think.

---

I fixed it. I had to compile libfetch with `-DWITH_SSL'.

---

All in all, there are many problems that I ran into, but nothing that much of a big deal.

---

There is one problem I cannot seem to fix:

  pkg_add: unable to verify signature: Signature key id 4735b9a256aaacaf not found
I keep getting this, and I have no clue how to change it or where it came from. Without this, nothing actually gets installed, so I cannot use pkgin or pkg_* until this is resolved. Do you have any clue? I tried to look for anything to change in pkg_install.conf or mk.conf but to no avail. Any ideas?

Re: Using NetBSD’s pkgsrc everywhere I can

#80
post #75
post #74

Earlier quoted context omitted.

tl;dr: Homebrew actually takes several times as long to install packages as Nix does, and uses up way more space despite a less isolated toolchain. Now that I'm on my Ubuntu system, I can easily test Nix and Homebrew side-by-side. To make it fair, I've removed almost everything I have installed with Nix, as well as Homebrew. Interestingly, Homebrew is using ~2x as much disk space, and listing my installed packages (n…

Now for a single-package ‘warmed up’ test, and some cleanup on both sides to see what the total installed size looks like after autoremoval of orphaned dependencies, build-time dependencies, etc. Installing one package with Homebrew, where the whole dependency closure is bottled, no building from source: ~ time brew install graphicsmagick ==> Downloading https://ghcr.io/v2/linuxbrew/core/libxfixes/manifests/5.0.3 ###…

I don't even like Homebrew, but I use it because of the network effect. Several years ago I tried a bunch of package managers in identical VMs on MacOS and noticed Nix was slower than all the others (all operations), missing packages, and some packages were broken. During that experiment I really liked pkgsrc, Homebrew didn't have a few things I needed and outright refused to install TeX Live (it literally said it was too hard to build). I stuck with MacPorts for a few years until MacPorts started having many broken packages from lack of maintainers, then I reluctantly switched to Homebrew.
Post reply on HN