Package Details: monodevelop-stable 8.4.3.12-2

Git Clone URL: https://aur.archlinux.org/monodevelop-stable.git (read-only, click to copy)
Package Base: monodevelop-stable
Description: An IDE primarily designed for C# and other .NET languages
Upstream URL: https://www.monodevelop.com
Keywords: mono monodevelop
Licenses: MIT
Conflicts: monodevelop
Provides: monodevelop, monodevelop-debugger-gdb
Replaces: monodevelop-debugger-gdb
Submitter: fusion809
Maintainer: coder2000
Last Packager: TheGoliath
Votes: 37
Popularity: 0.74
First Submitted: 2016-10-21 19:09
Last Updated: 2020-05-22 15:28

Required by (6)

Sources (1)

Pinned Comments

Xandaros commented on 2018-05-22 16:27

Some tips if you're having issues:

  1. If it complains about not being able to find .net core sdk, you can set the path in the preferences. Set it to /opt/dotnet/dotnet and it'll figure out the rest. (You do need to install dotnet-sdk, though)

  2. If it crashes shortly after opening a solution, try disabling the version control add-in (or just disable it in preferences). Worked for me

  3. If it works fine for a while and then randomly starts crashing, try applying this diff: https://github.com/mono/linux-packaging-monodevelop/blob/debian/7.5.0.1254-0xamarin1/debian/patches/4647.diff This was recommended to me, but did not actually solve the issue. Maybe it'll work for you, though

  4. Logs are in ~/.cache/MonoDevelop/Logs

doctorzeus commented on 2018-04-25 04:41

Please be aware that this package is compiled from source and will download around 400MB of data.

Also remember I don't develop this application, I simply maintain the PKGBUILD, for issues/bugs with the application itself log a report at https://github.com/mono/monodevelop after doing the usual google for a solution.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 ... Next › Last »

archnix commented on 2019-04-26 13:42

@docterzeus I understand and thank you for maintaining the PKGBUILD, I appreciate it.

The monodevelop launcher script is not created during configure - it is a static file created for another operating system.

So translation to Arch using the mentioned sed replaces - is absolutely valid in my opinion.

Same result - another place

build() {
  cd $_pkgname

  export PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig
  export CFLAGS+=" -I/usr/include/openssl-1.0"
  export LDFLAGS+=" -L/usr/lib/openssl-1.0 -lssl"
  export MONO_IOMAP=all

  ./configure --prefix=/usr --profile=stable

  sed -i "/export LD_LIBRARY_PATH\=/c\export LD_LIBRARY_PATH\=\/usr\/lib\/monodevelop\/bin\:\$\{LD_LIBRARY_PATH\}" $srcdir/$_pkgname/main/monodevelop
  sed -i "/EXE_PATH\=/c\EXE_PATH\=\/usr\/lib\/monodevelop\/bin\/MonoDevelop.exe" $srcdir/$_pkgname/main/monodevelop

  XDG_CONFIG_HOME="$srcdir"/config make
}

And thank you for responding - have a great day.

doctorzeus commented on 2019-04-26 09:26

Hi @fhdk,

Yes but it would be nice to have these re-definable during configure rather than post-compile "hacking" if you see what I mean as it's much better practice.

I'll try and put this in next release after testing.

Thanks again.

archnix commented on 2019-04-25 18:20

@doctorzeus

this might be something to bring up with the github dev's

You may be correct but as I found, the conflicts rise due to Archs unified folder approach where /bin and /sbin is symlinked to /usr/bin.

A collision rise in the original script which expects a folder /sbin/monodevelop/lib/bin and that folder cannot exist because /sbin is symlinked to /usr/bin and therefore collide with the monodevelop script.

So the correct approach may be to run sed on the script during package to correct both the LD_LIBRARY_PATH and the EXE_PATH to match Arch.

The script is located in src/monodevelop/main/monodevelop so something like this in package()

cd "$pkgdir/usr/bin"
sed -i "/export LD_LIBRARY_PATH\=/c\export LD_LIBRARY_PATH\=\/usr\/lib\/monodevelop\/bin\:\$\{LD_LIBRARY_PATH\}" monodevelop
sed -i "/EXE_PATH\=/c\EXE_PATH\=\/usr\/lib\/monodevelop\/bin\/MonoDevelop.exe" monodevelop

It is tested but feel free to correct me - I am not an expert on sed :)

doctorzeus commented on 2019-04-25 09:15

@fhdk Great thanks but this might be something to bring up with the github dev's as from what I can see these are not options that you can specify on configure (maybe this should be added).

I will look into making this a patch in the next release but don't want it to become a slippery slope of slowly patching each script inside the actual repo! :P

archnix commented on 2019-04-25 08:34

Yet another tip.

The script /usr/bin/monodevelop is not valid for Arch.

The environment variables created contains invalid paths.

A working script goes like this

#!/usr/bin/env bash

#Workaround for Unity gnome shell
export UBUNTU_MENUPROXY=0

# Ubuntu overlay scrollbars are not working well with the 1px boundaries in the monodevelop shell
export LIBOVERLAY_SCROLLBAR=0

# The Oxygen GTK theme crashes unless this is set
export OXYGEN_DISABLE_INNER_SHADOWS_HACK=1

# Add our bin/ to LD_LIBRARY_PATH so we can override system libs with bundles
### correct LD_LIBRARY_PATH
export LD_LIBRARY_PATH="/usr/lib/monodevelop/bin/:${LD_LIBRARY_PATH}"

#this script should be in $PREFIX/bin
MONO_EXEC="exec -a monodevelop mono-sgen"
### correct EXE_PATH
EXE_PATH="/usr/lib/monodevelop/bin/MonoDevelop.exe"

_MD_REDIRECT_LOG="${MD_REDIRECT_LOG:-${XDG_CONFIG_HOME:-$HOME/.config}/MonoDevelop/log}"

if [ -n "$_MD_REDIRECT_LOG" ]; then
    mkdir -p `dirname "$_MD_REDIRECT_LOG"`
    $MONO_EXEC $MONO_OPTIONS "$EXE_PATH" $* 2>&1 | tee "$_MD_REDIRECT_LOG"
else
    $MONO_EXEC $MONO_OPTIONS "$EXE_PATH" $*
fi

If I missed something please say so.

doctorzeus commented on 2019-04-19 01:21

Thanks @jenic.

I will update that on next release.

Unfortunately lots of packages in the AUR that don't have the base build tools as dependencies.

jenic commented on 2019-04-18 14:52

Not a huge deal but package also requires:

pkgconf, autoconf, automake

but those are not explicit dependencies. I should have had those anyway, but turns out most packages I make don't need them so I never noticed. shrug

barton commented on 2018-12-23 00:45

@Sodden's December 19th comment solved the issue that I've struggled to find a solution for for two years, now: The compiler complains that: namespace name 'TreeModel' does not exist in the namespace 'Gtk' (are you missing an assembly reference?) until I removed gtk-sharp-3 which had no dependencies. Thanks much!

Sodden commented on 2018-12-19 19:14

This does not compile if gtk-sharp-3 is installed. Took me a couple of tries to figure that one out -.-.

Edit: I had both gtk-sharp-2 and gtk-sharp-3 installed and it only picked up (auto-detected?) the later.

doctorzeus commented on 2018-12-01 19:40

@backerman current version is 7.8.0.338 and you flagged as out of date because 7.6.9.22 is out? Removing flag.