This repo contains the source content used to generate the textbook PySDR: A Guide to SDR and DSP using Python hosted at https://pysdr.org.
Feel free to submit an issue, or even a Pull Request (PR) with fixes or improvements. Those who submit valuable feedback/fixes be permanently added to the acknowledgments section. Not good at Git but have changes to suggest? Feel free to email Marc at pysdr@vt.edu.
Note that the website is now automatically built and deployed with each push/merge into master branch, using the GitHub action build-and-deploy.yml and the GitHub pages system for hosting the actual textbook.
For testing changes to the textbook locally, you can build using the following steps:
Look at .github/workflows/build-and-deploy.yml
and run the apt/pip installs, then:
make html
make html-fr
make html-nl
make html-ukraine
make html-zh
In _build there should be an index.html that represents the main page of the English site
Note: on one machine I had to add ~/.local/bin
to PATH
Install pre-requisite software with:
Installation root C:/texlive/2023
which we need later. Uncheck Install TeXworks front end because we wont need it. Under Scheme click "change" and choose basic scheme
. Hit Install. It will take a while because it installs a lot of common latex packages, you can do the remaining steps while this installs. You know it worked if you now have a C:\texlive\2023\bin\windows\latex.exe
.pip install sphinx sphinxcontrib-tikz patreon
cd
to the directory you cloned PySDRtlmgr install dvisvgm pgf
(pgf is tikz).Build the English version only using:
python -m sphinx.cmd.build -b html -D imgmath_latex="C:\texlive\2023\bin\windows\latex.exe" -D imgmath_dvisvgm="C:\texlive\2023\bin\windows\dvisvgm.exe" . _build
The first time running this it might take a while because it has to download LaTeX packages.
Not fully working yet due to animated gifs, they all need to be removed for this to not error out:
sudo apt-get install -y latexmk
sphinx-build -b latex . _build/latex
make latexpdf
Ideas for future chapters:
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 Unported License.