config BR2_PACKAGE_RANGER
	bool "ranger"
	depends on BR2_USE_MMU # python3
	depends on BR2_USE_WCHAR # python3
	depends on BR2_TOOLCHAIN_HAS_THREADS # python3
	depends on !BR2_STATIC_LIBS # python3
	select BR2_PACKAGE_PYTHON3 if !BR2_PACKAGE_PYTHON
	select BR2_PACKAGE_PYTHON_CURSES if BR2_PACKAGE_PYTHON
	select BR2_PACKAGE_PYTHON3_CURSES if BR2_PACKAGE_PYTHON3
	help
	  ranger is a console file manager with VI key bindings. It
	  provides a minimalistic and nice curses interface with a
	  view on the directory hierarchy.  It ships with "rifle", a
	  file launcher that is good at automatically finding out
	  which program to use for what file type.

	  http://ranger.nongnu.org

comment "ranger needs a toolchain w/ wchar, threads, dynamic library"
	depends on BR2_USE_MMU
	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
