Package Details: miraclecast-git 221.36be37e-2

Git Clone URL: (read-only, click to copy)
Package Base: miraclecast-git
Description: MiracleCast provides software to connect external monitors to your system via Wifi. It is compatible to Miracast. Link-management works, everything else is still being worked on. Replaces openwfd. Contribute on
Upstream URL:
Licenses: GPL
Conflicts: miraclecast
Provides: miraclecast-git
Replaces: miraclecast
Submitter: albfan
Maintainer: albfan
Last Packager: albfan
Votes: 54
Popularity: 0.023105
First Submitted: 2017-09-01 01:25 (UTC)
Last Updated: 2018-04-09 19:49 (UTC)

Latest Comments

Xyne commented on 2021-11-19 11:52 (UTC) (edited on 2021-11-19 11:53 (UTC) by Xyne)

The "provides" array is a way to indicate to pacman which additional dependencies a package can satisfy. It should never contain $pkgname because it is already implicit that all packages satisfy dependencies on themselves. In the case of VCS packages, you should include the package name without the VCS suffix ("miraclecast" in this case) because the VCS package is normally functionally equivalent to the non-VCS version for dependency resolution. In general, for "foo-git", "provides=(foo)" and "conflicts=(foo)" mean that "foo-git" can be used in place of "foo" but not alongside it, usually due to conflicting files.

The "replaces" array should also be removed. That is reserved for packages that supersede other packages (e.g. for name changes). VCS packages provide alternatives, but they do not supersede their non-VCS counterparts.

This has always been our policy. You do not need to remove the $_name variable. It's common practice to define it and then use it throughout the PKGBUILD. Please see my suggestion below.

As for the package version, it should be updated automatically when you build the package due to the pkgver function. Whenever that's updated, you can reset the pkgrel to 1. The only time you would need to bump the pkgrel is if you update the PKGBUILD without changing the pkgver, which may happen if upstream is not very active.

# Maintainer: Alberto Fanjul <>
pkgdesc="MiracleCast provides software to connect external monitors to your system via Wifi. It is compatible to Miracast. Link-management works, everything else is still being worked on. Replaces openwfd. Contribute on"
arch=('i686' 'x86_64' 'armv6h' 'armv7h')
depends=(git "systemd>=221" "python3" "glib2")

build() {
  cd "$srcdir/$_name"
  ./configure --prefix=/usr --sysconfdir=/etc

check() {
  cd "$srcdir/$_name"
  make -k check

package() {
  cd "$srcdir/$_name"
  make DESTDIR="$pkgdir/" install

pkgver() {
  cd "$srcdir/$_name"
  echo $(git rev-list --count HEAD).$(git rev-parse --short HEAD)

albfan commented on 2021-11-19 11:29 (UTC)

I was explicitly told to provide a vcs package and provide miraclecast-git that do conflict with a possible miraclecast from releases. Is the policy changing?

If I remove the $name I will have to remove that on build all steps too right? Why is that needed?

Should I set package version as 1 always for a vcs package?

Marzal commented on 2021-11-18 19:13 (UTC)


Note: Packages in the AUR assume that the base-devel group is installed, i.e. they do not list the group's members as build dependencies explicitly.

js-on commented on 2021-11-18 13:25 (UTC) (edited on 2021-11-18 13:26 (UTC) by js-on)

Was not able to install aur/miraclecast-git 221.36be37e-2 on the fly on 5.13.19-2-MANJARO #1 SMP PREEMPT Sun Sep 19 21:31:53 UTC 2021 x86_64 GNU/Linux. autoreconf from package autoconf and aclocal from package automake were missing. May add it to the requirements?

eNV25 commented on 2021-08-19 11:30 (UTC)

diff with the necessary changes:

diff --git a/PKGBUILD b/PKGBUILD
index bc4f634..a9876e4 100644
@@ -1,18 +1,17 @@
 # Maintainer: Alberto Fanjul <>
 pkgdesc="MiracleCast provides software to connect external monitors to your system via Wifi. It is compatible to Miracast. Link-management works, everything else is still being worked on. Replaces openwfd. Contribute on"
 arch=('i686' 'x86_64' 'armv6h' 'armv7h')
 depends=(git "systemd>=221" "python3" "glib2")

 build() {

kuldeep commented on 2019-10-05 14:14 (UTC) (edited on 2019-10-05 14:14 (UTC) by kuldeep)

In build() before executing ./, I had to call dos2unix on multiple files (to make it compile):

build() {
  cd "$srcdir/$_name"
  dos2unix ./
  find . -name \*.m4|xargs dos2unix
  find . -name \*.ac|xargs dos2unix
  find . -name \*.am|xargs dos2unix
  ./configure --prefix=/usr --sysconfdir=/etc

Xyne commented on 2019-08-15 12:24 (UTC)

The entry in the provides array should be "miraclecast", not "miraclecast-git".

albfan commented on 2018-04-09 19:51 (UTC)

Thanks @servimo, fixed

servimo commented on 2018-04-07 15:24 (UTC) (edited on 2018-04-07 15:33 (UTC) by servimo)

package "git-core" does not exist

albfan commented on 2017-09-01 01:27 (UTC)

thanks @cyrozap. I did a merge request for

cyrozap commented on 2017-08-31 20:17 (UTC)

As rafasc mentioned, this package is currently not following the package guidelines. Typically, packages without a VCS suffix are built from tagged releases/tarballs or from a specific commit (for example, "rtmpdump"), not from git master. I think the simplest way to solve this issue is to push the repo for this package to "miraclecast-git", add "miraclecast" to the list of package conflicts for "miraclecast-git", and then modify "miraclecast" to build from either a specific commit hash or, preferably, a tagged release/commit. The alternative is to rename this package to "miraclecast-git". It's a more involved process, but it might result in less confusion. To rename this package (preserving votes and comments): 1. In the PKGBUILD: a. Change `pkgname` to "miraclecast-git". b. Add "miraclecast" to `conflicts` and `replaces` (it can be removed from `replaces` once there's an official "miraclecast" package). 2. Regenerate `.SRCINFO`. 3. Commit your changes. 4. Push to `ssh://`. 5. Submit a merge request at to merge "miraclecast" into "miraclecast-git".

albfan commented on 2017-08-26 18:00 (UTC)

This package depends on master, how can it be outdated?

albfan commented on 2017-08-26 17:58 (UTC)

I read through Doesn't make sense to me that pacaur forces me to name my package. I'm trying to create the official package (and pass from AUR to ABS someday in future) so by now it depends on master, but this is the stable one. Yaourt don't force you to follow that convention. @rafasc Do you have any link to official docs that forces that convention?

rafasc commented on 2017-03-09 00:12 (UTC)

when installing with pacaur: miraclecast package(s) failed to install. Check .SRCINFO for mismatching data with PKGBUILD. I believe this is due to: Suffix pkgname with -cvs, -svn, -hg, -darcs, -bzr, -git etc. unless the package fetches a specific release

albfan commented on 2017-02-24 16:42 (UTC)

@mirco done

mirco commented on 2017-02-23 12:54 (UTC)

Please add git as a makedepends. As your source is a git repo it won't build without git.

d1x commented on 2016-09-09 09:45 (UTC)

Sry my bad, I found out that the issue was in my GIT configuration I ran: git config --global core.autocrlf input to change clone to use correct line endings and the issue disappeared

d1x commented on 2016-09-09 09:36 (UTC) has Windows line endings which causes: ./ /bin/sh^M: bad interpreter: No such file or directory I'm wondering if I'm able to overcome this issue with some local configuration or I will have to update line endings to UNIX-like and build the package manually.

albfan commented on 2016-07-22 04:59 (UTC)

Please check it now. Don't hesitate to propose changes, they're well received

montefuscolo commented on 2016-07-14 20:51 (UTC)

What happens if I manually download[1] the linux-headers 4.2 and build the re-run the build? [1]

kevincox commented on 2016-05-10 15:24 (UTC)

This isn't building anymore. error: target not found: linux-headers<4.3

albfan commented on 2015-12-09 12:24 (UTC)

Is nasty but you should replace systemd with systemd with kdbus. There's an issue to isolate miraclecast from kdbus but not yet completed. You can try wds from intel for a miracast sink without systemd kdbus dependency. As systemd changes frequently, one should tweak PKGBUILD from abs for systemd (just enabling kdbus replacing --disable-kdbus to --enable-kdbus) and you're done. I'm looking for a solution but can't imagine how to update automatically AUR package when systemd changes.

hansmaulwurf commented on 2015-12-09 12:09 (UTC)

i'm not able to install it via yaourt because systemd-kdbus wants to replace systemd and it doesn't resolve the conflict. you're just using some libs, aren't you? could you jus tadd the libs instead of using the whole systemd-kdbus?

albfan commented on 2015-11-14 09:20 (UTC)

Thanks @aurabindo. Indeed there was a lot to change I have added a github clone to support issues and pull request

aurabindo commented on 2015-11-14 08:09 (UTC)

please add "./configure" to the build() after ./autogen

hansmaulwurf commented on 2015-11-03 06:51 (UTC)

Seems like the error comes from systemd-kdbus

albfan commented on 2015-10-23 15:42 (UTC)

Uhmm let me chek it out

hansmaulwurf commented on 2015-10-20 21:33 (UTC)

using yaourt does give an error in prepare()? tested with fresh installed antergos with gnome3