Package Details: ttf-octicons 19.12.0-3

Git Clone URL: https://aur.archlinux.org/ttf-octicons.git (read-only, click to copy)
Package Base: ttf-octicons
Description: A scalable set of icons handcrafted with <3 by GitHub
Upstream URL: https://octicons.github.com/
Keywords: font octicons ttf
Licenses: MIT
Submitter: WhittlesJr
Maintainer: clebermatheus
Last Packager: clebermatheus
Votes: 6
Popularity: 0.130461
First Submitted: 2017-04-27 00:48 (UTC)
Last Updated: 2024-11-10 01:17 (UTC)

Latest Comments

1 2 Next › Last »

clebermatheus commented on 2024-11-10 01:17 (UTC)

@dreieck thanks!!!

dreieck commented on 2024-11-07 17:17 (UTC)

Update:

  • Adding nodejs to makedepends,
  • removing the complete prepare() function,
  • removing from build() the calls _ensure_local_nvm and npm install makes it at least building for me (not falling into this issue from my last comment anymore).

From this you could start making the stuff work again, e.g. the download step which then occurs in build() should be moved back to prepare(), and all stuff that npm downloads should be downloaded to a sub directory of ${srcdir}.

Terminal output of the working build:

==> Starting build()...
(node:552) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
npm warn deprecated gauge@4.0.4: This package is no longer supported.
npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated are-we-there-yet@3.0.1: This package is no longer supported.
npm warn deprecated @npmcli/move-file@2.0.1: This functionality has been moved to @npmcli/fs
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated npmlog@6.0.2: This package is no longer supported.
npm warn deprecated @xmldom/xmldom@0.7.13: this version is no longer supported, please update to at least 0.8.*
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated glob@8.1.0: Glob versions prior to v9 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated glob@8.1.0: Glob versions prior to v9 are no longer supported

added 195 packages in 4m

20 packages are looking for funding
  run `npm fund` for details
(node:1803) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
(node:1815) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
Generating font kit...
✔ 643 SVGs found in octicons-19.12.0/icons
✔ Generated font/octicons.ttf
✔ Generated font/octicons.css
✔ Generated font/octicons.html
✔ Generated font/octicons.json
✔ Generated font/octicons.ts
Done

Regards!

dreieck commented on 2024-11-07 16:31 (UTC)

With the node version 16.0.0 that gets downloaded "manually", build fails since it expects a lower python version:

==> Starting prepare()...
Downloading and installing node v16.0.0...
Downloading https://nodejs.org/dist/v16.0.0/node-v16.0.0-linux-x64.tar.xz...
######################################################################################################################################                                                          70.8%curl: (92) HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1)

Binary download from https://nodejs.org/dist/v16.0.0/node-v16.0.0-linux-x64.tar.xz failed, trying source.
grep: /var/cache/makepkg/build/ttf-octicons/src/.nvm/.cache/bin/node-v16.0.0-linux-x64/node-v16.0.0-linux-x64.tar.xz: No such file or directory
Provided file to checksum does not exist.
Binary download failed, trying source.
Detected that you have 16 CPU core(s)
Running with 15 threads to speed up the build
Clang v3.5+ detected! CC or CXX not specified, will use Clang as C/C++ compiler!
Local cache found: ${NVM_DIR}/.cache/src/node-v16.0.0/node-v16.0.0.tar.xz
Checksums match! Using existing downloaded archive ${NVM_DIR}/.cache/src/node-v16.0.0/node-v16.0.0.tar.xz
$>./configure --prefix=/var/cache/makepkg/build/ttf-octicons/src/.nvm/versions/node/v16.0.0 <
Node.js configure: Found Python 3.12.7...
Please use python3.9 or python3.8 or python3.7 or python3.6.
nvm: install v16.0.0 failed!
==> ERROR: A failure occurred in prepare().

Regards!

dreieck commented on 2024-11-07 14:16 (UTC) (edited on 2024-11-07 14:17 (UTC) by dreieck)

Your downloaded source file is named v19.12.0.tar.gz.

On setups where $SRCDEST is set (e.g. in makepkg.conf), all downloaded sources end up in a single directory.

Such a generic source file name as you use is prone to conflicts (if another package also does this and by accident has the same version number -- I already encountered this).

So, can you make your downloaded source file please package name specific, by e.g. prepending ttf-octicons_ to it?

You can change
source=("https://github.com/primer/octicons/archive/v${pkgver}.tar.gz")
to

source=("${pkgname}_v${pkgver}.tar.gz::https://github.com/primer/octicons/archive/v${pkgver}.tar.gz")

to achieve this (prepend the desired local downloaded filename with :: to the download URL entry).

Regards and thanks for the package.

dreieck commented on 2024-10-13 10:47 (UTC) (edited on 2024-10-13 10:47 (UTC) by dreieck)

Instead of downloading node in prepare(), can it depend on the official Arch Linux node package, or if it needs a specific version, depend on a package of a specific version, e.g. nodejs16 (which might be needed to be made available on the AUR)?

Regards and thanks for the package!

==> Starting prepare()...
Downloading and installing node v16.0.0...
Downloading https://nodejs.org/dist/v16.0.0/node-v16.0.0-linux-x64.tar.xz...
####################                                                                                                                                                                            10.5%
[...]

Regards and thanks for the package!

clebermatheus commented on 2024-08-16 12:36 (UTC)

@gbin sorry, i forgot to fix this error.

gbin commented on 2024-04-05 13:45 (UTC) (edited on 2024-04-05 13:54 (UTC) by gbin)

It gives me this one:

==> Making package: ttf-octicons 19.9.0-1 (Fri 05 Apr 2024 08:38:34 AM CDT)
==> Retrieving sources...
  -> Found v19.9.0.tar.gz
==> Validating source files with sha256sums...
    v19.9.0.tar.gz ... Passed
==> Making package: ttf-octicons 19.9.0-1 (Fri 05 Apr 2024 08:38:35 AM CDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found v19.9.0.tar.gz
==> Validating source files with sha256sums...
    v19.9.0.tar.gz ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Extracting v19.9.0.tar.gz with bsdtar
==> Starting prepare()...
Downloading and installing node v16.0.0...
Downloading https://nodejs.org/dist/v16.0.0/node-v16.0.0-linux-x64.tar.xz...
##################################################################################################################################################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v16.0.0 (npm v7.10.0)
Creating default alias: default -> 16.0.0 (-> v16.0.0)
==> Sources are ready.
ttf-octicons-19.9.0-1: parsing pkg list...
==> Making package: ttf-octicons 19.9.0-1 (Fri 05 Apr 2024 08:38:42 AM CDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Removing existing $pkgdir/ directory...
==> Starting build()...

up to date, audited 1 package in 92ms

found 0 vulnerabilities
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'commander@12.0.0',
npm WARN EBADENGINE   required: { node: '>=18' },
npm WARN EBADENGINE   current: { node: 'v16.0.0', npm: '7.10.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'svgicons2svgfont@12.0.0',
npm WARN EBADENGINE   required: { node: '>=16.15.0' },
npm WARN EBADENGINE   current: { node: 'v16.0.0', npm: '7.10.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'lru-cache@10.2.0',
npm WARN EBADENGINE   required: { node: '14 || >=16.14' },
npm WARN EBADENGINE   current: { node: 'v16.0.0', npm: '7.10.0' }
npm WARN EBADENGINE }
npm WARN deprecated @npmcli/move-file@2.0.1: This functionality has been moved to @npmcli/fs

added 195 packages, and audited 196 packages in 12s

20 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
Invalid option inputDir: icons is not a directory
==> ERROR: A failure occurred in build().
    Aborting...
error: failed to build 'ttf-octicons-19.9.0-1':

I crudely fixed it doing that:

iff --git a/PKGBUILD b/PKGBUILD
index c06dda4..e809ed1 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -33,8 +33,8 @@ build() {
     npm install

   npm install fantasticon
-  mkdir 'font'
-  npm exec -- fantasticon icons -o font -t ttf -n octicons
+  mkdir -p 'font'
+  npm exec -- fantasticon octicons-${pkgver}/icons -o font -t ttf -n octicons
 }

 package() {
@@ -42,5 +42,5 @@ package() {
   install -Dm644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE

   install -d $pkgdir/usr/share/fonts/TTF/
-  install -m644 font/octicons.ttf $pkgdir/usr/share/fonts/TTF/
+  install -m644 ../font/octicons.ttf $pkgdir/usr/share/fonts/TTF/
 }

dreieck commented on 2023-12-19 14:52 (UTC)

This PKGBUILD downloads stuff in package().

This must not happen.

Can you move all npm-related download stuff into prepare(), all file compilation stuff into build(), and only copying files in place into prepare()?

==> Starting package()...
npm WARN registry Unexpected warning for https://registry.npmjs.org/: Miscellaneous Warning ERR_SOCKET_TIMEOUT: request to https://registry.npmjs.org/@babel%2fcore failed, reason: Socket timeout
npm WARN registry Using stale data from https://registry.npmjs.org/ due to a request error during revalidation.
[..................] - idealTree:yargs: WARN registry Using stale data from https://registry.npmjs.org/ due to a request error during revalidation.
[...]

Regards and thanks for maintaining!

Thaodan commented on 2022-09-30 05:30 (UTC)

Is nvm really needed for this pkg?

clebermatheus commented on 2021-08-02 00:44 (UTC)

@Xaryphon thanks