Commit Graph

63 Commits

Author SHA1 Message Date
8ba8d6af6c
cleaned up code 2021-09-27 11:43:50 +05:30
761618aff4
added new args and config options
This will allow changing name of batman and bridge interface.
But deleting them after stopping naxalnet will not work at the moment.
2021-09-27 11:27:44 +05:30
798cd3e988
fixed bug in previous commit
Added function to get glob as sorted list. This fixes the errors
reported by systemd-networkd
2021-09-27 11:03:27 +05:30
a81449b898
changed how network config is done
We now use NetworkD() to configure systemd-networkd.
Path.glob doesn't return things in alphabetical order, which is needed
to configure networkd without any error. Need a fix for that.
2021-09-27 10:00:59 +05:30
ab3252683a
added func for parsing and writing networkd config 2021-09-26 13:57:40 +05:30
8f905ed970
prepared *.net{work,dev} files to work with str.format() 2021-09-26 13:31:36 +05:30
25ac54dfad
removed arguments added in previous commit
Too much configs and args make debugging harder. The class networkd will
be used to add config files to the networkd runtime dir after formatting
the file with str.format().
2021-09-26 13:25:35 +05:30
25a5bdee30
added network.py and some other changes
This will be used to control systemd-networkd via d-bus and runtime
configs and make things easier in implementing B.A.T.M.A.N. gateway support
2021-09-25 15:04:29 +05:30
8137b5067b
made error messages more readable
Not a big commit, so pushed directly to master
2021-09-21 22:43:41 +05:30
5f7c59d4b8
Modified CHANGELOG.md for releasing new version 2021-09-20 12:28:59 +05:30
c8f032a3d0
couple of changes, see full commit message
* make will now build every time naxalnet/__init__.py is changed.
* Changed content related to online classes in README.md. It seems online
  classes are a luxury even in urban areas in some parts of India.
* Added argument -V as alias for --verbose
2021-09-11 22:42:08 +05:30
5eb55c19a2
changed version to 0.3.0a3
Ready for merge!
2021-09-10 20:23:06 +05:30
ca1e721c9e
fixed logging issue and another bug
There was a problem with indentation which made the line starting adhoc
not being run at all.
Updated CHANGELOG
Moved some things to other places
log.py is back! It isn't needed, but it doesn't do any harm anyway.
2021-09-07 18:45:11 +05:30
68b53ccad1
implemented daemon
naxalnet is now a daemon! When run from systemd, it checks for new
devices or removal of devices and reloads the wifi configuration.
Updated the systemd service and changed Type to notify. Unfortunately,
there is some problem with logging. The messages from naxalnet.iwd could
not be found in the systemd journal or while running without --systemd.
2021-09-07 11:19:14 +05:30
6fff558405
many changes, see full commit message
- Renamed here_be_dragons() to main().
- Added daemon.py (doesn't do anything yet).
- Added GPL disclaimer to all python files and removed the shebang #!
  from all files.
- args is now defined outside any function in scripts.py
- Changed arguments of some functions in scripts.py
2021-09-06 21:54:24 +05:30
0bcd31b6e3
removed log.py 2021-09-06 15:00:34 +05:30
2d9aee4d3a
added --systemd and --verbose arguments
When run without --systemd, naxalnet will log to stderr.
Otherwise, it will log to systemd journal.

log.py is no longer needed.
2021-09-06 14:57:54 +05:30
a3e9b45050
more logging messages and code cleanup
Removed log messages from config.py
2021-09-06 12:23:07 +05:30
97b1f46535
updated CHANGELOG and version in __init__.py
Ready for merge
2021-09-05 13:47:54 +05:30
87c5d48144
added more logging info 2021-09-04 14:24:53 +05:30
e4a7fa5d3f
renamed systemd-networkd config files 2021-09-04 12:59:26 +05:30
4db6d9457f
improved README, more logging 2021-09-04 11:53:08 +05:30
4ea53e5a35
implemented logging
- New dependency -- python-systemd for logging to journal
- Changed service file to start after networkd
- New submodule which contains "logger" for use by all other submodules
- Removed bus argument from Device and Adapter classes
2021-08-25 15:52:46 +05:30
feb362b149
Version 0.3.0
Let's assume I haven't forgotten anything.
2021-08-19 12:51:18 +05:30
9f8a5b3d0d
updated CHANGELOG and version
Ready for merge
2021-08-19 12:48:02 +05:30
fdbbca686d
removed license from package description
Fixed MANIFEST.in and changed data_files in setup.cfg
2021-08-19 12:36:40 +05:30
7e0fe5ef4c
many changes -- see full commit message
The config file is now installed as /etc/naxalnet/naxalnet.conf.example
by default.
make uninstall now does not ask for confirmation. Added rule purge in
Makefile.
Updated the README.
Changed order of stop commands in service file.
Updated setup.cfg and docstrings.
2021-08-18 17:33:46 +05:30
397269823d
almost ready for merge
* Improved CHANGELOG, README, HACKING
* Added naxalnet.conf containing default values. This will be installed
along with the package.
2021-08-15 15:02:28 +05:30
d7a9edc1e8
many changes -- read full commit
* Improved docstrings, README
* Added argument --version and its implementation
* Added "uninstall" rule to Makefile and added it in the README
* Updated CHANGELOG
* Cleaned up code

I've probably forgot something so we can't merge to master yet.
And we still have to add installation instructions for ubuntu and fedora
2021-08-14 22:00:07 +05:30
fe146b7a0d
added implementation of --print-wifi
And added it to the README.
Cleaned up the docstring in naxalnet/__main__.py
2021-08-13 12:30:30 +05:30
dfd521f9b9
added new args and support for conf files
Tidied up code, added more documentation, and the version now confirms
to some PEP standard. Because of the way configuration and arguments are
implemented, ALL the keys in configuration files should have an argument
that can change its value.

Verbose option was commented out, since it is not implemented. An
argument --print-wifi, which should print out WiFi ssid and password is
not implemented at the moment. Also, the README should be updated to
show the new changes. By the way I just remembered I didn't update the
CHANGELOG; I'll do it in the next commit. 😁
2021-08-13 10:35:13 +05:30
a798ac8051
improved README.md
And added a new argument (not implemented) in scripts.py
2021-08-09 12:54:41 +05:30
fb4b11b9fd
added link to internetshutdowns.in in README.md 2021-08-08 22:20:05 +05:30
2e4149d943
moved device setup into a single function
By the way, --verbose is not implemented yet. We will need to wait until
systemd journal or some other form of logging is implemented.
2021-08-05 12:11:31 +05:30
5db3d1dc09
added new section in HACKING.md 2021-08-02 16:05:24 +05:30
f55fc74ad4
added PYTHON variable in Makefile
This should be used if the python executable is not python3 in your
distro.

I would like to express my displeasure to the Government of India for
not including me in the list of targets for Pegasus, even though I'm
convinced I am a threat to the sovereignty and integrity of the nation
2021-08-01 16:58:48 +05:30
16dff8bb49
added support for arguments
Try naxalnet --help to see help
2021-07-30 17:56:33 +05:30
f6a5a8556b
fixed version number in __init__.py 2021-07-26 16:47:36 +05:30
9c6081ea87
added rfkill support
Updated HACKING.md and added license disclaimer to all python files.
And tidied up scripts.py
2021-07-25 14:06:17 +05:30
c2fba89816
Made python package!
Finally, the python package is ready to use!
2021-07-21 15:36:11 +05:30
b2f30bad62
added AP support in naxalnet.py and iwd.py 2021-07-21 14:36:23 +05:30
f0689016ce
ad-hoc part done
Check out naxalnet/naxalnet.py
2021-07-19 14:11:43 +05:30
809c09afe0
Added class Adapter in iwd.py
Initial implementation. No useful public methods yet
2021-07-18 14:24:27 +05:30
91be0b0189
Added main.py
This file at the moment contains debugging code.
Changed HACKING.md
2021-07-18 14:07:16 +05:30
b1d970a0f6
fixed bug in iwd.py
And fixed a typo in README.md
2021-07-17 13:34:06 +05:30
7b7c3f0b2e
added license to iwd.py 2021-07-12 20:20:50 +05:30
8bf05ba334
added new functions 2021-07-12 20:17:33 +05:30
0e7a69be53
Updated HACKING.md and naxalnet/iwd.py
Added Device.reload() to reload the proxy every time the device mode is
changed. Added Device.set_mode() and partial implementation of
Device.start_adhoc_open().

Added link to meaning of hack in HACKING.md
2021-07-07 14:08:05 +05:30
e4fd0ff04d
basic implementaion of class Device and IWD
When work is finished, we can use them to start adhoc or ap
2021-07-01 12:18:44 +05:30
f4a490210d added prototype functions in naxalnet/iwd.py
They won't work yet but when they do we can use the classes in iwd.py
instead of using dasbus directly. Also added a Name to Match in
systemd-networkd/06-eth.network
2021-06-30 21:50:39 +05:30