How to build and install the latest nightly Firefox OS on Alcatel One Touch Fire? - build

I want to upgrade Firefox OS 1.1 on my Alcatel One Touch Fire to the master branch (the latest revision). After having read the Mozilla Wiki, I cloned the B2G repository, built it for the hamachi target by typing:
./config.sh hamachi && ./build.sh
(There are even prebuilt images)
Now is the hardest part, since Alcatel phones are not rooted and seems to have a locked bootloader.
The docs say that I should flash the device by typing:
./flash.sh
But all I get are these errors:
adbd cannot run as root in production builds
remount failed: Operation not permitted
push: /home/user/B2G/objdir-gecko/dist/b2g/dictionaries/en-US.aff -> /system/b2g/dictionaries/en-US.aff
failed to copy '/home/user/B2G/objdir-gecko/dist/b2g/dictionaries/en-US.aff' to '/system/b2g/dictionaries/en-US.aff': Read-only file system
Could anybody write an simple step-by-step tutorial (easier than this) on how to install the latest Firefox OS to a stock Alcatel One Touch Fire?

I guess first we can check if the phone itself is rooted.
You could try,
$ adb shell
And if shows,
root#android:/ #
Then I think the phone is rooted, and you can flash your phone with ./flash.sh.
If it is not rooted, I think the link you mentioned has provided the steps to create a new boot.img so that you could root the phone.

Here is an excerpt from Mozilla guide on flashing phones related to Hamachi (Alcatel One Touch Fire):
Best build for Hamachi: moz-central Use your LDAP to go here: https://pvtbuilds.mozilla.org/pvt/mozilla.org/b2g_ril/latest-hamachi-mozilla-central/
And then run this script command line: fullflash_gecko_ril_gaia.sh You
may need to preface this with ./ but it should just run upon your
hitting enter. DON'T run ./flash.sh. THIS CAN BRICK YOUR HAMACHI :( -
GB
What is my order of operations from the beginning?
FOR ALL DEVICES... AFTER you have installed ADB, Git, and Xcode, you should:
Connect your device to your machine via USB. You're SURE it's plugged in? OK then...
Get your build with your LDAP credentials (from moz-central): Buri: Need from Naoki Hamachi:
https://pvtbuilds.mozilla.org/pvt/mozilla.org/b2g_ril/latest-hamachi-mozilla-central/
Run this script: fullflash_gecko_ril_gaia.sh
Download gaia from github (it's easier than the command line as you avoid a pull request) at: https://github.com/mozilla-b2g/gaia Along
the right hand side there is an option to "Download ZIP." Unpack that
into a folder, open Terminal and "cd" (ask Stephany or Francis if you
need help with this) into the folder (i.e. wherever you unpacked your
zip file). Run "make reset-gaia".
You should see... a whole bunch of stuff scrolling by on the command line and your device should reboot. If your device does NOT
reboot, try ADB reboot.

Related

SIP is disabled, but /usr/bin is write protected anyway (macOS Catalina beta 10.5)

I disabled SIP, but directory /usr/bin is write protected anyway. How to get write access for /usr/bin? Please don't suggest to switch to /usr/local/bin.
I assume this answer might be relatively off-topic, as I'm not running the beta version of Catalina, but the official one.
In order to perform changes to /usr/bin, you'll have to perform the following steps.
Disable System Integrity Protection (SIP).
Mount / as writeable.
Disable SIP
Reboot your system into recovery mode (reboot and hold cmd + R while booting)
Use the appropriate credentials when prompted.
Navigate to Utilities -> Terminal in the top bar.
In the terminal session, execute # csrutil disable.
Reboot into normal boot mode (# reboot).
Mount / as writeable
With the OS in normal mode, start a new terminal session and execute the following:
$ sudo mount -uw /
Please note that / will be mounted as read-only on the next system boot.
In order to enable SIP, the process is exactly the same as disabling it, except for the fact that you would have to run # csrutil enable.
Catalina has a new file system arrangement where most of the system files are write-protected. Apple uses two partitions, a read-only one for the main system files and a writeable one for other files, and melds them together and presents them as one to the user.
For details see the WWDC video What's New in Apple Filesystems

Why is Foundation installation with CodeKit failing?

I have been using CodeKit for several years now, and this morning I tried to start a new project by downloading Zurb's Foundation but keep getting this error.
Foundation: Installation failed. CodeKit cloned Foundation's Git repository to
your project folder, but it could not download the latest components using Bower. Try these steps to fix the problem:
1. Be sure you're connected to the Internet.
2. If you are running any blocking/security apps like Little Snitch or Antivirus software, disable those.
3. If you have installed Apple's Developer Tools, launch Xcode, accept the license terms and let the installation routine finish.
4. Make sure your network or firewall is not blocking the default port for git:// URLs, which is 9418. (Corporate networks do this frequently.) Use the "Tasks" menu to switch Git to use https:// URLs instead.
5.Delete the following hidden folders in your home directory: ".cache", ".npm", ".local"
I followed the 5 steps of what to try, and I'm still not having any luck getting Foundation to install.
Trying to install Foundation 6 via the New Zurb Foundation Project option.
You may open Terminal and reset XCode:
$ sudo xcode-select --reset
Worked for me. Install the command line tools if that does not work:
$ xcode-select --install
Good Luck!

Qt Installer Framework, installer crashes when having multiple elevated operations

This is the first app that I'm trying to deploy.
I need the installer to establish a symlink with one of the installed files as well as adding the user to a different group. I'm currently using component.addElevatedOperation("CreateLink", <linkPath>, <targetPath>) and component.addElevatedOperation("Execute", "usermod -a -G dialout id")
to accomplish this.
The installer builds successfully with the IFW's binarycreator.
The problem occurs when running the installer. If I try to install the component containing these operation, the installer freezes. It freezes right after I've entered the sudo password. How do I get the installer to successfully run these commands?

ColdFusion 10 Mandatory Update install fails on VM

I need to run the mandatory update for ColdFusion 10 so I can apply the later updates to the server. I downloaded the file and tried the instructions listed here: Mandatory Update Instructions.
I have a singular instance, so this should be fairly straightforward. I download the file, place it in the "hf-updates" folder, and then do java -jar cf10_man_updt.jar and I get the following notice:
Graphical installers are not supported by the VM. The console mode
will be used instead...
The installer proceeds to hang and fails to complete. I then go to option #2: Silent mode. I create my properties file and then do java -jar cf10_mdt_updt.jar -i silent -f install.cfg.txt. I get the following message:
Installer User Interface Mode Not Supported
Unable to load and to prepare the installer in console or silent mode.
This one has the courtesy to actually terminate so I don't have to close the command prompt window to retry, but I'm still nowhere. Any ideas on what I can do?
Alex provided the correct answer. I had been using the JRE in my program files folder (explicitly, actually. There was no javapath to speak of in the environment variables. I shorthanded the command for the sake of brevity). I changed the command to "C:\Coldfusion10\cfusion\jre\bin\java" -jar cf10_mdt_updt.jar and the install ran successfully.

Jenkins can't copy files to windows remote host

I have a Jenkins server on OS X 10.7, which polls a subversion server, builds the code and packages the app. The last step that I need to complete is deploying the app on a remote host, which is a windows share. Note that my domain account has write access to the target folder and the volume is mounted. I've tried using a shell script build step:
sudo cp "path/to/app" "/Volumes/path/to/target"
However i get a "no tty" response. I was able to run this command succesfully in Terminal, but not as a build step in Jenkins.
Does this have something to do with the user being used when starting up Jenkins? As a side note, the default user.name is jenkins and my JENKINS_HOME resides in /Users/Shared/Jenkins. I would appreciate any help as to how to achieve this.
Your immediate problem seems to be that you are running Jenkins in the background and sudo wants to input a password. Run Jenkins in the foreground with $ java -jar jenkins.war.
However, this most probably won't solve your problem as you'll be asked to enter a password when the command runs - from the terminal you started Jenkins from (presumably it's not what you want). You need to find a way to copy your files without needing root permissions. In general, it it not a good idea to rely on administrative permissions in your builds (there are exceptions, but your case is not it).