nmilosev

by Nemanja Milosevic

Fedora Project Ambassador. .NET/Java developer. Favorite piano key: C#

Page 2


Running Docker on Crouton Fedora 24

Now that we have VirtualBox in Crouton Fedora, setting up Docker is very easy using Docker Machine. If you don’t know about Docker Machine, it’s a utility to install boot2docker which is a tiny Linux distribution made specifically for running Docker images.

 Setting up everything

First, we want to install Docker (from Fedora repos) and docker-machine:

dnf install docker
curl -L https://github.com/docker/machine/releases/download/v0.7.0/docker-machine-`uname -s`-`uname -m` > /bin/docker-machine
chmod +x /bin/docker-machine

After that, let’s create a VirtualBox Docker VM:

docker-machine create --driver virtualbox default

Sadly this will result in an error somewhat like this:

...
(default) Check network to re-create if needed...
(default) Creating a new host-only adapter produced an error: /bin/VBoxManage hostonlyif create failed:
(default) 0%...
(default) Progress state:

Continue reading →


VirtualBox 5.0 and Crouton Fedora 24

Recently I had to install VirtualBox onto my Chromebook which is running the latest version of Crouton Fedora with Fedora 24 which you can get from Github.

Installing VirtualBox in the original Crouton with Ubuntu/Debian is very easy because one of the Crouton developers divx118 (huge props to him) builds .deb packages with kernel headers, so you don’t have to compile the entire kernel yourself to get the VirtualBox modules running.

Installing VirtualBox on Crouton Fedora is also very easy because it can use the mentioned prebuilt packages, but there are a few extra steps needed.

 Modifying the cmdline to enable module sideload and VT-x

We have to tell the ChromeOS kernel that we want to load extra modules ourselves and that we want to enable virtualization. There is a very nice script by divx118 which does this for us:

Execute this from crosh shell (not Fedora shell):

cd

Continue reading →


Running .NET Core RC2 on Fedora 23

If you want to try the latest and greatest of .NET Core on your Fedora machine you will be sad to hear that there isn’t a package available at the official website yet (Fedora support is coming):

https://www.microsoft.com/net/download

Luckily with some strace magic and a package from CentOS repository it is very easy to set it up.

First let’s download the CentOS package from the official storage and unpack it:

mkdir ~/dotnet
cd ~/dotnet
wget https://dotnetcli.blob.core.windows.net/dotnet/beta/Binaries/1.0.0-preview1-002702/dotnet-dev-centos-x64.1.0.0-preview1-002702.tar.gz
tar xf dotnet-dev-centos-x64.1.0.0-preview1-002702.tar.gz
rm dotnet-dev-centos-x64.1.0.0-preview1-002702.tar.gz

And you’re done! There is a dotnet executable file which you can try to run but sadly it won’t work just yet…

[fedora@localhost dotnet]$ ./dotnet --version
Failed to initialize CoreCLR, HRESULT:

Continue reading →


Presenting at Tarabica 2016 Belgrade - Conference report

This year I was very surprised and grateful to be invited to speak for the first time at one of the biggest IT conferences in Serbia - Tarabica # Conference. It was held at the Singidunum University in Belgrade on May 7th. I met some really great and interesting people there and had lots of fun in the process.

My presentation was titled “.NET Development Toolchain on Linux” and I talked about how you can make great .NET applications using great tools on non-Windows operating systems and also a bit about what is FOSS and how you can use open source libraries in your software. I also had a live demo of a .NET Core application running off my phone where my tinkering experience with GNURoot/Fedora ARM really paid off.

I wanted to write a quick report on this awesome event so here it goes…

 Before the conference

To start, when I was invited to be a speaker I only knew vaguely what I will

Continue reading →


Crouton Fedora new version available!

Hey everyone! New version of my Crouton fork for Fedora is available at:

https://github.com/nmilosev/crouton-fedora/

I’ve managed to clean the scripts even further, and now it is using Docker images from Koji to set itself up instead of downloading RPM’s. You save a lot of data and a lot of time. It now can install a base Fedora system in less than a minute. See it in action:

http://webmshare.com/74VrR

Have fun and send patches! :)

Continue reading →


DBus woes with Fedora in a chroot

If you try to run Fedora in a chroot you may encounter a very annoying issue of DBus simply not working at all. I was trying to install XFCE4.12 inside my Fedora 23 chroot in the GNURoot application and I was getting these errors:

(xfce4-session:32537): xfce4-session-CRITICAL **: Unable to contact D-Bus session bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

The same error was also present in the GNURoot Debian app. Fortunately it wasn’t showing in the old, old Fedora 17 chroot, where XFCE4.8 worked like a charm.

So I thought it is a XFCE4 issue. Sadly this wasn’t the case and I lost much precious time trying to debug this. Fortunately after much trial and error I can offer a simple solution (which isn’t pretty) but

Continue reading →


Installing Mono and .NET Core with Kestrel on Fedora 23 (Quick guide)

Installing Mono and .NET Core is very simple on Fedora 23, even though there are no official docs.

Step 1: Install Mono and dependencies:

sudo dnf install mono-devel openssl-devel libunwind

or, if you want to install Mono from their repository (newest stable versions):

sudo rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
sudo dnf config-manager --add-repo http://download.mono-project.com/repo/centos/
sudo dnf install -y mono-complete openssl-devel libunwind --refresh

Step 2: Install libuv (for Kestrel):

sudo dnf install libuv libuv-devel

Step 3: Install dnvm (dot-net-version-manager) and test it:

curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh
dnvm list # should return blank list

Step 4: Install the latest .NET runtime (Mono and coreclr)

Continue reading →


Running Fedora off a USB flash drive (performance tips)

I wanted to try running Fedora outside of chroot on my Chromebook. Because I didn’t want to mess with the complicated ChromeOS partition structure I decided to install Fedora to a USB flash drive.

 The USB drive

I wanted to get a nice and quick USB3 flash drive which had low-enough profile so it doesn’t stick too much out of my Chromebook’s USB port. Sadly there aren’t that many options, there is the SanDisk Ultra Fit drive and Kingston DataTraveler micro 3.1. I went with the Kingston drive because it was available in my country while SanDisk wasn’t. It’s made of metal and it sticks about a centimeter out of the USB port, so it doesn’t get in the way at all. The performance is mostly as advertised, I am getting about 95MB/s reads and around 15MB/s writes which is mostly fine for running Fedora. The drive gets a bit hot under load but nowhere near uncomfortable. It’s also worth

Continue reading →


Fedora on non-rooted Android phones - 2016 another update!

After much trial and error and fighting with permissions, I’ve managed to create a much more simpler way of getting a Fedora 23 chroot running on a non-rooted Android phone. So here it goes:

  • Download GNURoot and GNURoot Fedora Remix from the Google Play Store and install them both
  • Download the Fedora 23 replacement package I’ve built here:
https://drive.google.com/file/d/0B-Bo26Xjw1ecTkVxX3BiUENhbG8/view?usp=sharing

SHA256: cac8137c15e2bd3321be120ee658efab5aeccaa62494455e2ca90936982844e3
File size: 290,476,814 bytes

This is only for ARM processors, sorry, if you need other architecture, please use the tutorial.

  • Copy the file to your Android phone/tablet internal storage obb folder. I like to use ADB over MTP:
adb push [path to downloaded file] /sdcard/Android/obb/champion.gnuroot.fedora/main.3.champion.gnuroot.fedora.obb
  • Open GNURoot and install Fedora chroot by choosing it

Continue reading →


Fedora on non-rooted Android phones - 2016 update

IMG_20160222_214435.jpg

Hi everyone, just wanted to give you a quick update on the Fedora in a Android chroot project. Anyway, I’m pleased to report that my tutorial here:

http://nmilosev.svbtle.com/gnuroot-fedora-arch

is still working fine! I am currently working on an image which would replace the original Fedora 17 image from GNURoot, so that you don’t have to install the “helper distribution”. (edit: DONE! http://nmilosev.svbtle.com/fedora-on-nonrooted-android-phones-2016-another-update) The only missing bit is the Fedora 23 image, so I created one which you can download from my Google Drive here:

http://bit.ly/1QxW3zy

SHA256: a2f0b18906cfc1d8ed0e866631d8f33993d5e5f838caa894ce6da7a925e51f24
Size: ~200MB
Installed: ~700MB

It’s an untouched Fedora minimal ARM image rootfs tarball, with some stuff removed (like kernel, boot partition etc.). You can follow the old tutorial with this file and it will

Continue reading →