Reply
Thread Tools
Posts: 986 | Thanked: 1,526 times | Joined on Jul 2010
#1
changing /home/user/.profile can brick the N9.
{changing /root/.profile does not}

adding the line 'unset DISPLAY', or removing export DISPLAY=':0', is what kills it.

if you modify it as above, and reboot, it throws it into a boot loop. flashing was still possible, but i had to flash the EMMC; you lose all pictures, contacts, maps, conversations, etc.

i tested a buncha times when trying to find the culprit in my build script, and here ya go:

smallest steps to brick your phone:
1) flash firmware+emmc, then flash an open kernel
2) boot up
3) enable dev mode, boot up again
4) meego-terminal: vi /home/user/.profile
5) remove all lines
6) add line: "unset DISPLAY"
7) switch off, turn on {wont boot}

dohn do eet, bra!
 
Posts: 1,067 | Thanked: 2,383 times | Joined on Jan 2012 @ Finland
#2
Well if you unset DISPLAY then its your own fault, as its expected that things start to break after that one.
 
Posts: 986 | Thanked: 1,526 times | Joined on Jul 2010
#3
Originally Posted by rainisto View Post
Well if you unset DISPLAY then its your own fault, as its expected that things start to break after that one.
well, i certainly expect things to break NOW, but i couldnt imagine why i should have supposed that they would break BEFORE i saw it happen.

.profile is read on ALL logins, including shell logins. shell logins have no business having an x client display if theyre running headless, and i do this all the time. theres no reason NOT to set the DISPLAY variable, except that i use this to see whether im in a gui {meego-terminal on the device} or a terminal {ssh-ing in}.

i personally think its bad that:
1) ANY file in /home is read early in the boot cycle
2) x client display is set at all in a user's login shell profile
{they clearly dont anticipate any headless logins, which is silly}
3) that there is no way to get a tty session
4) user is hardcoded and there is no root gui {e.g.: GDM, LXDM}
 
Posts: 1,067 | Thanked: 2,383 times | Joined on Jan 2012 @ Finland
#4
Originally Posted by wolke View Post
well, i certainly expect things to break NOW, but i couldnt imagine why i should have supposed that they would break BEFORE i saw it happen.

.profile is read on ALL logins, including shell logins. shell logins have no business having an x client display if theyre running headless, and i do this all the time. theres no reason NOT to set the DISPLAY variable, except that i use this to see whether im in a gui {meego-terminal on the device} or a terminal {ssh-ing in}.

i personally think its bad that:
1) ANY file in /home is read early in the boot cycle
2) x client display is set at all in a user's login shell profile
{they clearly dont anticipate any headless logins, which is silly}
3) that there is no way to get a tty session
4) user is hardcoded and there is no root gui {e.g.: GDM, LXDM}
1) most of the apps that end user sees in dispay is runned as user thus .profile is read.
2) people that login headless using ssh, usually do want to start some applications that are seen on the screen so its easier to have DISPLAY always set. If you want headless without DISPLAY, you can always add different username to filesystem that doesn't has DISPLAY set and run headless apps under that user.
3) there is a way, but its not documented to end users ;-)
4) Its a phone and not desktop Linux.
 
Reply


 
Forum Jump


All times are GMT. The time now is 12:34.