Ubuntu Touch On Nexus4 Manual Install (手动安装) under Gentoo
Table of Contents
最近手里的 Nexus 4 手机一直闲置,它的配置要比我六年前买的笔记本还好,于是就动起了向里面刷个 Ubuntu Touch 的想法。
1 准备工作:
- 安装 Adb tools, google 一下即可。
- 开启开发者模式。
- 终端执行 "adb reboot bootloader" 进入 fastboot
- 终端执行 "fastboot oem unlock" 解锁。
- 刷入第三方的 recovery: "fastboot flash recovery recovery-clockwork-touch-6.0.4.3-mako.img"
recovery-clockwork-touch-6.0.4.3-mako.img 可以从网上搜索得到。
之后重启进入 Android 系统,就可以下载 Image 并准备刷机了。
2 Saucy Salamander
Saucy Salamander 基于 Ubuntu 13.0 , 相对稳定,刷机也很简单:
- 下载文件:
saucy-preinstalled-boot-armhf+mako.img
saucy-preinstalled-system-armel+mako.img
saucy-preinstalled-touch-armhf.zip - 上传 saucy-preinstalled-touch-armhf.zip 到 sdcard
saucy-preinstalled-touch-armhf.zip /sdcard/
- 重启进入 bootloader, 刷入 boot 和 system 镜像:
adb reboot bootloader
fastboot flash boot saucy-preinstalled-boot-armhf+mako.img
fastboot flash system saucy-preinstalled-system-armel+mako.img
- 刷入文件系统
步骤 3 后,按音量键选择进入 Recovery 模式,然后选择 “ Install Zip”,并选中之前传入的 saucy-preinstalled-touch-armhf.zip, 开始刷入文件系统
等刷完之后,重启即可。
改版稍旧,用起来确实比较别扭,所以用了一会,决定刷个最新的。
3 刷入 最新 版Touch
- 下载相应文件:
utopic-preinstalled-boot-armhf+mako.img
utopic-preinstalled-system-armel+mako.img
utopic-preinstalled-touch-armhf.tar.gz
但这里并没有之前刷入的 zip 包,我将之前的 zip 包打开看了一下,里面也是个这样的 Tar 包,里面还有个目录里面有用于部署的脚本,里面也没有什么特殊的内容,所以我直接将新的utopic-preinstalled-touch-armhf.tar.gz 重命名为 saucy-preinstalled-touch-armhf.tar.gz 然后用它替换了 Zip 包里面的 tar 包。最后将新的 Zip 包传到 /data/media/0:
adb push saucy-preinstalled-touch-armhf.zip /data/media/0/new.zip
之后重启进入 bootloader:
adb reboot bootloader
- 刷入 boot/system images…
- 刷入新的 new.zip
(2&3 可参考前文)
之后重启即可。
新的开发版的 Touch 已经做的很不错了,但是如果是第一次进入系统的话,会发现虚拟键不能正常显示,但是重启下机器,就好了。
(转载请注明出处, 使用许可:署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议 。)
Ubuntu Touch On Nexus4 Manual Install (手动安装) under Gentoo的更多相关文章
- Linux(Ubuntu)使用 sudo apt-get install 命令安装软件的目录在哪?(已解决)
Linux(Ubuntu)使用 sudo apt-get install 命令安装软件的目录在哪? bin文件路径: /usr/bin 库文件路径: /usr/lib/ 其它的图标啊什么的路径 ...
- Ubuntu 14.04 Nvidia显卡驱动手动安装及设置
更换主板修复grub 引导后,无法从Nvidia进入系统(光标闪烁), 可能是显卡驱动出了问题. 1. 进入BIOS设置, 从集成显卡进入系统 将显示器连接到集显的VGI口, 并在BIOS中设置用 ...
- python 使用pip install 手动安装本地包的方法
Installing pystan manually fixed the issue (otherwise it would just hang forever). ~/GitHub $ git cl ...
- ubuntu下手动安装php-amqp模块教程
用于ubuntu的默认源里面没有php5-amqp这个包,所以要用上amqp得考手动编译. 参考手册 http://php.net/manual/pl/book.amqp.php 首先安装必须的php ...
- ubuntu 手动安装mysql
申请了一台云主机,需要手动安装所有环境,今天将mysql安装过程记下. 安装mysqla. 下载不了gcc, 需要先运行apt-get updateb. cmake报错,每次要先删除cmakeCach ...
- ubuntu 下面手动安装jdk
ubuntu 下面手动安装jdk 刚才在ubuntu安装jdk和eclipse,感觉主要安装jdk比较麻烦,记录一下笔记以备后面查看 先在官网上下载jdk的tar包:http://www.oracle ...
- 在ubuntu 上面安装ubuntu touch 模拟器
Canonical 公司已经发布了一个运行着Unity8和Mir的Ubuntu Touch模拟器.虽然有一些bug,例如在64位的系统上会使系统崩溃,但我们相信这些都会被一 一修复,这篇文章将教大家如 ...
- Ubuntu下手动安装vscode
Ubuntu下手动安装vscode1.下载vscodewget https://vscode.cdn.azure.cn/stable/553cfb2c2205db5f15f3ee8395bbd5cf0 ...
- 惠普电脑(HP PHILIPS系列)安装ubuntu后无法连接WIFI解决方案(手动安装8821CE驱动)
一步一步来, 先说环境: 我的电脑是HP PHILIPS系列,ubuntu版本是16.04 背景: win10安装ubuntu后发现无法连接wifi(但win10系统可以连接WIFI),在ubuntu ...
随机推荐
- CSS的overflow属性介绍
overflow 属性规定如何处理如何处理不符合元素框的内容.用法如下:Object.style.overflow=visible|hidden|scroll|auto. 参数介绍: visible: ...
- c++优先队列(堆)
1.最小堆.最大堆 priority_queue<int,vector<int>,greater<int> > f; //最小堆(后面的数逐渐greater) pr ...
- c++ 顶层const与底层const
底层const是代表对象本身是一个常量(不可改变): 顶层const是代表指针的值是一个常量,而指针的值(即对象的地址)的内容可以改变(指向的不可改变): #include <iost ...
- 计数排序与桶排序(bucket sort)
Bucket Sort is a sorting method that subdivides the given data into various buckets depending on cer ...
- 《Science》:对年轻科学家的忠告
- Docker中执行Shell出现乱码
问题描述 最近遇到一个问题: 执行命令 docker exec f4af9b sh -c 'bash /tmp/build.sh' 命令在docker中执行shell,会出现中文乱码的问题.但是在do ...
- LintCode 388: Kth Permutation
LintCode 388: Kth Permutation 题目描述 给定 n 和 k,求123..n组成的排列中的第 k 个排列. 样例 对于 n = 3, 所有的排列如下: 123 132 213 ...
- Vue 表格内容根据后台返回状态位填充文字
本文地址:http://www.cnblogs.com/veinyin/p/8534365.html Vue 做表格时我们常用的就是 v-for ,直接把 prop 绑定上去,但是如果表格内容需要我 ...
- php的几个实用正则表达式
更多内容推荐微信公众号,欢迎关注: 此文章是网上搜索而来: 对于开发人员来说,正则表达式是一个非常有用的功能,它提供了 查找,匹配,替换 句子,单词,或者其他格式的字符串.这篇文章主要介绍了15个超实 ...
- php 获取唯一字符串与文件扩展名函数
/** * 生成唯一字符串 * @return string */ function getUniqueStr(){ return md5(uniqid(microtime(true),true)); ...