MycroftOS: Remove old wifi setup files
This commit is contained in:
parent
ee4be20395
commit
c0e74de88e
|
@ -1,98 +0,0 @@
|
|||
from flask import Flask, render_template, request
|
||||
import subprocess
|
||||
import os
|
||||
import time
|
||||
from threading import Thread
|
||||
import fileinput
|
||||
|
||||
app = Flask(__name__)
|
||||
app.debug = True
|
||||
|
||||
|
||||
@app.route('/')
|
||||
def index():
|
||||
wifi_ap_array = scan_wifi_networks()
|
||||
|
||||
return render_template('app.html', wifi_ap_array = wifi_ap_array)
|
||||
|
||||
|
||||
@app.route('/manual_ssid_entry')
|
||||
def manual_ssid_entry():
|
||||
return render_template('manual_ssid_entry.html')
|
||||
|
||||
|
||||
@app.route('/save_credentials', methods = ['GET', 'POST'])
|
||||
def save_credentials():
|
||||
ssid = request.form['ssid']
|
||||
wifi_key = request.form['wifi_key']
|
||||
|
||||
create_wpa_supplicant(ssid, wifi_key)
|
||||
|
||||
# Call reconfigure_device() in a thread otherwise the reconfigure will prevent
|
||||
# the response from getting to the browser
|
||||
def sleep_and_reconfigure():
|
||||
time.sleep(2)
|
||||
reconfigure_device()
|
||||
t = Thread(target=sleep_and_reconfigure)
|
||||
t.start()
|
||||
|
||||
return render_template('save_credentials.html', ssid = ssid)
|
||||
|
||||
@app.route('/skip_wifi')
|
||||
def skip_wifi():
|
||||
|
||||
# Call reconfigure_device() in a thread otherwise the reconfigure will prevent
|
||||
# the response from getting to the browser
|
||||
def sleep_and_reconfigure():
|
||||
time.sleep(2)
|
||||
reconfigure_device()
|
||||
t = Thread(target=sleep_and_reconfigure)
|
||||
t.start()
|
||||
|
||||
return render_template('cancelled_wifi.html')
|
||||
|
||||
|
||||
######## FUNCTIONS ##########
|
||||
|
||||
def scan_wifi_networks():
|
||||
iwlist_raw = subprocess.Popen(['iw', 'dev', 'ap0', 'scan', 'ap-force'], stdout=subprocess.PIPE)
|
||||
ap_list, err = iwlist_raw.communicate()
|
||||
ap_array = []
|
||||
|
||||
for line in ap_list.decode('utf-8').rsplit('\n'):
|
||||
if 'SSID' in line:
|
||||
ap_ssid = line[7:]
|
||||
if ap_ssid != '':
|
||||
ap_array.append(ap_ssid)
|
||||
|
||||
return ap_array
|
||||
|
||||
def create_wpa_supplicant(ssid, wifi_key):
|
||||
temp_conf_file = open('wpa_supplicant-wlan0.conf.tmp', 'w')
|
||||
|
||||
temp_conf_file.write('ctrl_interface=DIR=/var/run/wpa_supplicant\n')
|
||||
temp_conf_file.write('update_config=1\n')
|
||||
temp_conf_file.write('\n')
|
||||
temp_conf_file.write('network={\n')
|
||||
temp_conf_file.write(' ssid="' + ssid + '"\n')
|
||||
|
||||
if wifi_key == '':
|
||||
temp_conf_file.write(' key_mgmt=NONE\n')
|
||||
else:
|
||||
temp_conf_file.write(' psk="' + wifi_key + '"\n')
|
||||
|
||||
temp_conf_file.write('}\n')
|
||||
|
||||
temp_conf_file.close
|
||||
|
||||
os.system('mv wpa_supplicant-wlan0.conf.tmp /etc/wpa_supplicant/wpa_supplicant-wlan0.conf')
|
||||
|
||||
def reconfigure_device():
|
||||
os.system('systemctl disable wpa_supplicant@ap0.service')
|
||||
os.system('systemctl enable wpa_supplicant@wlan0.service')
|
||||
os.system('systemctl stop wpa_supplicant@ap0.service')
|
||||
os.system('sleep 5')
|
||||
os.system('systemctl start wpa_supplicant@wlan0.service')
|
||||
|
||||
if __name__ == '__main__':
|
||||
app.run(host = '172.16.127.1', port = '88')
|
Binary file not shown.
Before Width: | Height: | Size: 122 KiB |
|
@ -1,192 +0,0 @@
|
|||
/* General
|
||||
---------------------------------------------------------*/
|
||||
*, :after, :before {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
body,
|
||||
html {
|
||||
margin:0;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
body{
|
||||
background-color: #22A7F0;
|
||||
margin:0;
|
||||
color: #2C3E50;
|
||||
}
|
||||
|
||||
div#mainContent{
|
||||
padding:.3em;
|
||||
background-color: #22A7F0;
|
||||
width: 100%;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
font-size: 2.5rem;
|
||||
color: #2C3E50;
|
||||
}
|
||||
|
||||
div#mainContent h1 {
|
||||
margin:0 0 .5em 0;
|
||||
font-size:2rem;
|
||||
}
|
||||
|
||||
div#mainContent ul{
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div#mainContent form {
|
||||
margin-top:-2em;
|
||||
}
|
||||
|
||||
div#wpaStatus{
|
||||
padding: 4px;
|
||||
margin: 0 0 10px 0;
|
||||
width: 250px;
|
||||
background-color: #928043;
|
||||
text-align: left;
|
||||
font-size: .3em;
|
||||
}
|
||||
|
||||
div#wpaStatus a{
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
label[for=ssid],
|
||||
label[for=wifi_key]{
|
||||
font-size:1.9rem;
|
||||
}
|
||||
|
||||
/* Select
|
||||
---------------------------------------------------------*/
|
||||
|
||||
li label {
|
||||
display:inline-block;
|
||||
margin: 0.5em 0;
|
||||
padding: 0.5em 0;
|
||||
}
|
||||
|
||||
li.wifiNetwork {
|
||||
position: relative;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
li.wifiNetwork:after {
|
||||
content: '▼';
|
||||
position: absolute;
|
||||
width: 25px;
|
||||
color: #22A7F0;
|
||||
font-weight: bold;
|
||||
font-size: 1.4rem;
|
||||
right: 0px;
|
||||
top: 40%;
|
||||
border-radius: 3px;
|
||||
pointer-events: none;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
select.wifiNetworkInputs {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
background: #111;
|
||||
color: #22A7F0;
|
||||
border: none;
|
||||
outline: none;
|
||||
font-size: 1.5rem;
|
||||
padding: 1em;
|
||||
margin: 0;
|
||||
border-radius: 3px;
|
||||
cursor: pointer;
|
||||
height: auto;
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
appearance: none;
|
||||
}
|
||||
|
||||
.wifiNetworkInputs{
|
||||
width: 100%;
|
||||
padding:1em;
|
||||
font-size: 1.4rem;
|
||||
color: #2C3E50;
|
||||
background: #22A7F0;
|
||||
border:#2C3E50 solid 1px;
|
||||
}
|
||||
|
||||
.wifiConnectButton{
|
||||
width: 100%;
|
||||
margin:2em 0;
|
||||
padding:.5em;
|
||||
background-color: #5B6984;
|
||||
font-size: 2rem;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.manualSSIDEntry{
|
||||
font-size: 1rem;
|
||||
color: #2C3E50;
|
||||
}
|
||||
|
||||
div#wpaCredentialsForm{
|
||||
margin: 60px 0 0 0;
|
||||
}
|
||||
|
||||
.wpaEnabledCheckbox{
|
||||
height: 46px;
|
||||
width: 46px;
|
||||
}
|
||||
|
||||
div#saveCredentialsOutput{
|
||||
width: 60%;
|
||||
margin: 0 0 0 20%;
|
||||
text-align: center;
|
||||
font-size: 1.7em;
|
||||
}
|
||||
|
||||
.saveCredentialsSSID{
|
||||
color: #2C3E50;
|
||||
font-size: 2em;
|
||||
}
|
||||
|
||||
/* Wifi Icon
|
||||
---------------------------------------------------------*/
|
||||
|
||||
.wifiIcon {
|
||||
padding: 10px;
|
||||
}
|
||||
.wifiIcon, .wifiIcon:before {
|
||||
display: inline-block;
|
||||
border: 40px double transparent;
|
||||
border-top-color: currentColor;
|
||||
border-radius: 50%;
|
||||
}
|
||||
.wifiIcon:before {
|
||||
content: '';
|
||||
width: 0; height: 0;
|
||||
}
|
||||
|
||||
/* Desktop
|
||||
---------------------------------------------------------*/
|
||||
|
||||
@media (min-width: 800px) {
|
||||
div#mainContent h1 {
|
||||
font-size:4.5rem;
|
||||
}
|
||||
div#mainContent {
|
||||
max-width:768px;
|
||||
}
|
||||
li.wifiNetwork:after {
|
||||
content: '▼';
|
||||
position: absolute;
|
||||
width: 50px;
|
||||
color: #2C3E50;
|
||||
font-weight: bold;
|
||||
font-size: 2rem;
|
||||
right: 0px;
|
||||
bottom: 50px;
|
||||
border-radius: 3px;
|
||||
pointer-events: none;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,32 +0,0 @@
|
|||
{% extends 'layout.html' %}
|
||||
|
||||
{% block body %}
|
||||
<div id="mainContent">
|
||||
|
||||
<h1>WiFi Setup</h1>
|
||||
<div class="wifiIcon"></div>
|
||||
|
||||
<form action="{{ url_for('save_credentials') }}" method=post>
|
||||
<ul>
|
||||
<li><label for="ssid">Select your WiFi network</label></li>
|
||||
|
||||
<li class="wifiNetwork">
|
||||
<select id="ssid" name="ssid", class="wifiNetworkInputs">
|
||||
{% for ssid in wifi_ap_array %}
|
||||
<option value='{{ ssid }}'>{{ ssid }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</li>
|
||||
|
||||
<li><a href="{{ url_for('manual_ssid_entry') }}" class="manualSSIDEntry">manual SSID entry -></a></li>
|
||||
|
||||
<li><label for="wifi_key">Your Wifi password</label></li>
|
||||
<li><input type="password" name="wifi_key", class="wifiNetworkInputs"></li>
|
||||
|
||||
<input type="submit", class="wifiConnectButton", label="Configure">
|
||||
|
||||
<li><a href="{{ url_for('skip_wifi') }}" class="manualSSIDEntry">Skip WiFi Setup -></a></li>
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
{% endblock %}
|
|
@ -1,8 +0,0 @@
|
|||
{% extends 'layout.html' %}
|
||||
|
||||
{% block body %}
|
||||
<div id="saveCredentialsOutput">
|
||||
<p>Wifi connection cancelled</p>
|
||||
<p>You can close this window now and reconnect again to your normal wifi network.</p>
|
||||
</div>
|
||||
{% endblock %}
|
|
@ -1,15 +0,0 @@
|
|||
<!--
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<WISPAccessGatewayParam xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.wballiance.net/wispr_2_0.xsd">
|
||||
<Redirect>
|
||||
<MessageType>100</MessageType>
|
||||
<ResponseCode>0</ResponseCode>
|
||||
<VersionHigh>2.0</VersionHigh>
|
||||
<VersionLow>1.0</VersionLow>
|
||||
<AccessProcedure>1.0</AccessProcedure>
|
||||
<AccessLocation>MYCROFT</AccessLocation>
|
||||
<LocationName>MYCROFT</LocationName>
|
||||
<LoginURL>http://172.16.127.1:88/</LoginURL>
|
||||
</Redirect>
|
||||
</WISPAccessGatewayParam>
|
||||
-->
|
|
@ -1,15 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='stylesheets/app.css') }}">
|
||||
<title>MYCROFT</title>
|
||||
</head>
|
||||
<body>
|
||||
{% block body %}
|
||||
{% endblock %}
|
||||
</body>
|
||||
</html>
|
|
@ -1,20 +0,0 @@
|
|||
{% extends 'layout.html' %}
|
||||
|
||||
{% block body %}
|
||||
<div id="mainContent">
|
||||
<h1>WiFi Setup</h1>
|
||||
<div class="wifiIcon"></div>
|
||||
|
||||
<form action="{{ url_for('save_credentials') }}" method=post>
|
||||
<ul>
|
||||
<li><label for="ssid">Enter your network SSID:</label></li>
|
||||
<li><input type="text" name="ssid", class="wifiNetworkInputs"></li>
|
||||
|
||||
<li><label for="wifi_key">Your Wifi password</label></li>
|
||||
<li><input type="password" name="wifi_key", class="wifiNetworkInputs"></li>
|
||||
|
||||
<input type="submit", class="wifiConnectButton">
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
{% endblock %}
|
|
@ -1,10 +0,0 @@
|
|||
{% extends 'layout.html' %}
|
||||
|
||||
{% block body %}
|
||||
<div id="saveCredentialsOutput">
|
||||
<p>Wifi connection configured for:</p>
|
||||
<span class="saveCredentialsSSID">{{ ssid }}</span>
|
||||
<p>Your device will now reconfigure and connect to your access point.</p>
|
||||
<p>You can close this window now and reconnect again to your normal wifi network.</p>
|
||||
</div>
|
||||
{% endblock %}
|
Loading…
Reference in New Issue