DaemonForums  

Go Back   DaemonForums > OpenBSD > OpenBSD General

OpenBSD General Other questions regarding OpenBSD which do not fit in any of the categories below.

Closed Thread
 
Thread Tools Display Modes
  #1   (View Single Post)  
Old 25th June 2016
Nureo Nureo is offline
Sam98
 
Join Date: May 2016
Posts: 24
Unhappy About non-free drivers and firmware. I WANT TO DELETE THEM.

I feel like a stupid

When I tried once the "fw_update -a" and some like commands, I was thinking that I would have just a updated for drivers... But...

That is a way to download non-free drivers! F&#@ BLOBS!

Wow! What a disgusting surprise!

So... Guys... How can I do to know what drivers and non-free firmware I have installed?

I need to purge them (delete them at all!).

I don't want to have BLOBS in my system , and also it means non-free unnecessary firmware!

Thanks for your time
  #2   (View Single Post)  
Old 25th June 2016
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 3,303
Default

Any firmware installed by fw_update(1) can be deleted using the -d switch. Per the manpage:
Code:
     -d      Delete firmware for driver.  If used without parameters, delete
             all firmware that is not required by a driver.  If used in
             conjunction with -a, delete firmware for all drivers.
Please do not use exaggerated font sizes. It is difficult to read.
  #3   (View Single Post)  
Old 25th June 2016
slowtechstef slowtechstef is offline
Port Guard
 
Join Date: Sep 2015
Posts: 10
Default

Citing from: URL --> https://en.wikipedia.org/wiki/Binary_blob

The OpenBSD project has a notable policy of not accepting any binary blobs into its source tree (however, OpenBSD distributes firmware blobs), citing not only the potential for undetectable or irreparable security flaws, but also the encroachment onto the openness and freedom of its software.

Just so you know, there is not really a difference between firmware running on devices loading from a ROM, or loading from your harddrive.

Theo de Raadt explains it better than me:
URL --> https://marc.info/?l=openbsd-misc&m=143355112811564&w=2

If you have a recent CPU made by Intel or AMD, you might also want to read up on things such as the Intel ME subsystem. This runs completely indepent from your Operating System, on a separate CPU (!), and it can not be disabled.
URL --> https://news.ycombinator.com/item?id=11913379
URL --> https://boingboing.net/2016/06/15/in...ship-with.html

Last edited by slowtechstef; 25th June 2016 at 01:31 PM.
  #4   (View Single Post)  
Old 25th June 2016
kpa kpa is offline
Port Guard
 
Join Date: Jul 2015
Posts: 18
Default

Guys, this is trolling and should be treated as such. See here where all the bruhaha comes from:


https://marc.info/?l=openbsd-misc&m=145589638702932&w=2
  #5   (View Single Post)  
Old 25th June 2016
ibara's Avatar
ibara ibara is offline
Real-life IT professor
 
Join Date: Jan 2014
Posts: 717
Default

Go build your own firmware then: https://github.com/qca/open-ath9k-htc-firmware
You'll need a dongle like this: http://www.ebay.com/itm/Mini-USB-AR9...0AAOSwwpdW5jE3
  #6   (View Single Post)  
Old 25th June 2016
Nureo Nureo is offline
Sam98
 
Join Date: May 2016
Posts: 24
Default

Thanks for all your answers! I will see what I can do.

ocicat. Thanks for the tip. I will see in "/etc/firmware/" what I have installed, and I will take a look in the licenses of every firmware. Then I will delete all the BLOBS.

ibara. To build my own firmware is possible, but I need more knowledge than I have right now. Thanks!

slowtechstef. For people like me, that doesn't have english like native language, sometimes there are a lot of details that can't be see. Wikipedia in my language doesn't say this: "(however, OpenBSD distributes firmware blobs)". So, thank you for your time and all that good information.

I did know about the relatively strong politic of OpenBSD for don't include BLOB drivers in the initial system, but I didn't know that they distribute non-free drivers in their compress packages.

Dear kpa: Please, don't insult me calling me "troll". You are not my enemy, and also I am not your enemy. I just want my system without blobs (like everybody here, I think... Because we all defend free software). For me this was sad. I said that I feel like a stupid because I didn't known the total effect of that command. That can't be "trolling". Also I hate trolls, they are so violent, and so annoying.

Thanks to all for your time!
  #7   (View Single Post)  
Old 25th June 2016
ibara's Avatar
ibara ibara is offline
Real-life IT professor
 
Join Date: Jan 2014
Posts: 717
Default

Quote:
Originally Posted by Nureo View Post
I did know about the relatively strong politic of OpenBSD for don't include BLOB drivers in the initial system, but I didn't know that they distribute non-free drivers in their compress packages.
OpenBSD does not distribute any non-free drivers. A driver is a piece of code that communicates between your machine and the hardware.

OpenBSD does offer third-party external packages for firmware that is non-free. Note that freely redistributable firmware is in the OpenBSD tree. What is firmware? Firmware is the code that runs only on the device (not your computer) that makes it work. Why has this become an issue in recent years? Manufacturers used to burn firmware directly on their hardware's ROMs (some still do: PCIe athn(4) cards immediately come to mind as still having firmware burnt-in, even though amusingly OpenBSD will still download the firmware). But they realized by removing the ROM, they could save a fraction of a penny on manufacturing costs per device, at the expense of the user's operating system loading the device firmware onto the device every time before use. So this is code your devices have always run, you were just never aware of it.

The best things to do if you dislike this is to 1) not use those devices, 2) petition manufacturers to allow free redistribution of device firmware, 3) petition manufacturers to make their firmware open source so you can build it yourself, 4) as I stated before, purchase an AR9271 based device and build your own firmware (I've done it before, it's super easy. It does take one small OpenBSD-specific tweak to get it to build though. I can post the firmware if this is something people really want.)
  #8   (View Single Post)  
Old 25th June 2016
Nureo Nureo is offline
Sam98
 
Join Date: May 2016
Posts: 24
Talking ¿De qué hablas tío?

Compañero ibara

I was talking about delete BLOBS (non-free drivers and non-free firmware), and you tell me: "Go build your own firmware then".

If you were talking about running the source code, I don't get the point. Maybe you are answering this.

Ok, I am not a engineer or a programmer, but I am not bobo. Thanks for your Wikipedia like definitions. I get the driver concept, and also the firmware concept and utility. When they are not free, I call them BLOBS.

It's OK! I am not your enemy!

This is what I know: OpenBSD does not distribute non-free drivers IN THE DEFAULT SYSTEM (remember: that is not the only way for distribute software).

I was not who wrote: "The OpenBSD project has a notable policy of not accepting any binary blobs into its source tree (however, OpenBSD distributes firmware blobs), citing not only the potential for undetectable or irreparable security flaws, but also the encroachment onto the openness and freedom of its software."

But If using the «ftp server» provided by the official page of OpenBSD and mirrors you can download non-free drivers, I am sorry, but then we can say that OpenBSD distribute BLOBS (non-free drivers, so: non-free software).

Here says something that is confusing me:

"Since firmware with acceptable licenses are already present in OpenBSD, fw_update exists purely to deal with firmware that may not be freely distributed with OpenBSD."

So, when I use fw_update. By defect: Am I or not possible downloading non-free software?

Like I said initially: "When I tried once the fw_update -a and some like commands, I was thinking that I would have just a updated for drivers..."

Please, someone make this clear, if there is a mistake.

I am not saying injuries about OpenBSD project. Why do I use that system then? I just was looking for delete the non-free drivers and non-free firmware (if is it there). Is just that. Don't make a scandal.

Bye!
  #9   (View Single Post)  
Old 25th June 2016
LeFrettchen's Avatar
LeFrettchen LeFrettchen is offline
Marveled user
 
Join Date: Aug 2012
Location: France
Posts: 366
Default

Quote:
Originally Posted by Nureo View Post
I was talking about delete BLOBS (non-free drivers and non-free firmware), and you tell me: "Go build your own firmware then".
The OpenBSD project is a small project, which sometimes doesn't have enough resources to create its own drivers/firmwares, or have other priorities.
That's why alternates drivers/firmwares based on other OS are available.

I may be wrong, but that's why ibara told you to build your own firmware, cause if you don't want to use blob-drivers, you have three options :
  1. you can decide to not use devices with blob-based drivers,
  2. if have enough time/skills/resources to create a non-blob driver/firmware, just build it, distribute it and everybody will enjoy your work
  3. or you can wait for the crew to deploy a non-blob one...
__________________
My wife told me to take a spider out instead of killing it.
We went and had drinks.
Cool guy, wants to be web designer.
Old 26th June 2016
ibara's Avatar
ibara ibara is offline
Real-life IT professor
 
Join Date: Jan 2014
Posts: 717
Default

Quote:
Originally Posted by Nureo View Post
Compañero ibara
No hablo español. Sin embargo, hablo francés.

Quote:
Originally Posted by Nureo View Post
I was talking about delete BLOBS (non-free drivers and non-free firmware), and you tell me: "Go build your own firmware then".
I understand that there is a language difference between us, and that it is in my favor, since English is the de facto world language. But one of the things the BSDs do better than other technical groups (in my opinion) is create a shared vocabulary and language so everyone in the community knows what anyone else is talking about. Admittedly, it is different from the language that the FSF/GNU/Linux people use. And I think that's the source of the confusion here.

The BSDs understand blobs differently than the FSF people. For the BSDs, blobs only refer to drivers. It never refers to firmware. To say that you want to get rid of non-free drivers in OpenBSD makes no sense, because there are no non-free drivers in OpenBSD. Furthermore, it detracts from the hard work OpenBSD (and the other BSDs) have done to make sure that non-free drivers do not find their way into the operating systems.

Your concern is that OpenBSD has a mechanism for getting non-free firmware onto wifi cards (and a few other things) in order for those peripherals to operate. Because firmware code is never run on the computer itself, only on the USB wifi peripheral, it is deemed unfortunate but as long as OpenBSD itself does not distribute such firmware images in the base system, it does not cause OpenBSD to violate its rules. For some, such as the FSF, even this is unacceptable. While I disagree with their stance, I do understand it.

The command to remove all non-free firmware images from your computer is
Code:
fw_update -da
Quote:
Originally Posted by Nureo View Post
If you were talking about running the source code, I don't get the point. Maybe you are answering this.
I was not. I was providing you with a solution to having USB wifi and not using non-free firmware.

Quote:
Originally Posted by Nureo View Post
Ok, I am not a engineer or a programmer, but I am not bobo. Thanks for your Wikipedia like definitions. I get the driver concept, and also the firmware concept and utility. When they are not free, I call them BLOBS.
Except that you have routinely conflated drivers and firmware in a way that is unintelligible to the *BSD community. My reading of your writing indicates that you do not know the difference between the two. You are wrong for coming into the *BSD community and calling non-free firmware blobs. That is not how we understand those things. But the fix is easy: all you have to do is stop calling non-free firmware blobs. Call them what they are: non-free firmware.

Quote:
Originally Posted by Nureo View Post
It's OK! I am not your enemy!
I never said that. It would be a weirdly juvenile thing to say. The world is never black and white.

Quote:
Originally Posted by Nureo View Post
This is what I know: OpenBSD does not distribute non-free drivers IN THE DEFAULT SYSTEM (remember: that is not the only way for distribute software).
This is correct. However, the implication behind that sentence is incorrect. OpenBSD does not distribute non-free drivers in any capacity whatsoever.

Quote:
Originally Posted by Nureo View Post
I was not who wrote: "The OpenBSD project has a notable policy of not accepting any binary blobs into its source tree (however, OpenBSD distributes firmware blobs), citing not only the potential for undetectable or irreparable security flaws, but also the encroachment onto the openness and freedom of its software."
I didn't write it either. This point you're missing here is that those non-free things are optional. And perhaps you should not use them.

Quote:
Originally Posted by Nureo View Post
But If using the «ftp server» provided by the official page of OpenBSD and mirrors you can download non-free drivers, I am sorry, but then we can say that OpenBSD distribute BLOBS (non-free drivers, so: non-free software).
You cannot download non-free drivers from any official OpenBSD mirror. Therefore, by your own logic, OpenBSD does not distribute blobs.

One can, however, obtain non-free firmware images. The *BSD community does not consider these blobs, since this code that has always run on your peripherals, you just weren't aware of it (bringing it more in line with the FSF definition of a circuit, which the FSF has always argued is OK). This code never runs on your computer.

Quote:
Originally Posted by Nureo View Post
Here says something that is confusing me:

"Since firmware with acceptable licenses are already present in OpenBSD, fw_update exists purely to deal with firmware that may not be freely distributed with OpenBSD."

So, when I use fw_update. By defect: Am I or not possible downloading non-free software?
Not necessarily. A piece of firmware could be licensed under the GPLv3, in which case it would be free but OpenBSD could not distribute it in their base system. Same would be true if a piece of firmware were licensed under the Apache v2 license.

Quote:
Originally Posted by Nureo View Post
Like I said initially: "When I tried once the fw_update -a and some like commands, I was thinking that I would have just a updated for drivers..."

Please, someone make this clear, if there is a mistake.
Seeing as the "fw" in fw_update is short for "firmware," you would be mistaken if you thought it would update drivers, since drivers and firmware are two completely different things.

Quote:
Originally Posted by Nureo View Post
I am not saying injuries about OpenBSD project. Why do I use that system then? I just was looking for delete the non-free drivers and non-free firmware (if is it there). Is just that. Don't make a scandal.

Bye!
Code:
fw_update -da
But when your urtwn(4) device stops working, please don't complain about it here. I am telling you now that if you run that command, your urtwn(4) will stop working until you re-download the non-free firmware. Instead of using a urtwn(4) device, you should purchase an AR9271 based device (which uses the athn(4) driver) and build your own free firmware from here: https://github.com/qca/open-ath9k-htc-firmware

If you do that, the resulting firmware by definition will be free, since it was built entirely from free sources.
Old 26th June 2016
jggimi's Avatar
jggimi jggimi is offline
More noise than signal
 
Join Date: May 2008
Location: USA
Posts: 6,819
Default

The confusion comes from three sources: the acronym "BLOB", and the definitions of the words "Firmware" and "Driver".

BLOB - "Binary Large OBject" or sometimes "Binary Large Object Block"

The current definition refers to a closed-source component delivered to customers as a compiled or assembled binary object, typically, as device drivers.

Driver - more completely, "Device Driver"

A component of an Operating System kernel which interfaces with a device.

Hardware vendors who develop kernel drivers for other operating systems (Windows, Linux, ...) will often deliver drivers as BLOBs. Some vendors will release sources to partners (such as to Microsoft or to Linux kernel developers) under Non-Disclosure Agreements ("NDAs").

Firmware - a device's control program, loaded into device memory from on-board ROM, or loaded into device memory from the system.

Here's a picture, which might help.
Code:
+----------+
|          |
|  Device  |
|          |
| Firmware |
|          |
+----------+
     ||
    (bus)
     ||
+----------+
|          |
|  Kernel  |
|          |
|  Driver  |
|          |
+----------+
Unlike many other OSes, the OpenBSD Project does not permit any BLOB device drivers in its kernel, under any circumstance -- such as through an NDA.

Firmware is vendor-supplied and are either already included with the device hardware in ROM, so no action must be taken, or must be loaded onto the vendor's device by the OS in order to have the hardware function.

Firmware is never executed by the OS. It is only loaded onto the appropriate device when that device requires it.
Old 26th June 2016
kpa kpa is offline
Port Guard
 
Join Date: Jul 2015
Posts: 18
Default

@Nureo. By the same logic you have applied to the downloadable firmwares you also should never trust wireless NICs and other add-on cards that have the firmware on a ROM chip. How do you know that the manufacturer hasn't put something nasty in there?

If it's not clear yet, a firmware on a ROM chip is as "non-free" as it gets. The manufacturer is actively blocking all attempts at using alternative "free" firmwares. Disgusting isn't it?

Last edited by kpa; 26th June 2016 at 11:00 AM.
Old 26th June 2016
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 3,303
Default

I was hoping this thread would settle down, but it didn't for various reasons. I'm not going to lock it yet, but I firmly ask future respondents to judiciously consider their text before posting. Accusatory responses may be deleted.

Remember, this site aims at helping newcomers to OpenBSD. Inclusion is the goal. If statements made are incorrect, help correct misstatements by explaining, not attacking. Everyone was a newbie at one time or another.

Old 26th June 2016
LeFrettchen's Avatar
LeFrettchen LeFrettchen is offline
Marveled user
 
Join Date: Aug 2012
Location: France
Posts: 366
Default

Ocicat is right : please, don't be rude gentlemen
__________________
My wife told me to take a spider out instead of killing it.
We went and had drinks.
Cool guy, wants to be web designer.
Old 27th June 2016
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 3,303
Default

Thread locked.
Closed Thread

Tags
blob, blobs, drivers, firmware, non-free

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Delete all you like, but it won't free up space ; You've been (de)duped ... J65nko News 2 15th February 2011 11:08 PM
FreeBSD console delete key graudeejs FreeBSD General 4 24th August 2008 01:37 PM
Cannot delete it.... graudeejs FreeBSD General 9 20th July 2008 12:45 PM
How to delete account? khdf Feedback and Suggestions 5 9th May 2008 09:05 PM


All times are GMT. The time now is 07:10 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Content copyright © 2007-2010, the authors
Daemon image copyright ©1988, Marshall Kirk McKusick