this post was submitted on 20 Jun 2024
28 points (100.0% liked)

Linux

48153 readers
637 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

hardware is a nuked MacBook Pro, Intel Core i5-4278U @ 2.60GHz, model A1502 (EMC 2875), Retina Mid-2014 13"

I tried to install debian 12.5 from a live usb on this computer. On the network page of debian's installation GUI I get this message:

No Ethernet card was detected. If you know the name of the driver needed by your Ethernet card, you can select it from the list.

so I logged in to recovery mode and executed

sudo lspci -vnnk -s 03:00.0

that returns

network controller [0200]: broadcom inc. and subsidiaries BCM4360 802.11ac wireless network manager adapter [14e4:43a0] (rev 03)

there is more information that I wanted to save to a lspci.txt file on the live usb (sdc1) to share with you, but I failed the syntax.

Why I want to do this: installing debian, on the GUI's networking page there is a candidate with this exact specification (broadcom 802.11ac wireless network manager), but I cannot install it because I don't have wifi or an ethernet cable, so I'd have to download this package from this computer I'm using now and copy it to the live usb to install alongside debian 12.5. I just wanted to print the whole command just in case it's helpful.

ETA: how do I install rpm fusion repos on debian? I only found instructions for fedora and rhel https://rpmfusion.org/Configuration

thanks

all 19 comments
sorted by: hot top controversial new old
[–] [email protected] 14 points 4 months ago (2 children)

Did you type: lspci > /sdc1 lspci.txt exactly like this? because that would pipe the output into /sdc1. You probably want to pipe it into /your/mount/point/lspci.txt (something like that).

[–] [email protected] 5 points 4 months ago (1 children)

At least they didn't pipe it into /dev/sdc1 that'd be a catastrophe

[–] [email protected] 1 points 4 months ago* (last edited 4 months ago) (1 children)

What would it do?

Edit:piping it no less

[–] [email protected] 7 points 4 months ago (1 children)

make the drive unmountable if it had a filesystem on it.

[–] [email protected] 1 points 4 months ago (1 children)
[–] [email protected] 5 points 4 months ago

if you did lspci >/dev/sdc1, you would write the output of the command to the beginning of the filesystem on that partition, thus corrupting it.

[–] [email protected] 1 points 4 months ago

I see. Thanks

[–] [email protected] 13 points 4 months ago* (last edited 4 months ago) (1 children)

how do I install rpm fusion repos on debian? I only found instructions for fedora and rhel https://rpmfusion.org/Configuration

Stop. You do not want to do this.. While resources published on other sites may be full of information, that information is not always relevant to you. Don't blindly follow bad advice.

The "rpm" in "rpmfusion" refers to the filetype that Fedora's built-in package management system, dnf, uses.

You want to use Debian's builtin package management system, apt, which uses the "deb" filetype.

Here is an explanation of how to add Debian's "non-free" repository


Do not follow information for other distros unless you know how to extract the bits that are relevant to your distro.

In general, I recommend following the advice from Debian's wiki or website, then debian's forums if you can't find anything there, then debian specific forums elsewhere, then other distro's wikis, then any other site in a last-ditch effort.


Now that you understand the "why," here's the "how": go back to Debian's download website and download the appropriate installation image from the bullet point that says

A larger complete installation image:

Reason being: the smaller "netinst" images are made to work generally for most people who can plug their computer into ethernet. It's made to only use the bare minimum of disk space and get the rest of the files it needs from the internet (the "net" in "netinst").

You need the installation image that come with the "drivers" (firmware) for your WiFi card already on disk, which should automatically detect your device, find the correct firmware for it, and set up the non-free-firmware repository for you.

If that doesn't work out for you, you can try manually installing using the guide on Debian's own wiki, which I found by searching for your wifi card BCM4360

[–] [email protected] 1 points 4 months ago* (last edited 4 months ago)

thanks for posting such a detailed answer.

about the different debian versions: I don't know which one I should try first:

I found debian mac 12.5 netinst https://cdimage.debian.org/debian-cd/current/amd64/bt-cd/ and I'm giving it a try.

Shouldn't that work, I'll try one of the live cds https://cdimage.debian.org/debian-cd/current-live/amd64/bt-hybrid/

I paste the links to check if I have the right version

Incidentally, the data size difference is so surprising: 0.66 GB (debian mac netinst) against 3.17 GB (debian live). Can I have something in between?

[–] [email protected] 10 points 4 months ago* (last edited 4 months ago) (1 children)

ETA: how do I install rpm fusion repos on debian? I only found instructions for fedora and rhel https://rpmfusion.org/Configuration

You don't. rpmfusion is a repo for rpm based distributions. Debian is not rpm based, but deb based. There might be PPA's for Debian instead.

[–] [email protected] 3 points 4 months ago

PPAs are Ubuntu only. You don't want to go adding extra repos to Debian as that's a great way to create a frankendebian.

You want the non-free and non-free-firmware

[–] [email protected] 6 points 4 months ago

As the unfortunate owner of a same-gen MBP with the same wireless card, you're looking at using the proprietary driver (I at least never had any luck with the open-source ones). Luckily, Debian do support those, and even have wiki page for them: https://wiki.debian.org/wl

Does require some extra configuration though. If you happen to have a Android phone, you should be able to use that for USB-tethering to have internet access on the device you're installing on, will make the process a lot easier (you don't even need a SIM in it, you can tether your wifi, that's what I ended up doing 😅).

[–] [email protected] 3 points 4 months ago

You're going to have a few issues with the above, whilst it is possible to install an rpm package to Debian, like so: https://linuxconfig.org/how-to-install-rpm-package-on-ubuntu-linux

It's a bit of a niche use case and may cause other issues, I've never done it.

The other issue is that the broadcom drivers for that wireless card are closed source, which is antithetical to debians mission to provide an entirely open system.

There are open source reverse engineered drivers (b43) and open official drivers, (brcmsmac/brcmfmac) for some older broadcom chips but only supporting up to wireless N functionality, if I remember correctly.

After a brief scout about I have located the following: https://unix.stackexchange.com/questions/175810/how-to-install-broadcom-bcm4360-on-debian-on-macbook-pro

it appears the closed source driver package, wl, is able to provide support for one of two chipsets on the 4360 wireless card, but there is no support for the other.

If you have a phone that can provide usb tethering, you are most likely able to provide internet to your laptop that way and continue from there to install the broadcom wl driver, if it supports your chipset. The above stack exchange link and this arch wiki link should help with that. https://wiki.archlinux.org/title/Broadcom_wireless

[–] [email protected] 3 points 4 months ago

RPM fusion is for RPM distros only.

For Debian I'm kind of surprised it isn't working. With the recent Debian policy change Debian now ships with non-free firmware in the installer. Theoretically it should be working.

[–] [email protected] 2 points 4 months ago

Someone else wrote that you’re overwriting straight into your device. Here’s how to figure out how to do it right:

Find out what block devices are available: lsblk

Lsblk will list the block devices on the computer. You can see from it weather or not the computer sees your usb and what filesystems are available on it. You might say “well of course the computer can see the usb, it booted from it!” But when you’re using a live environment the question isn’t did the computer see the usb, but does it currently see the usb.

Once you confirmed that the computer can see the usb, use df -h to find out if and where it’s mounted.

The df command shows disk filesystems and it’ll tell you which ones are mounted and where. If you see your disks file system, make note of where and skip ahead to output handling! The -h makes this command human readable by saying 32G instead of 32000000000B.

If you don’t have the file system you wanna put your output in mounted, make a directory with mkdir and mount the file system in it with mount /dev/ .

The spaces in the mount command separate the different arguments like . You’ll be able to know your file system device from the lsblk command earlier. The mount command puts a block device somewhere in the running computers file system. Think of it like bolting something to a beam or hanging a picture on a wall.

Verify that you have access to the newly mounted file system by looking at it with ls . What do you see? What should you see? I don’t know.

Like I said, someone already told you that you shouldn’t overwrite directly to a device, but you can do it even better! Use the | character to send output to the tee command and give it a file as an argument like lspci | tee /output.txt

Tee sends output to a file in addition to the terminal as opposed to instead of the terminal window. It’s useful!

Hopefully that gets you going.

I have installed Linux on several of these laptops that need wl and as much as it’s nice to be able to do it without internet access, the easiest way is to plug up a wire and let the package manager figure out that it needs wl every time it upgrades the kernel.

[–] [email protected] 2 points 4 months ago (1 children)

have you tried the non-free iso?

[–] [email protected] 1 points 4 months ago

The main ISO ships with proprietary firmware

[–] [email protected] 1 points 4 months ago

maybe try

lspci > ~/Documents/lspci.txt