uhd/host/lib/utils/paths_python.hpp
Martin Braun 1383fde345 uhd: paths: Harmonize around XDG Base Directory specification
Up until now, we completely ignore the XDG specification.

This commit does the following to change that:

- It uses XDG_DATA_HOME and XDG_CONFIG_HOME for cal and config data,
  respectively.
- If config data is in ~/.uhd/uhd.conf, that is still accepted, but if
  it conflicts with $XDG_CONFIG_HOME/uhd.conf, it is ignored and a
  warning is displayed
- The default location for cal data is thus ${HOME}/.local/share/uhd/cal
  on Unix, and %LOCALAPPDATA%\uhd\cal on Windows. This is a change in
  location!
- The UHD_CONFIG_DIR environment variable was confusingly named and is
  now removed. It provided an alternative location than the home
  directory. The same purpose is now much better served by XDG_DATA_HOME
  and XDG_CONFIG_HOME.

The specification can be found here:
specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
2020-04-02 12:36:20 -05:00

24 lines
718 B
C++

//
// Copyright 2020 Ettus Research, a National Instruments Brand
//
// SPDX-License-Identifier: GPL-3.0-or-later
//
#ifndef INCLUDED_UHD_PATHS_PYTHON_HPP
#define INCLUDED_UHD_PATHS_PYTHON_HPP
#include <uhd/utils/paths.hpp>
void export_paths(py::module& m)
{
m.def("get_tmp_path", &uhd::get_tmp_path);
m.def("get_lib_path", &uhd::get_lib_path);
m.def("get_pkg_path", &uhd::get_pkg_path);
m.def("get_cal_data_path", &uhd::get_cal_data_path);
m.def("get_images_dir", &uhd::get_images_dir);
m.def("find_image_path", &uhd::find_image_path);
m.def("find_utility", &uhd::find_utility);
m.def("print_utility_error", &uhd::print_utility_error);
}
#endif /* INCLUDED_UHD_PATHS_PYTHON_HPP */