I have to write a linux desktop software which connects to a hidden wifi network. If the network is not hidden, my code can connect by calling nmcli, but if it is hidden, it can not add the connection. However, I can create a new network using the GUI of the Network Manager, so I think it is not impossible. Do you have any ideas?
Okay, I have the solution. We know the ssid and the password.
nmcli c add type wifi con-name <connect name> ifname wlan0 ssid <ssid>
nmcli con modify <connect name> wifi-sec.key-mgmt wpa-psk
nmcli con modify <connect name> wifi-sec.psk <password>
nmcli con up <connect name>
If we dont need the connection anymore:
nmcli c delete <connect name>
This works fine for me:
nmcli dev wifi connect "abc" password 123 hidden yes
While doing some experimenting, I found that you can use both echnotux's and Pocokman's answers to get it to connect. i.e
nmcli c add type wifi con-name <connect name> ifname wlan0 ssid <ssid>
nmcli dev wifi connect <ssid> password <password> hidden yes
nmcli c delete <connect name>
This simplifies it quite a bit.