You are not logged in.

#1 2019-12-17 16:27:49

ThinkPad
Member
Registered: 2019-01-29
Posts: 125

Build script for qmk firmware not installing everything in list

I am following the qmk startup guide. Even after following the instructions I had missing dependencies. So I checked out the build script and found:

sudo pacman -U https://archive.archlinux.org/packages/a/avr-gcc/avr-gcc-8.3.0-1-x86_64.pkg.tar.xz
sudo pacman -S --needed \
                arm-none-eabi-binutils \
                arm-none-eabi-gcc \
                arm-none-eabi-newlib \
                avrdude \
                avr-binutils \
                avr-libc \
                avr-gcc \
                base-devel \
                bootloadhid \
                clang \
                dfu-programmer \
                dfu-util \
                diffutils \
                gcc \
                git \
                libusb-compat \
                python \
                python-pip \
                unzip \
                wget \
                zip

The pacman -U line runs fine. The --needed line seems to work, but when reporting which packages are skipped and up to date, some packages are not mentioned such as python-pip and arm-non-eabi-newlib which I don't already have installed. Even when removing the --needed argument, these packages are skipped over.

I know I can run each manually, but I want to track down if this is a pacman issue or a misuse of pacman so I can report it accordingly.


MCP

Last edited by ThinkPad (2020-04-22 13:59:34)

Offline

#2 2019-12-17 17:39:45

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 15,396

Re: Build script for qmk firmware not installing everything in list

let's see :

using -U to install an outdated version of a compiler
using sudo in a script without informing the user they need to setup sudo
running pacman -S without checking when last pacman -Syu was done.

buildscript at utll     linux_install.sh

elif grep ID /etc/os-release | grep -q 'arch\|manjaro'; then

archlinux does have a /usr/lib/os-release file that comes with filesystem, but none in /etc .

I'd recommend both archlinux and manjaro users to stay away from that script.

Now look what I found in AUR : https://aur.archlinux.org/packages/qmk/
It builds a stable version from source and at first glimpse appears to follow python package guidelines.

Please build that with makepkg , ThinkPad / MCP.

Last edited by Lone_Wolf (2019-12-17 17:40:03)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#3 2019-12-17 17:51:06

loqs
Member
Registered: 2014-03-06
Posts: 19,046

Re: Build script for qmk firmware not installing everything in list

Lone_Wolf wrote:

archlinux does have a /usr/lib/os-release file that comes with filesystem, but none in /etc .

/usr/lib/tmpfiles.d/etc.conf contains

L /etc/os-release - - - - ../usr/lib/os-release

Offline

#4 2019-12-17 18:04:21

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 15,396

Re: Build script for qmk firmware not installing everything in list

And that link is even present on my system...

I guess running pacman -F is not enough anymore to verify if something is present on archlinux.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#5 2019-12-17 20:27:26

ThinkPad
Member
Registered: 2019-01-29
Posts: 125

Re: Build script for qmk firmware not installing everything in list

Lone Wolf, thanks for the reply. While the points you made are valid, I think it's safe for the setup instructions to assume the user knows their system. What I wanted to focus on was the --needed line and why only some packages are checked/installed. The only way I got pacman to go through the entire list was putting those packages in a .txt, removing the '_\' after each name, and calling:

sudo pacman -S --needed - < qmk_pkglist.txt

So why does it work like this, but not when given a list of targets? I also tried reformatting the command and giving the arguments on the same line - same error.

Offline

#6 2019-12-17 20:48:20

loqs
Member
Registered: 2014-03-06
Posts: 19,046

Re: Build script for qmk firmware not installing everything in list

ThinkPad wrote:

I think it's safe for the setup instructions to assume the user knows their system.

If a user knows their system and knows partial upgrades are unsupported then continues anyway why should they receive support?

Offline

#7 2019-12-18 19:39:11

ThinkPad
Member
Registered: 2019-01-29
Posts: 125

Re: Build script for qmk firmware not installing everything in list

loqs, I am not issuing any pacman -Sy commands. If you're referring to the downgrade, I have been trying the pacman -S command without the downgrade and with the latest avr-gcc package. My question is why doesn't pacman take in the list of targets when inline, but does when they're in a separate file?

Last edited by ThinkPad (2019-12-18 19:39:22)

Offline

#8 2019-12-18 19:50:42

Slithery
Administrator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 5,776

Re: Build script for qmk firmware not installing everything in list

The arm-non-eabi-newlib package doesn't exist in either the repos or the AUR.


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#9 2019-12-18 20:07:16

loqs
Member
Registered: 2014-03-06
Posts: 19,046

Re: Build script for qmk firmware not installing everything in list

Thinkpad no I was referring to

sudo pacman -U https://archive.archlinux.org/packages/a/avr-gcc/avr-gcc-8.3.0-1-x86_64.pkg.tar.xz

Downloading one package to an old version without downgrading the whole system to a matching state is a partial upgrade.
Edit:
arm-none-eabi-newlib is not arm-non-eabi-newlib but the script uses the former name which is in the repositories.

Last edited by loqs (2019-12-18 20:09:43)

Offline

#10 2019-12-18 20:31:56

Slithery
Administrator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 5,776

Re: Build script for qmk firmware not installing everything in list

loqs wrote:

arm-none-eabi-newlib is not arm-non-eabi-newlib but the script uses the former name which is in the repositories.

Oops, I searched for the package name in the message body that had a typo...


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#11 2019-12-18 22:27:47

ThinkPad
Member
Registered: 2019-01-29
Posts: 125

Re: Build script for qmk firmware not installing everything in list

loqs, to be clear another user joined the conversation. Again my question is focused on the pacman -S line. Do you have any input on that behavior?

Offline

#12 2019-12-18 22:56:10

loqs
Member
Registered: 2014-03-06
Posts: 19,046

Re: Build script for qmk firmware not installing everything in list

bootloadhid is not in the arch repositories.
https://bbs.archlinux.org/viewtopic.php?id=57855

Last edited by loqs (2019-12-18 23:02:05)

Offline

#13 2019-12-19 10:55:36

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 15,396

Re: Build script for qmk firmware not installing everything in list

ThinkPad,

If you feel this thread should be about pacman not executing the -S line as expected, please change the title and amend the first post.
Add relevant logs like the output of pacman -S <list> & pacman -debug -S <list>

You could also ask moderators to split off posts not related to that, or close this and start with a fresh thread.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#14 2019-12-19 13:27:29

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 30,517
Website

Re: Build script for qmk firmware not installing everything in list

When the packages are entered on the command line pacman is running in an interactive mode.  When you pipe to it's stdin it is not.  When I try to run that command, I am given a prompt and pacman is waiting for a response.  Did you check any stdout/stderr from the script?  I suspect pacman's prompt is in there.

EDIT: after rereading the OP, perhaps this is not the issue.  OP, you vaguely describe what you see as output ... don't do that, post the actual output.

Last edited by Trilby (2019-12-19 13:28:52)


"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman

Offline

#15 2019-12-19 13:31:02

loqs
Member
Registered: 2014-03-06
Posts: 19,046

Re: Build script for qmk firmware not installing everything in list

warning: autoconf-2.69-6 is up to date -- skipping
warning: automake-1.16.1-2 is up to date -- skipping
warning: binutils-2.33.1-2 is up to date -- skipping
warning: fakeroot-1.24-2 is up to date -- skipping
warning: file-5.37-5 is up to date -- skipping
warning: findutils-4.7.0-2 is up to date -- skipping
warning: flex-2.6.4-3 is up to date -- skipping
warning: gawk-5.0.1-2 is up to date -- skipping
warning: gcc-9.2.0-4 is up to date -- skipping
warning: gettext-0.20.1-3 is up to date -- skipping
warning: grep-3.3-3 is up to date -- skipping
warning: groff-1.22.4-2 is up to date -- skipping
warning: gzip-1.10-3 is up to date -- skipping
warning: libtool-2.4.6+42+gb88cebd5-8 is up to date -- skipping
warning: m4-1.4.18-3 is up to date -- skipping
warning: make-4.2.1-4 is up to date -- skipping
warning: pacman-5.2.1-1 is up to date -- skipping
warning: patch-2.7.6-8 is up to date -- skipping
warning: pkgconf-1.6.3-3 is up to date -- skipping
warning: sed-4.7-3 is up to date -- skipping
warning: sudo-1.8.29-1 is up to date -- skipping
warning: texinfo-6.7-2 is up to date -- skipping
warning: which-2.21-5 is up to date -- skipping
error: target not found: bootloadhid
warning: clang-9.0.0-3 is up to date -- skipping
warning: diffutils-3.7-3 is up to date -- skipping
warning: gcc-9.2.0-4 is up to date -- skipping
warning: git-2.24.1-2 is up to date -- skipping
warning: libusb-compat-0.1.5-2 is up to date -- skipping
warning: python-3.8.0-1 is up to date -- skipping
warning: python-pip-19.2.3-3 is up to date -- skipping
warning: unzip-6.0-13 is up to date -- skipping
warning: wget-1.20.3-2 is up to date -- skipping
warning: zip-3.0-8 is up to date -- skipping

Offline

Board footer

Powered by FluxBB