I'm throwing together this little guide to help jumpstart people who are new to linux/android/kernel development.
This guide is for Linux. If you are running Windows or Mac and get this working please show us your ways. I'll update the guide with info for those platforms.
Do yourself a favor and go through all the steps at least once. Having a properly setup kernel source is worth waiting the five minutes to compile a kernel once, even if all you want to do is compile a module.
I put all my downloads in "~/Downloads" and my working stuff in "~/code". You'll have to adapt the paths used to your own needs.
Also, you'll notice I put "-j8" after most of my make commands. You will want to adjust this to how many cpu's your computer has. So if you have a dual core then "-j2" or a quad core then "-j4". If you have a cpu that supports hyperthreading you can double the number of cores. I have 4 cores that support hyperthreading so i do "-j8".
Get the B&N source.
I couldn't get modules loaded that were compiled with Google's ndk. A "cat /proc/version" and a quick google search had me getting the Sourcery compiler which is what B&N used apparently.
Download the Sourcery compiler here. I chose the "advanced" linux version.
Now we need to unzip our compiler and B&N sources.
Code:
$ cd ~/code
$ tar -xjf ~/Downloads/arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
$ tar -xzf ~/Downloads/nook_tablet_1-4.tar.gz
Now to get things built. Thanks to nookdevs for getting me pointed in the right direction
First we need to build u-boot, this will allow us to make the uImage flavor of the kernel.
Code:
$ cd distro/u-boot
$ make -j8 ARCH=arm CROSS_COMPILE=~/code/arm-2010q1/bin/arm-none-linux-gnueabi- omap4430sdp_config
$ make -j8 ARCH=arm CROSS_COMPILE=~/code/arm-2010q1/bin/arm-none-linux-gnueabi-
$ make -j8 tools
Add the tools to the path so the kernel build has access to mkimage.
Code:
$ PATH=$PATH:~/code/distro/u-boot/tools/
Now we build the kernel.
Code:
$ cd ../kernel/android-2.6.35
$ make -j8 ARCH=arm android_4430BN_defconfig
$ make -j8 ARCH=arm CROSS_COMPILE=~/code/arm-2010q1/bin/arm-none-linux-gnueabi- uImage
And finally build a module. I've attached the source for a simple one just to test things out. Cribbed from tldp.org
Unzip the attachment in a directory of your choice. I used ~/code.
Code:
$ cd ~/code/hellokmod
$ make ARCH=arm CROSS_COMPILE=~/code/arm-2010q1/bin/arm-none-linux-gnueabi- KDIR=~/code/distro/kernel/android-2.6.35
And test it out!
Code:
$ adb push hello-1.ko /data/local/
$ adb shell
$ su
# insmod /data/local/hello-1.ko
# dmesg
If you have a "hello world" at the end of your dmesg output, then it worked! grats on your module.
P.S. rmmod doesn't work, anyone know what is wrong with the module code that won't allow it to unload?
P.P.S If you want to build a customized kernel, you can replace the "make -j8 ARCH=arm android_4430BN_defconfig" line with a "make menuconfig" to fine tune things. This won't do us much good though until we get kexec or something similar working thoug.
Very nice guide, but I always thought that the -j# option on make should be: number of cores + 1.
For anyone wanting to give this guide a try, but are unwilling or unable to sacrifice Windows drive space to dual boot into Linux, I highly recommend VirtualBox from Oracle. With it, you can create a virtual Linux installation. You can see (some of) the different distro's at Distrowatch. There are several Virtualbox installation guides available specifically for Ubuntu that can be adapted for any distro you like.
Sources are invalid
Code:
Texas Instruments X-Loader 1.41 (Oct 21 2011 - 14:00:05)
Start not on PWRON, skipping power button check.
mmc read: Invalid size
Starting OS Bootloader from MMC/SD1 ...
U-Boot 1.1.4-acclaim1.4_1.4.0.1029^{} (Nov 11 2011 - 12:34:20)
Load address: 0x80e80000
DRAM: 1024 MB
Using default environment
In: serial
Out: serial
Err: serial
hw_status 0x2b vbus_status 0x84
Detection done: USB2PHYCORE 0x00a06260
MAX17042+UBOOT: battery type=LG
MAX17042+UBOOT: gas gauge detected (0x0002)
MAX17042_STATUS (00h) is 0x0002
MAX17042+UBOOT: BATTERY Detected!
MAX17042+UBOOT:POR detected!
No valid max17042 init data found, assume no battery history
MAX17042_Version (21h) is 0x0092
MAX17042_DesignCap (18h) is 0x07d0
MAX17042_OCV (fbh) is 0xfeab
MAX17042_FSTAT (fdh) is 0x3950
MAX17042_SOCvf (ffh) is 0xd692
uboot verify: 1d CONFIG is 2210 ; should be 2210 & 0xFDFB
uboot verify: 2a RELAXCFG is 083b ; should be 083b
uboot verify: 29 FILTERCFG is 87a4 ; should be 87a4
uboot verify: 28 LEARNCFG is 2406 ; should be 2406 & 0xFF0F
uboot verify: 18 DesignCap is 07d0 ; should be 205c
max17042_write_custom_para: use hardcoded values
ICHGTerm = 0x0140
use hardcoded Capacity 0x205c
VFSOC = 0xcb7a
fullcap0=0x2067 VFSOC=0xcb7a remcap=0x41ee
MAX17042_STATUS (00h) is 0x0002
STATUS = 0x0002 -- clearing POR
MAX17042_STATUS (00h) is 0x0000
Max17042 init is done
SOC 203%, booting.
Board revision PVT
Booting from sd
Autobooting in 0 seconds, press <SPACE> to stop...
mmc read: Invalid size
2682712 bytes read
booti: bad boot image magic
OMAP44XX SDP #
This is a development thread. Do not post "good job", or "great idea", or "cool, i'm trying this now".. I want feedback.
Introduction
This is a precursor to a possible way of running a custom kernel and ROM on the Nook Tablet in a chroot environment. I've been working on an Android app and almost have a usable installer for my AndBuntu project. If we are sucessful, this installer can be converted to a Un-Nook-er app "AndNook" which may be used to install custom kernels and ROMs with additional work.
So, with that said, lets get to it.
You will need:
This is all the software you will need to run this script. If you don't have a Debian Linux based computer, you can dual boot, install Ubuntu within Windows, or run it from a memory stick.
A rooted Nook Tablet
Android Market installed on the Nook Tablet
Busybox Installed on the Nook Tablet
A Terminal Emulator installed on the Nook Tablet
A VNC viewer Installed on the Nook Tablet
A Linux computer, dual boot or run from a memory stick
Getting started
The basic process will go like this.. Generate an image in Ubuntu, put that on your /sdcard/Ubuntu folder and then execute a script
On the Linux computer execute the following code block
Code:
cd ~/Desktop
sudo apt-get install rootstock
sudo rootstock --dist maverick --seed lxde,tightvncserver,openoffice.org,gimp,ssh --fqdn localhost --login ubuntu --password ubuntu --imagesize 3800M --notarball --fullname "Ubuntu for Android" --kbmodel pc104 --locale en_US.UTF-8 --serial ttyS0 --doswap --swapsize 256M
This will take a while, and it will generate a image file with a bunch of charactors like ***************.img.
rename this file "ubuntu.img" without the quotes
create a folder on the Nook Tablet called "/sdcard/ubuntu". (that's internal storage folder "/ubuntu/")
copy the "ubuntu.img" file to the folder
copy THIS SCRIPT to your sdcard/ubuntu/ folder and name it "uboot".
launch the terminal emulator and execute the following code block
Code:
su
sh /sdcard/ubuntu/uboot
Paste the output of that command here. If it failed stop. If it worked, keep going
in the Ubuntu environment execute the following code block
Code:
/firstRun
tightvncserver
tightvncserver may ask you for a password
Launch your VNC Viewer app
Specify 127.0.0.1 as the connection address. Use your password which you selected in previous code block.
Please note, the script is designed for a Samsung Android device. There is a line in the SH script
Code:
export UbuntuLoopFS=/sdcard/ubuntu/ubuntu.img
This line may require modification.
I'm looking for feedback. If you cannot understand what's going on, please don't post. This is not user friendly.
I take no responsibility or liability for anything which may happen to your device. This may force your device into a boot loop 8 times and your device will be factory restored. If it does, please let me know and I will make changes accordingly.
I am interested in trying this but
How much data will need to be downloaded, I currently only have "borrowed" WiFi and cell phone
And does this give you a fully usable ubuntu with desktop and ability to install linux apps
thanks for info
little8020 said:
I am interested in trying this but
How much data will need to be downloaded, I currently only have "borrowed" WiFi and cell phone
And does this give you a fully usable ubuntu with desktop and ability to install linux apps
thanks for info
Click to expand...
Click to collapse
about 2-400 megs
Not sure if it makes a difference, but the NT mounts the sdcard at /mnt/sdcard
Any way, though, I have a Linux Mint (based on Ubuntu) distro installed through VirtualBox, and I'll throw together an Ubuntu installation as well right now. I'm more than willing to help out.
(misinterpreted the meaning of 'feedback'. Apologies.)
EDIT 2: Turning this into a useful post. Hopefully this is the kind of bull**** you want. If not, I'll try again!
Tried the image build on a system running Oneiric. Receive segfaults when attempting to add CA certs to java.
Code:
Setting up ca-certificates-java (20100412) ...
creating /etc/ssl/certs/java/cacerts...
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/var/lib/dpkg/info/ca-certificates-java.postinst: line 40: 16110 Segmentation fault LANG=C LC_ALL=C keytool -importcert -trustcacerts -keystore $KEYSTORE -noprompt -storepass "$storepass" -alias "$alias" -file "$cacertdir/$pem" > $log 2>&1
/var/lib/dpkg/info/ca-certificates-java.postinst: line 40: 16113 Segmentation fault LANG=C LC_ALL=C keytool -importcert
trustcacerts -keystore $KEYSTORE -providerClass sun.security.pkcs11.SunPKCS11 -providerArg '${java.home}/lib/security/nss.cfg' -noprompt -storepass "$storepass" -alias "$alias" -file "$cacertdir/$pem" > $log 2>&1
error adding brasil.gov.br/brasil.gov.br.crt
Many segfaults follow. One for each cert it tried to install. Image build abends shortly after with an error code 1 in sub-process /usr/bin/dpkg.
At first I thought this might be due to my use of OpenJDK. I removed OpenJDK, installed Sun/Oracle JDK and experienced same. This may be Oneiric-specific. For giggles I'm trying oneiric as the dist in a follow-up build on this machine, and also moving to a second Ubuntu box that's running Maverick for another try at the original instructions. Will edit this post with future updates.
AdamOutler said:
[*]On the Linux computer execute the following code block
Code:
cd ~/Desktop
sudo apt-get install rootstock
sudo rootstock --dist maverick --seed lxde,tightvncserver,openoffice.org,gimp,ssh, -fqdn localhost --login ubuntu --password ubuntu --imagesize 3800M --notarball --fullname "Ubuntu for Android" --kbmodel pc104 --locale en_US.UTF-8 --serial ttyS0 --doswap --swapsize 256M
This will take a while, and it will generate a image file with a bunch of charactors like ***************.img.
Click to expand...
Click to collapse
Arg, I let this go for ~an hour on my netbook and got a long way through the process before I got:
Code:
/usr/bin/stat: cannot read file system information for `/home/UserUser': No such file or directory
Segmentation fault
Can this be done on a 64-bit installation of ubuntu? I have that on the more powerful desktop downstairs.
You know that this is already in the market... Ubuntu install guide. An image of 10.10 for Arm is linked in the app along with the script to start it. I have it installed and running. Only issue I have is that the resolution is lower than Blaze as the image is designed for phones.
Sent from my BNTV250 using xda premium
liquidzoo said:
Not sure if it makes a difference, but the NT mounts the sdcard at /mnt/sdcard
Any way, though, I have a Linux Mint (based on Ubuntu) distro installed through VirtualBox, and I'll throw together an Ubuntu installation as well right now. I'm more than willing to help out.
Click to expand...
Click to collapse
mint will work.
LouZiffer said:
Personally I'd like the option of a slimmed down version that doesn't include the overhead of X/VNC, though I can understand the advantages of a GUI from a usability standpoint. That's a simple matter of generating an image without those options, but you might want to consider it if you're offering pre-generated images or scripts for download at some point.
Sent from my HTC Evo Design 4G using XDA Premium
Click to expand...
Click to collapse
This is the kind of bull**** I don't want in this thread. Congratulations on wasting a post.
jeph36 said:
Arg, I let this go for ~an hour on my netbook and got a long way through the process before I got:
Code:
/usr/bin/stat: cannot read file system information for `/home/UserUser': No such file or directory
Segmentation fault
Can this be done on a 64-bit installation of ubuntu? I have that on the more powerful desktop downstairs.
Click to expand...
Click to collapse
you need to log in as a full user. UserUser is not a valid user. Useruser does not have a home folder.
AdamOutler said:
you need to log in as a full user. UserUser is not a valid user. Useruser does not have a home folder.
Click to expand...
Click to collapse
It actually was "/home/jeph36/" where 'jeph36' is my normal ubuntu login. When I posted I thought maybe I should change it for some privacy reason, only to later realize that it is my xda user name anyway. I assume by "full user" you just mean the user that I use to login.
Edit: I tried again on the same computer with the same result. I am not sure what is missing. Unfortunately I can not stay up later to try on a different computer or with a new install (new 3-day old baby, work tomorrow, etc). Hopefully someone else has this working by tomorrow afternoon/evening, but if not I will get on it then.
AdamOutler said:
This is a development thread. Do not post "good job", or "great idea", or "cool, i'm trying this now".. I want feedback.
<QUOTE SNIP>
.
Click to expand...
Click to collapse
Saw a few mistakes such as "sh /sdcard/uboot" Shouldnt it be "sh /sdcard/ubunbtu/uboot"? I am currently n the proccess of getting ubuntu up and running in virtualbox and will be trying this out once i get this up and running for you.
Edit: The rootstock command did not work for me on ubuntu 10.04 it just spits out the command usage spill. IT installed rootstock just fine tho. so I am lost at the moment until I get some feedback of my own here. do I need to iunstall anything ontop of my fresh ubuntu install to get this working?
Edit got the command working but its still flawed big time as it keeps kicking out errors at me. You are going to want to take a good look at it and fix it.
Ed ok I managed to create the image file and here is the command i used to do it
Code:
sudo rootstock --dist maverick --seed lxde,tightvncserver,openoffice.org,gimp,ssh, -f localhost --l ubuntu --p ubuntu --imagesize 3800M --notarball --fullname "Ubuntu for Android" --kbmodel pc104 --locale en_US.UTF-8 --serial ttyS0
Not sure if it will work correctly or not but I am going to find out soon.
Edit: Ok got it transfered over and ran the "sh /sdcard/ubuntu/uboot" Command and this is the output from it
Code:
: permission denied
"
"
"
"
"
"
"
"
"
The command executed failed. please search for this command on Google. IF that fails, try [url]www.ubuntuforums.org[/url].
: permission denied
"
"
"
Setting up environmental variables
test: permission denied
Environmental is:
/sdcard/ubuntu/uboot: 96: Syntax error: "else" unexpected (expecting "then")
Montisaquadeis said:
Saw a few mistakes such as "sh /sdcard/uboot" Shouldnt it be "sh /sdcard/ubunbtu/uboot"? I am currently n the proccess of getting ubuntu up and running in virtualbox and will be trying this out once i get this up and running for you.
Edit: The rootstock command did not work for me on ubuntu 10.04 it just spits out the command usage spill. IT installed rootstock just fine tho. so I am lost at the moment until I get some feedback of my own here. do I need to iunstall anything ontop of my fresh ubuntu install to get this working?
Edit got the command working but its still flawed big time as it keeps kicking out errors at me. You are going to want to take a good look at it and fix it.
Ed ok I managed to create the image file and here is the command i used to do it
Code:
sudo rootstock --dist maverick --seed lxde,tightvncserver,openoffice.org,gimp,ssh, -f localhost --l ubuntu --p ubuntu --imagesize 3800M --notarball --fullname "Ubuntu for Android" --kbmodel pc104 --locale en_US.UTF-8 --serial ttyS0
Not sure if it will work correctly or not but I am going to find out soon.
Edit: Ok got it transfered over and ran the "sh /sdcard/ubuntu/uboot" Command and this is the output from it
Code:
: permission denied
"
"
"
"
"
"
"
"
"
The command executed failed. please search for this command on Google. IF that fails, try [url]www.ubuntuforums.org[/url].
: permission denied
"
"
"
Setting up environmental variables
test: permission denied
Environmental is:
/sdcard/ubuntu/uboot: 96: Syntax error: "else" unexpected (expecting "then")
Click to expand...
Click to collapse
try as superuser.. I'm downloading right now, later I'll tell if work
AdamOutler said:
mint will work.
Click to expand...
Click to collapse
Excellent, I will do this tonight and post results.
Montisaquadeis said:
Edit: Ok got it transfered over and ran the "sh /sdcard/ubuntu/uboot" Command and this is the output from it
Code:
: permission denied
"
"
"
"
"
"
"
"
"
The command executed failed. please search for this command on Google. IF that fails, try [url]www.ubuntuforums.org[/url].
: permission denied
"
"
"
Setting up environmental variables
test: permission denied
Environmental is:
/sdcard/ubuntu/uboot: 96: Syntax error: "else" unexpected (expecting "then")
Click to expand...
Click to collapse
I believe it should be sh /mnt/sdcard/ubuntu/uboot (though it appears that may be what you input), and it should be done as root.
Ok after giving terminal emulator root access all those permisson denied turn into not found. so that script dont work either way. the rest of that output stayed the same.
The script must be edited to the absolute path for the Ubuntu image.
good job, great idea, this is cool, i'm trying this now
AdamOutler said:
The script must be edited to the absolute path for the Ubuntu image.
Click to expand...
Click to collapse
I have the image on the sdcard in a folder called ubuntu and the file name is ubuntu.img
I would assume that is where the script is looking for the image and its there on the sdcard in the folder named ubuntu and the file is ubuntu.img
The image parameters were wrong..
sudo rootstock --dist maverick --seed lxde,tightvncserver,openoffice.org,gimp,ssh, -fqdn localhost --login ubuntu --password ubuntu --imagesize 3800M --notarball --fullname "Ubuntu for Android" --kbmodel pc104 --locale en_US.UTF-8 --serial ttyS0 --doswap --swapsize 256M
should have been
Code:
sudo rootstock --dist maverick --seed lxde,tightvncserver,openoffice.org,gimp,ssh -fqdn localhost --login ubuntu --password ubuntu --imagesize 3800M --notarball --fullname "Ubuntu for Android" --kbmodel pc104 --locale en_US.UTF-8 --serial ttyS0 --doswap --swapsize 256M
See that? I didn't either... the comma after "ssh" should not be there.
Not sure if it's going to make a difference, but I am getting an error when running the (corrected) rootstock command:
Unable to open a folder for 4.0 GB Filesystem
No application is registered as handling this file
Click to expand...
Click to collapse
It's still running, so maybe it won't matter. This is on a 20GB (total, split 500M /boot, 10G /, 9.5G /home) VirtualBox Mint system.
And they are still wrong it should be -f localhost --l ubuntu --p ubuntu not -fqdn localhost --login ubuntu --password ubuntu
Montisaquadeis said:
And they are still wrong it should be -f localhost --l ubuntu --p ubuntu not -fqdn localhost --login ubuntu --password ubuntu
Click to expand...
Click to collapse
-f and --fqdn are interchangeable, but you're right, if you use fqdn it needs another dash, though you're wrong about --l and --p, it's either --login and --password or -l and -p Again, they're interchangeable.
The shorter way would be:
sudo rootstock -d maverick -s lxde,tightvncserver,openoffice.org,gimp,ssh, -f localhost -l ubuntu -p ubuntu -i 3800M --notarball -n "Ubuntu for Android" --kbmodel pc104 -x en_US.UTF-8 --serial ttyS0 --doswap --swapsize 256M
Click to expand...
Click to collapse
Though, for some reason, the -s switch doesn't seem to work (on my version) in place of --seed
Dear all,
I installed Unbuntu Touch on my Nexus 4 yesterday (18.09.2013, with the build 20130917.1). It is working more or less, as expected :silly:
One of the problem I am facing is that the ssh server is not working. I could install (and --reinstall) it without problem (apt-get install openssh-server ssh), but if I check with "ps -ef|grep ssh") I only see the ssh-agent and the connection from another computer is not working.
Any idea?
Best regards,
Pierre
[email protected]:/# apt-get install --reinstall openssh-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0 B/231 kB of archives.
After this operation, 0 B of additional disk space will be used.
(Reading database ... 38659 files and directories currently installed.)
Preparing to replace openssh-server 1:6.2p2-6 (using .../openssh-server_1%3a6.2p2-6_armhf.deb) ...
Unpacking replacement openssh-server ...
Processing triggers for ureadahead ...
Processing triggers for ufw ...
WARN: / is world writable!
WARN: / is group writable!
Setting up openssh-server (1:6.2p2-6) ...
[email protected]:/#
[email protected]:~$ ssh [email protected]
ssh: connect to host 192.168.1.69 port 22: No route to host
[email protected]:/home/phablet/Downloads# ps -ef | grep ssh
phablet 739 711 0 09:11 ? 00:00:00 ssh-agent
I just noticed that I have the same problem...
If I had time I would look at it, too, but right now I have other things to do...
To98 said:
I just noticed that I have the same problem...
If I had time I would look at it, too, but right now I have other things to do...
Click to expand...
Click to collapse
Same problem here. ssh to another device is possible, but no acces to phablet.
Same In GNex
try
sudo service ssh start
(if you are root or not you must use sudo)
but it does not automatically start when reboot
Still not wokring
[email protected]:/# service ssh start
ssh start/running, process 5890
[email protected]:~$ ssh [email protected]
ssh: connect to host 192.168.1.69 port 22: No route to host
[email protected]:~$ ps -ef|grep 5890
vmalep 12613 12544 0 13:00 pts/4 00:00:00 grep --color=auto 5890
chaoskernel said:
try
sudo service ssh start
(if you are root or not you must use sudo)
but it does not automatically start when reboot
Click to expand...
Click to collapse
thank you! installed version 57 and used
sudo service ssh start
work fine!
Hi
I'm trying to run pidgin in ubuntu touch which is installed on Nexus 5.
I did try to run it in libertine container, however it fails with the follwoing error.
Code:
_XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed
_XSERVTransMakeAllCOTSServerListeners: server already running
(EE)
Fatal server error:
(EE) Failed to connect to Mir: Failed to connect: not accepted by server
(EE)
I have also tried to run it without the container using the following desktop file
Code:
[Desktop Entry]
Name=Pidgin Internet Messenger
GenericName=Internet Messenger
Comment=Chat over IM. Supports AIM, Google Talk, Jabber/XMPP, MSN, Yahoo and more
Exec=pidgin
Icon=pidgin
StartupNotify=true
Terminal=false
Type=Application
Categories=Network;InstantMessaging;
X-MessagingMenu-UsesChatSection=true
X-Ubuntu-Touch=true
X-Ubuntu-Gettext-Domain=pidgin
X-Ubuntu-XMir-Enable=true
To run pidgin I am using the following script, launching it from phone's command line
Code:
#!/bin/bash
DISP=:1
Xmir :1 -mirSocket /var/run/mir_socket --desktop_file_hint=/home/phablet/pidgin.desktop -debug &
sleep 0.5;
DISPLAY=:1 pidgin &
However, Xmir failed with the following error.
Code:
ARM architecture: Defaulting to software mode because glamor is not stable
XMir initialized with 2 visuals:
Visual id 0x28: ff ff00 ff0000, 24 planes
Visual id 0x29: ff ff00 ff0000, 24 planes
Realize ROOT window 0xb8a6d530 id=0xea "": 1080x1920 +0+0 parent=(nil)
depth=24 redir=0 type=0 class=1 visibility=3 viewable=1
override=0 _NET_WM_WINDOW_TYPE=0()
WM_TRANSIENT_FOR=(nil)
WM_HINTS=<none>
Aborted
I checked that unity is running, and the resullt of "ps aux | grep unity" was
Code:
unity-system-compositor --disable-overlays=false --spinner=/usr/bin/unity-system-compositor-spinner --file /run/mir_socket --from-dm-fd 10 --to-dm-fd 13 --vt 1
I also checked that mir_socket is created and reachable under /var/run and /run directories
There are no errors in lightdm file
But Xorg log file shows the following error
Code:
[ 89.205] (II) No BusID or DriverName specified - opening /dev/dri/card0
directory
[ 89.205] (WW) Falling back to old probe method for fbdev
[ 89.205] (WW) Falling back to old probe method for modesetting
[ 89.206] No devices to configure. Configuration failed.
[ 89.206] (EE) Server terminated with error (2). Closing log file.
The directory /dev/dri is missing on my phone. Although libdrm2 is installed
Any ideas how to overcome this problem?
Mqhash said:
Hi
I'm trying to run pidgin in ubuntu touch which is installed on Nexus 5.
I did try to run it in libertine container, however it fails with the follwoing error.
Code:
_XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed
_XSERVTransMakeAllCOTSServerListeners: server already running
(EE)
Fatal server error:
(EE) Failed to connect to Mir: Failed to connect: not accepted by server
(EE)
I have also tried to run it without the container using the following desktop file
Code:
[Desktop Entry]
Name=Pidgin Internet Messenger
GenericName=Internet Messenger
Comment=Chat over IM. Supports AIM, Google Talk, Jabber/XMPP, MSN, Yahoo and more
Exec=pidgin
Icon=pidgin
StartupNotify=true
Terminal=false
Type=Application
Categories=Network;InstantMessaging;
X-MessagingMenu-UsesChatSection=true
X-Ubuntu-Touch=true
X-Ubuntu-Gettext-Domain=pidgin
X-Ubuntu-XMir-Enable=true
To run pidgin I am using the following script, launching it from phone's command line
Code:
#!/bin/bash
DISP=:1
Xmir :1 -mirSocket /var/run/mir_socket --desktop_file_hint=/home/phablet/pidgin.desktop -debug &
sleep 0.5;
DISPLAY=:1 pidgin &
However, Xmir failed with the following error.
Code:
ARM architecture: Defaulting to software mode because glamor is not stable
XMir initialized with 2 visuals:
Visual id 0x28: ff ff00 ff0000, 24 planes
Visual id 0x29: ff ff00 ff0000, 24 planes
Realize ROOT window 0xb8a6d530 id=0xea "": 1080x1920 +0+0 parent=(nil)
depth=24 redir=0 type=0 class=1 visibility=3 viewable=1
override=0 _NET_WM_WINDOW_TYPE=0()
WM_TRANSIENT_FOR=(nil)
WM_HINTS=<none>
Aborted
I checked that unity is running, and the resullt of "ps aux | grep unity" was
Code:
unity-system-compositor --disable-overlays=false --spinner=/usr/bin/unity-system-compositor-spinner --file /run/mir_socket --from-dm-fd 10 --to-dm-fd 13 --vt 1
I also checked that mir_socket is created and reachable under /var/run and /run directories
There are no errors in lightdm file
But Xorg log file shows the following error
Code:
[ 89.205] (II) No BusID or DriverName specified - opening /dev/dri/card0
directory
[ 89.205] (WW) Falling back to old probe method for fbdev
[ 89.205] (WW) Falling back to old probe method for modesetting
[ 89.206] No devices to configure. Configuration failed.
[ 89.206] (EE) Server terminated with error (2). Closing log file.
The directory /dev/dri is missing on my phone. Although libdrm2 is installed
Any ideas how to overcome this problem?
Click to expand...
Click to collapse
Unfortunately, the only real good method of running X11 applications on Ubuntu Touch is via Libertine. That's odd that it won't connect to Mir. /dev/dri should indeed be missing from your phone, most phones do not expose DRM/DRI to the OS as they don't always have native support for it (for example, Qualcomm devices require the msm_kgsl_drm kernel module, however that module doesn't compile properly on newer kernels.)
On Android devices, an abstraction layer known as Libhybris is used for handling graphics and hardware by wrapping the native Android drivers and using them.
The only thing I could suggest is possibly creating a new empty libertine container and install only pidgin on it to see if it could possibly be an issue with your container, last time I used Ubuntu Touch, Pidgin worked out of the box in Libertine.
Thank you for your reply
ShadowEO said:
The only thing I could suggest is possibly creating a new empty libertine container and install only pidgin on it to see if it could possibly be an issue with your container.
Click to expand...
Click to collapse
Unfortunately, I did try to create a new container but same error. No change . I even tried to run firefox but same error
ShadowEO said:
last time I used Ubuntu Touch, Pidgin worked out of the box in Libertine.
Click to expand...
Click to collapse
What phone were you running ubuntu touch on?
Mqhash said:
Hi
I'm trying to run pidgin in ubuntu touch which is installed on Nexus 5.
I did try to run it in libertine container, however it fails with the follwoing error.
Code:
_XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed
_XSERVTransMakeAllCOTSServerListeners: server already running
(EE)
Fatal server error:
(EE) Failed to connect to Mir: Failed to connect: not accepted by server
(EE)
Click to expand...
Click to collapse
How exactly did you get to this point? Which UT image? Was libertine included? The scope? The app? Did you install parts of it via apt? How did you run it? Where/how do you read the error?
I have also tried to run it without the container using the following desktop file
Click to expand...
Click to collapse
When you say without the container what exactly do you mean? If you only make the desktop file yourself, then there still is only one pidgin executable and that is the one in the container, right ... I don't know how to connect the two.
Code:
[Desktop Entry]
Name=Pidgin Internet Messenger
GenericName=Internet Messenger
Comment=Chat over IM. Supports AIM, Google Talk, Jabber/XMPP, MSN, Yahoo and more
Exec=pidgin
Icon=pidgin
StartupNotify=true
Terminal=false
Type=Application
Categories=Network;InstantMessaging;
X-MessagingMenu-UsesChatSection=true
X-Ubuntu-Touch=true
X-Ubuntu-Gettext-Domain=pidgin
X-Ubuntu-XMir-Enable=true
To run pidgin I am using the following script, launching it from phone's command line
Code:
#!/bin/bash
DISP=:1
Xmir :1 -mirSocket /var/run/mir_socket --desktop_file_hint=/home/phablet/pidgin.desktop -debug &
sleep 0.5;
DISPLAY=:1 pidgin &
However, Xmir failed with the following error.
Code:
ARM architecture: Defaulting to software mode because glamor is not stable
XMir initialized with 2 visuals:
Visual id 0x28: ff ff00 ff0000, 24 planes
Visual id 0x29: ff ff00 ff0000, 24 planes
Realize ROOT window 0xb8a6d530 id=0xea "": 1080x1920 +0+0 parent=(nil)
depth=24 redir=0 type=0 class=1 visibility=3 viewable=1
override=0 _NET_WM_WINDOW_TYPE=0()
WM_TRANSIENT_FOR=(nil)
WM_HINTS=<none>
Aborted
Click to expand...
Click to collapse
So, firstly, I think libertine should work, so I'd focus on that first. Secondly, if you want to explore an alternative route, I had things working in the past with:
* install via apt
* write a shell script like yours (search the internet for that desktop_file_hint, it seems to have some magical hidden meaning, you do not want to set it to pidgin, but I think to some uhm, whatdidtheycallit, "unconfined" app I think)
* write a desktop file and point it to shell script, and launch it by tapping on the display