Skip to content

Instantly share code, notes, and snippets.

View rytse's full-sized avatar

Ryan Tse rytse

View GitHub Profile
set runtimepath^=~/.vim_runtime
let &packpath=&runtimepath
source ~/.vimrc
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
@rytse
rytse / gr_py3_guide.md
Created April 28, 2019 18:04
GNURadio with Anaconda Python 3 Installation Guide

GNURadio with Anaconda Python 3 Installation Guide

At its current state, GNURadio 3.7 does not work out-of-the-box with Python 3. This is a guide to building GNURadio from source to use a Python 3 Anaconda environment. This setup is particularly nice since you can still easily import other Python packages with conda and use them inside GNURadio blocks.

This guide assumes you have installed all the system dependencies of GNURadio (not including the Python ones) and Anaconda 3. You can find the list of system dependencies on the GNURadio website. You need all the ones that aren't called gnuradio or python-*.

Pulling the Source

Pull the GNURadio source and the environment.yml file that describes the conda environment that plays nice with GNURadio. At the time that this tutorial was written, this worked for [ 72aa97d](https://github.com/gnuradio/gnuradio/commit/72aa97daab609f907ba10

@rytse
rytse / gr_py3_env.yml
Last active October 9, 2020 10:06
Python 3.7 conda env that gnuradio will install with (see full install guide here: https://gist.github.com/rytse/9f5c38caa9ce13e8063298be284c8897)
name: dsp
channels:
- conda-forge
- ostrokach
- anaconda
- defaults
dependencies:
- alabaster=0.7.12=py37_0
- asn1crypto=0.24.0=py37_0
- at-spi2-atk=2.16.0=1
rytse@rytse-VirtualBox:~$ sudo apt install libgtk-3-dev libgtk-3-0
[sudo] password for rytse:
Reading package lists... Done
Building dependency tree
Reading state information... Done
libgtk-3-0 is already the newest version (3.18.9-1ubuntu3.3).
The following package was automatically installed and is no longer required:
libllvm5.0
Use 'sudo apt autoremove' to remove it.
The following additional packages will be installed:
rytse@rytse-VirtualBox:~$ sudo apt install libgtk2.0-dev libgtk2.0-0
[sudo] password for rytse:
Reading package lists... Done
Building dependency tree
Reading state information... Done
libgtk2.0-0 is already the newest version (2.24.30-1ubuntu1.16.04.2).
The following package was automatically installed and is no longer required:
libllvm5.0
Use 'sudo apt autoremove' to remove it.
The following additional packages will be installed:
rytse@rytse-VirtualBox:~$ virtualenv venv
Running virtualenv with interpreter /usr/bin/python2
New python executable in /home/rytse/venv/bin/python2
Also creating executable in /home/rytse/venv/bin/python
Installing setuptools, pkg_resources, pip, wheel...^[[Ddone.
rytse@rytse-VirtualBox:~$ source venv/bin/activate
(venv) rytse@rytse-VirtualBox:~$ pip install pybombs
Collecting pybombs
Downloading https://files.pythonhosted.org/packages/f1/40/b820ecd701ffe7a222815769b372c4626f1122d70f0bdd3fb28976e8c7f6/PyBOMBS-2.3.2.tar.gz (75kB)
100% |████████████████████████████████| 81kB 3.8MB/s
(env) rytse@SEDRSSHYPRES:~$ pip install numpy mako lxml cheetah
Collecting numpy
Using cached https://files.pythonhosted.org/packages/85/51/ba4564ded90e093dbb6adfc3e21f99ae953d9ad56477e1b0d4a93bacf7d3/numpy-1.15.0-cp27-cp27mu-manylinux1_x86_64.whl
Collecting mako
Collecting lxml
Using cached https://files.pythonhosted.org/packages/39/e0/bb4bb8d03a98ba530a13e5d27c7ae5eb9b2b53ce36c4e854429fcf2b90be/lxml-4.2.4-cp27-cp27mu-manylinux1_x86_64.whl
Collecting cheetah
Collecting MarkupSafe>=0.9.2 (from mako)
Collecting Markdown>=2.0.1 (from cheetah)
Using cached https://files.pythonhosted.org/packages/6d/7d/488b90f470b96531a3f5788cf12a93332f543dbab13c423a5e7ce96a0493/Markdown-2.6.11-py2.py3-none-any.whl
(env) rytse@SEDRSSHYPRES:~$ !pybombs
pybombs prefix init ~/prefix -a myprefix -R gnuradio-default
PyBOMBS - INFO - PyBOMBS Version 2.3.2
PyBOMBS.prefix - WARNING - There already is a prefix in `/home/rytse/prefix'.
Continue using this path Y/[N]? y
Alias `myprefix' already exists, overwrite Y/[N]? y
PyBOMBS.prefix - INFO - Installing default packages for prefix...
PyBOMBS.prefix - INFO -
- gnuradio
PyBOMBS.Packager.apt - INFO - Install python-apt to speed up apt processing.
@rytse
rytse / setup.sh
Last active December 29, 2021 02:21
## Personal setup script
## TODO: before using, change email addresses in git and ssh
# Update system, install the basics
sudo apt update; sudo apt -y upgrade
sudo add-apt-repository ppa:pi-rho/dev -y
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt upgrade -y