From ba1609aeb0ae1eb86640b384323438dce094b522 Mon Sep 17 00:00:00 2001 From: Kevin Mitchell Date: Sun, 20 May 2018 22:31:04 -0700 Subject: debian: update documentation --- README.rst | 70 +++++++++++--------------------------- debian/README.debian | 95 ---------------------------------------------------- debian/control | 2 +- 3 files changed, 21 insertions(+), 146 deletions(-) delete mode 100644 debian/README.debian diff --git a/README.rst b/README.rst index d1aa4e7..57e0a1a 100644 --- a/README.rst +++ b/README.rst @@ -12,8 +12,6 @@ OSX. Generic Instructions ==================== -(For Debian/Ubuntu see `Instructions for Debian and Ubuntu`_) - Make sure git is installed. Also check that the dependencies listed in the next section are installed. @@ -88,67 +86,39 @@ Do this in the mpv-build top-level directory (the same that contains the build scripts and this readme file). It must be done prior running ./build or ./rebuild. -Instructions for Debian and Ubuntu -================================== - -**Warning**: DO NOT USE THESE INSTRUCTIONS UNLESS YOU KNOW WHAT YOU ARE DOING. - These scripts are fragile (probably rather Debian's fault than ours). They - will often fail with weird errors that are hard to solve. They only exist - for users who want to hurt themselves. Use the generic instructions, unless - you really insist on having a Debian package as result. - -Install some fundamental packages with the command: - - apt-get install git devscripts equivs - -Now, to checkout the build repo, run: - - git clone https://github.com/mpv-player/mpv-build.git - - cd mpv-build +Instructions for Debian / Ubuntu package +======================================== -To make sure that everything is up to date: +To help track dependencies and installed files, there is the option to create a +Debian package containing the mpv binary and documentation. This is considered +advanced usage and you may experience problems if you have weird third party +repositories enabled or use exotic Debian derivatives. This procedure is +regularly tested on Debian Sid. - ./update +Install some basic packaging tools with the command: -Install the dependencies with: + apt-get install devscripts equivs - rm -f mpv-build-deps_*_*.deb +In the mpv-build root directory, create and install a dummy build dependency +package: mk-build-deps -s sudo -i -This will generate and install a dummy package that depends on the -required packages. The rm -f command makes sure there are no previous -versions of the build-deps package lying around that may otherwise -confuse mk-build-deps. - -If you don't want to use sudo, you can also try: - - mk-build-deps - - su -c 'dpkg -i mpv-build-deps_*_*.deb || apt-get install -f' - -You can now build a full mpv Debian package with the following command: +You can now build the mpv Debian package with the following command: dpkg-buildpackage -uc -us -b -j4 -"4" is the number of jobs running in parallel - change it to match -your number of processors. The file mpv__.deb -will be created in the parent directory. Install it with +Adjust the "4" to your number of available processors as appropriate. On +completion, the file mpv__.deb will be created in the +parent directory. Install it with sudo dpkg -i ../mpv__.deb -where you must replace with the version of mpv you just -built (as indicated in debian/changelog) and with your -architecture. As with the mpv-build-deps package, you should ensure -you are installing the correct package and not one you previously -compiled. - -To recompile a new package based on the latest sources, repeat the -above steps starting with and including ``./update``. +where you must replace with the version of mpv you just built (as +indicated in debian/changelog) and with your architecture. -For further information regarding the Debian package, see -debian/README.Debian. +To keep your package up to date, simply repeat the above commands after running +the `./update` script in the mpv-build root directory from time to time. Local changes to the git repositories ===================================== @@ -211,7 +181,7 @@ You can enable building libmpv by enabling the configure option: Note that this will make the mpv-build scripts also enable PIC for all used libraries. For this reason, be sure to run ``./clean`` before rebuilding. -The Debian packaging scripts do not support libmpv yet. +The Debian packaging scripts do not currently support libmpv. Contact ======= diff --git a/debian/README.debian b/debian/README.debian deleted file mode 100644 index 00ea1fb..0000000 --- a/debian/README.debian +++ /dev/null @@ -1,95 +0,0 @@ -mpv for Debian -============== - -This is the Debian package produced by the mpv-build scripts. It -contains a statically linked libass and ffmpeg (vs. libav contained in -Debian) from upstream. It is not an official part of the Debian -distribution. Instructions for building this package can be found in -the README.rst file in the mpv-build directory, or equivalently at [1]. - -[1] https://github.com/mpv-player/mpv. - -Differences with distribution packages -============================================ - -Debian testing/unstable already has a separate official package for mpv, which -closely tracks the current upstream releases. Debian stable, the latest Ubuntu -and Ubuntu LTS all also have official mpv packages, however these range from -outdated to extremely outdated. This pacakge can be compiled on all of these -platforms and offers either the most recent mpv release or git master. - -This pacakge statically links against the latest release or git master of ffmpeg. -Older Debian and Ubuntu use the libav fork of ffmpeg, and therefore that's what their -official mpv packages link against. However, ffmpeg is preferred for building -mpv as it enables more features. This situation is however changing as the -Debian testing version is now built against ffmpeg. - -Since the release cycle of libass is quite slow, even the "release" version of -this package links against the libass git master. Debian unstable uses the -latest libass release, while Debian stable, the latest Ubuntu and Ubuntu LTS all -use buggy and outdated libass releases. - -In order to maintain this interoperability between distributions, this -package must necessarily disable some features by default which are not -universally supported. These include Wayland support and libfdk for high -quality AAC encoding. These can hoewver be trivially enabled provided -sufficiently recent libraries as described below. - -On the other hand, this package enables native smb support (to play smb:// -URLs), video4linux2 (for web cams and video capture) and caca (for silly ascii -art output) which is not present in the official Debian package. - -Due to a persistent packaging bug, the official Ubuntu Trusty mpv is missing lua -support (therefore no on-screen controller). - -There are several other features that are disabled in both this -package as well as the official Debian package because they are not -widely needed or used. These include openal output, portaudio output, -rsound/libroar/sndio input/output, sdl1/sdl2, joystick, videoio.h/libpt. If -you find any of these useful, please open an issue at [3] explaining -why you think the feature in question should be enabled, and we can -try and include it in this package. - -[3] https://github.com/mpv-player/mpv-build/issues - -Building from git master -======================== -In addition to the default of building the latest released -version of mpv, this package can also trivially be built from the -latest git master of mpv (as well as ffmpeg and libass). As described -in README.rst [1], this is achieved by calling - - ./update --master - -prior to building this Debian package. - -Additional ffmpeg features -========================== - -All relevant and free ffmpeg features/codecs should be enabled. If -something is missing, it is a bug, and should be reported at [3]. -Features for which distribution packages are not universally available -are the exception. To enable the non-free Fraunhofer FDK AAC codec: - - apt-get install libfdk-aac-dev - echo --enable-nonfree --enable-libfdk-aac >> ffmpeg_options - -This must be done prior to building the package. - -Wayland support -=============== - -According to wayland.freedesktop.org, "Wayland is intended as a -simpler replacement for X, easier to develop and maintain". It is very -much a work in progress, so adequate functionality requires recent -version of the relevant libraries. At present, this not possible on -Debian Wheezy. To maintain interoperability, this package therefore -does not build with Wayland support by default. - -If you want Wayland support, you will need to manually install the -necessary packages before building: - - apt-get install libwayland-dev libxkbcommon-dev libegl1-mesa-dev - -The mpv build will then automatically detect and link to them if they are new -enough. diff --git a/debian/control b/debian/control index 5920a00..2e5b188 100644 --- a/debian/control +++ b/debian/control @@ -80,5 +80,5 @@ Description: mplayer/mplayer2 based video player MPV is a versatile CLI movie player, based on mplayer and mplayer2. . This package is not part of Debian. It was created by mpv-build scripts with - statically linked ffmpeg (not libav) and libass from upstream. + statically linked ffmpeg and libass from upstream. Homepage:https://github.com/mpv-player/mpv-build -- cgit v1.2.3