Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove all mentions of wpa_supplicant file #3166

Merged
merged 9 commits into from
Oct 12, 2023
Merged

Conversation

nathan-contino
Copy link
Collaborator

Closes #3164

@aallan
Copy link
Contributor

aallan commented Oct 12, 2023

Works for me!

@aallan aallan added bug fix bookworm 🐛 Issue with Bookworm labels Oct 12, 2023
@@ -12,54 +12,11 @@ IMPORTANT: If you are installing Raspberry Pi OS, and intend to run it headless,

=== Configuring Networking

You will need to define a `wpa_supplicant.conf` file for your particular wireless network. Put this file onto the boot folder of the SD card. When the Raspberry Pi boots for the first time, it will copy that file into the correct location in the Linux root file system and use those settings to start up wireless networking.
To configure network access at first boot in a headless Raspberry Pi, use the advanced settings menu in the Imager application. Enter a the SSID and password for your preferred wireless network. Your Raspberry Pi will use these credentials to connect to the network on first boot. Some wireless adapters and some Raspberry Pi boards do not support 5Ghz networks; check the documentation for your wireless module to ensure compatibility with your preferred network.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'Imager' -> 'Raspberry Pi Imager' ?

"Enter a the SSID" doesn't sound quite right 😉


The Raspberry Pi's IP address will not be visible immediately after power on, so this step is crucial to connect to it headlessly. Depending on the OS and editor you are creating this on, the file could have incorrect newlines or the wrong file extension so make sure you use an editor that accounts for this. Linux expects the line feed (LF) newline character.
With no keyboard or monitor, you need some way of xref:remote-access.adoc[remotely accessing] your headless Raspberry Pi. To enable SSH, place a file named `ssh` (no file extension) into the boot folder (`/boot/firmware/`) of the SD Card. For more information, see xref:remote-access.adoc#ssh[set up an SSH server].
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the user is already using RPi Imager to configure networking, they might as well use that to enable SSH too? 🙂

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

...or at least recommend using RPi Imager first, and then give the manual instructions afterwards?
The same thing should probably apply to the "Configuring a User" section too? (i.e. recommend RPi Imager, before giving the manual instructions)

@@ -8,58 +8,20 @@ If you already have an image on the micro SD card, you can access the xref:confi

If you plan on using VNC to access the desktop environment of your headless Raspberry Pi, use the `raspi-config` tool to set a xref:configuration.adoc#resolution[default display resolution].

IMPORTANT: If you are installing Raspberry Pi OS, and intend to run it headless, you will need to create a new user account. Since you will not be able to create the user account xref:getting-started.adoc#configuration-on-first-boot[using the first-boot wizard] as it requires both a monitor and a keyboard, you *MUST* add a `userconf.txt` file to the boot folder to create a user on first boot or configure the OS with a user account using the xref:getting-started.adoc#advanced-options[Advanced Menu] in the Raspberry Pi Imager.
IMPORTANT: If you are installing Raspberry Pi OS, and intend to run it headless, you will need to create a new user account. Since you will not be able to create the user account xref:getting-started.adoc#configuration-on-first-boot[using the first-boot wizard] as it requires both a monitor and a keyboard, you *MUST* add a `userconf.txt` file to the boot folder to create a user on first boot or configure the OS with a user account using the xref:getting-started.adoc#advanced-options[Advanced Menu] in Raspberry Pi Imager.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Along the lines of my other comment, I think we should mention RPi Imager more prominently (as the recommeded approach), rather than only mentioning it at the end.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK! I just made a minor wording tweak here, but I can update that logic in this section as well.

Copy link
Contributor

@lurch lurch Oct 12, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The reason this documentation is written the way it is, is that when this feature was first added, RPi Imager initially didn't have the option for configuring the username - that only came later.


You will need to add a `userconf.txt` in the boot partition of the SD card; this is the part of the SD card which can be seen when it is mounted in a Windows or MacOS computer.
In the boot partition of your SD card (`/boot/firmware`), create a file named `userconf.txt`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In contrast to other places where the boot partition is mentioned, I think you shouldn't mention /boot/firmware here; because that's only the path that the boot partition appears at once you're actually booted into Raspberry Pi OS, but these instructions are about editing files (from another computer) before you boot Raspberry Pi OS for the first time.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aha, excellent point. I now see why the original sentence included the confusing bit about the "part which is seen when it is mounted in a [separate] computer". Fixing now.


In the boot partition of your SD card (`/boot/firmware`), create a file named `userconf.txt`.
Using another computer, at the root (`/`) of your SD card, create a file named `userconf.txt`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry to nitpick, but I think even the

(`/`)

here is inappropriate and potentially confusing. Especially for Windows users!

* place a file named `ssh` (no file extension) into the boot folder (`/boot/firmware/`) of the SD Card, then configure a user with `userconf.txt`

IMPORTANT: To use SSH on a fresh Raspberry Pi OS installation, you must create a user account in the xref:getting-started.adoc#advanced-options[Advanced Menu] of Raspberry Pi Imager.
* place a file named `ssh` into the root (`/`) of the SD card, then configure a user manually with `userconf.txt` following the instructions below
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If there's only two options, does it really need a bulleted list? 🤔 🤷

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nah, in hindsight ignore this :)


[[configuring-a-user]]
=== Configuring a User
=== Configure a user manually
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it worth simply folding this entire section into the second bullet-point in the "Remote access" section, rather than making this a whole separate section in its own right?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hot take: yes! It's too much scope creep for the above section, let alone a bullet point. Breaks up the flow of the above section too much.

I would be willing to add an extra = to drop it one header level and nest it within that other section, though. But I don't think it's necessary since it is technically a discrete task.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should the configuring a user thing go at the top of the whole thing because if you don't configure a user your headless installation is useless.

So "Setting up a headless Raspberry Pi"

First you should configure your user account...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So just between the lede, and the SSH section. You can't SSH without a user, so the user stuff should go before the SSH stuff?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was trying to suggest that we make the userconf.txt instructions less prominent, since most people will just be doing this via Raspberry Pi Imager.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

User setup in general? Yes. Manual user setup with userconf? Especially with the latest Bookworm changes for wireless network setup on initial boot, decreasingly important and worthy of pushing down the page.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, that's true if we have to point users at Imager to configure the wifi anyway, they should also configure the user there at the same time (and SSH!). Then we can demphasis both the userconf.txt and ssh files.

Copy link
Contributor

@lurch lurch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Marvellous. Great work @nathan-contino !

@nathan-contino
Copy link
Collaborator Author

@aallan I think this might be ready to merge. Let me know if you have any more suggestions!

@aallan aallan merged commit f11b539 into develop Oct 12, 2023
@aallan aallan deleted the remove_wpa_supplicant branch October 12, 2023 16:45
@nathan-contino
Copy link
Collaborator Author

🥳

@lurch lurch mentioned this pull request Oct 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bookworm 🐛 Issue with Bookworm bug fix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Remove references to using wpa_supplicant.conf
3 participants