2014年5月

极限理论(Limit Theory),一个无限的程序性的空间模拟游戏,这个游戏的开发者仅一个人,游戏将会发布在Linux、Windows和Mac OS X上。开发者宣布从Windows平台转到Linux上主要是因为他不耐烦了。

极限理论听起来像一个不可能的项目,特别是对于它是由一个人开发。游戏的开发者Josh Parnell自己已经努力建立一个美丽的宇宙,并提供对三个不同平台的支持。

他能够这样做是因为这个游戏用C++和OpenGL写的,这使游戏可以轻易地转移到任何平台开发。在最近的关于极限理论的更新中,他解释说,他不再使用Winsows平台,因为它很“烦人”,但是没有提供具体原因。

甚至Linux基金会也已经注意他而且决定推动他正在做的工作,特别是因为他是一个人搞定了所有事情,他要做从核心程序到环境音乐的任何事。

“游戏开发者Josh Parnell已经发布了关于他的开放空间模拟和策略游戏——极限理论的开发更新。”图形很漂亮,但这次发布更是值得注意,因为Parnell已经从放弃Windows而转为开放原生的Linux客户端(他说Windows很烦人)。"

“极限理论是在2012年12在Kickstarter筹到资的,计划的发布日期是2014年初。当它完成时,游戏者将能够探索星际空间,在小行星上斟探和开采,指挥一队或更多的星舰。”Linux基金会在其网站上这样描述。

极限理论最有趣的方面是无限的宇宙,这起初听起来可能会感觉很奇怪或者像是一个营销噱头。实际上,Josh Parnell 制作了一个很智能的引擎,当玩家在宇宙中发展时这个引擎产生系统,星球,NPC,几乎所有的东西。

这些元素在游戏开始时不存在,他们在玩家游戏运行时产生。这也意味着没有两个玩家的游戏过程是相同的。

极限理论在Kickstarter筹到了需要的资金,开发者正在全力以赴地开发,但是这是一个艰巨的任务,完成需要一些时间。即使原计划的发布时间2014年1月已经过了,粉丝们都愿意等待,特别是看到游戏将能够做什么之后。

期待它吧!


via: http://news.softpedia.com/news/Limit-Theory-Developer-Switches-to-Linux-Because-Windows-is-Annoying-441642.shtml

译者:linuhap 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

Linux Mint 17

最新的 Linux Mint 17 “Qiana” RC 版本已经释出,本版本基于 Ubuntu 14.04 LTS(长期支持版本)。一个有趣的变化是,将来的数个版本都会基于长期支持版本。

Linux Mint的开发者已经决定只使用Ubuntu的LTS版本作为基础版本,这就意味着,之后几年的新版本将会始终基于同一个发行版。

“这样的决定将让Minit固定在LTS主干上。换句话说,我们的开发团队会在未来两年内基于基本差不多的底包用作Mint 17的开发,这会使得从17到17.1、17.2以及后续版本的升级过程变得更加平滑。”

“重要的应用程序将会以反向移植的形式进行发布,我们希望这个改变能够加快我们开发的步伐,并且减少新本版本开发时的回归成本”,Clement Lefebvre在Linux Mint的博客说到。

这听起来或许并不会让你惊讶,不过此举意味着 Linux Mint 逐渐成为注重稳定的发行版,同时也意味着将会和 Ubuntu 14.04 LTS 一样能够得到长达 5 年(到 2019年)的技术支持。

你现在就可以从 Softpedia 下载 Linux Mint 17 RC “Qiana” CinnamonLinux Mint 17 RC “Qiana” MATE

注意这是一个开发版本,不应该使用在生产环境中,只用于测试用途。


via: http://news.softpedia.com/news/Linux-Mint-Will-Only-Used-Ubuntu-LTS-Releases-From-Now-On-442225.shtml

译者:jiajia9linuxer 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

现在在手机上测试Ubuntu变得更加简单,可以从Canonical上下载一个程序,它可以安装新的操作系统而不必删除原有的Andorid。能够双启动的系统可以吸引更多的用户关注手机/平板上的新开源平台。

Canonical在它的网站上有一个流程解释了如何在手机上安装Ubuntu,但是这实际上需要删除Android系统才能获得新的操作系统。Ubuntu的开发者已经做了大量的工作,这个新的系统看上去很棒,但是如果你决定退回到Android,你就需要删除Ubuntu并安装Google的Android系统。这意味这你不得不重复设置你的电话,这可能会比较麻烦。

幸运的是,现在有一个称为MultiROM Manager的解决方案,它由Vojtech Bocek开发,现在已经可以在Google Play上下载到了,而且支持Nexus 7 (2012 & 2013)、 Nexus 4 和 Nexus 5。

另一方面,Ubuntu Touch只支持Nexus 4 (mako) 、Nexus 7 (2013) 平板 (flo)和 Nexus 10 平板 (manta),因此除非你有这些设备,否则你可能不能安全地执行这些步骤(它可能能够工作,但是不保证会让你的设备变砖同时/或者失去所有的数据。)

首先,你需要一台解锁的设备,既然你有一台Nexus的设备这应该不是一个问题。你同样还需要root你的Andorid设备,这样你才能在这个应用里安装操作系统。

有很多工具可以完成这个root的工作。首先,你需要安装ADB(Android Debug Bridge), 它随同Canonical的工具一起提供。你需要在终端下运行下面的命令:

sudo add-apt-repository ppa:phablet-team/tools
sudo apt-get update
sudo apt-get install ubuntu-device-flash

现在,你需要下载两个二进制包,TWRP 2.7.0.0SuperSU,它们可以让你实现root。复制SuperSU的二进制zip包到你的电话内存中,运行下面的命令进入bootloader(译注:原文的命令 sudo reboot bootloader,应该是笔误丢失了adb 命令 ):

sudo adb reboot bootloader

在你的电脑上解压TWRP文件,并用下面的命令安装镜像到手机上(用你下载的文件名代替下面的“recovery.img”)(译注:此处的fastboot应该也需要sudo权限才可以执行。)

sudo fastboot flash recovery recovery.img

从bootloader菜单进入recovery,你就会看到TWRP 2.7.0.0。运行TWRP并安装SuperSU二进制包,接着重启。

现在你已经有root访问权限了。安装Multi Manager,应用补丁,并为手机下载Ubuntu。应用会要求root权限,接着安装会顺利进行。当你重启的时候你会看到一个小窗口提示你选择你要运行的系统。选择Ubuntu后你就可以运行了。

是不是新的享受?


via: http://news.softpedia.com/news/Hot-to-Dual-Boot-Android-4-4-2-and-Ubuntu-for-Phones-438840.shtml

译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

LXQt with KWin. Other window managers can be used.

LXQt的首次公开发布版,流行的轻量级桌面环境LXDE的新一代版本,已经可以下载了。

这次版本发布几乎是在LXDE Qt计划和Razor-qt桌面项目决定合并的一年以后。通过集中资源到一个桌面环境中,而不是两个,这个团队说他们希望“通过尽量重用现有代码,来提供最好的体验”。

通过10个月的努力,不管是桌面系统的工作方式和所提供的特性功能,都得到了大量重要改善。今天的这个beta版本,尽管主要是给早期测试人员和开发者,据说已经“稳定可用”了。

美好的开始

这个项目的开发团队还在继续关注在提供一个轻量级以及用户友好的桌面环境,用来替代日渐沉重和复杂的系统。LXQt使用了比基于GTK的LXDE更精简,更快速和模块化的代码库,将非常适用于低配置的电脑。

今天的主角比之前正式发布的Razor-qt (0.5.2)有许多重要改变,包括集成了移植到Qt平台的PCManFM文件管理器,系统设定改善,新的模组,以及持续支持Qt5和Wayland显示协议。

团队成员说,基于GTK环境的开发在目前看来还会继续。那些运行Lubuntu 14.04 LTS系统的用户也不用担心,因为Lubuntu开发者已经保证会提供三年的持续维护。

Ubuntu开发团队早前声称他们将在Lubuntu 14.10版本中过渡到基于Qt的桌面,最终决定将在后面几个月中做出。

试一下

LXQt还处于活跃开发中,所以并不推荐你在重要的设备上安装。

Lubuntu Daily PPA提供了LXQt所需要的安装包,包括一个统一包来简化安装。

在安装过程中会有大量Qt依赖包需要下载,那些网速不佳的同学请安排合适的时间段。

源码包,Arch和Debian用户的安装细节,以及更多信息,可以在项目新启用的网站上找到。


via: http://www.omgubuntu.co.uk/2014/05/next-gen-linux-desktop-lxqt-makes-first-public-release

译者:zpl1025 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

许多Arduino的项目都是基于两个简单的程序。

能电脑所不能的单片机,这就是Arduino。

我们每天使用的计算机是强大的,但它们根本不了解身边发生了什么事。比如说你的笔记本电脑也不能感到光或水。另外,Arduino对外专门设计成键控的。它有一个用于简化传感器通信的输入、输出板子。

Arduino是由Massimo Banzi和他的意大利搭档Ivrea开发的,并用Ivrea——他最喜欢的酒吧命名。Banzi希望他的设计课程的学生们有一个原型的硬件的廉价,容易的解决方案。自2005年Arduino的发布,它已经从一个教学工具发展成为世界各地制造商的DIY项目。现在有了多模型——更先进的Arduino Due,大功率,微纳米。

无论你购买哪个Arduino模型,当你用它来做“互联网”项目时,单片机的实用性便体现出来了——Arduino可以很容易让你连接到真实世界,云端,或两者。本书中,我们将重点介绍两个超基础项目以便展示Arduino可以多简单。

开始使用Arduino

在我们能够完全了解Arduino是什么之前,知道它不是什么是很重要的。Arduino不是电脑(跟卡片电脑Raspberry Pi不一样)。它不能被独立编程,需要被插入到计算机中去。它不是特别强大,Arduino Uno只有32 KB的内存 ,而苹果笔记本却平均有8G内存。

所以为了使用Arduino,你不能只买这个单片机。对于以下的项目,你需要的是:

硬件

  • Arduino Uno. “Uno”在意大利语中是一的意思,但这并不是有史以来第一个Arduino,只是最基本的Arduino单片机的最新版本。这些项目可以工作在任何一个型号上,但这里我用的是这个型号。
  • B型USB线。我已经很多年没见过这些旧式的USB端口了,但你可能会在旧的电子设备上用过他们。他们的成本约5-10美元 (译注:就是能连接题图的板子上的那个大大的USB口的线)。
  • LED灯。可以直接粘在Arduino上的一个引脚上的小灯;这些往往是相当便宜的

软件

  • Arduino IDE,即“集成开发环境”,是一个免费开源软件,用于开发“sketches”,也就是Arduino用户所说的程序。

当你第一次打开Arduino IDE,你需要建立软件所使用的端口,它用于控制Arduino如何工作,点击“工具”——>“串口”来建立。

  • OS X上,Uno串口的设备名叫做“/dev/tty.usbmodem”,但其他类型的Arduino板可能不同。我的是“/dev/tty.usbmodem1421”。
  • Windows,串口是COM3或更高端口,因为COM1和COM2通常保留给其他硬件。为确定端口号,你可以拔掉Arduino并重新打开IDE菜单。哪个口子不再出现哪个就是你的Arduino。

一般来说,你不用担心直接拔出你的Arduino电路板会有什么问题。我们知道功能齐全的电脑不应该这样做,包括Raspberry Pi,因为他们可以在后台运行一个重要的操作系统任务。但是Arduino只是一个单片机,除非你主动让它写内存,否则它肯定是不会的。

Arduino 硬件初步: 闪烁一个LED

在这第一个项目中,我们将概述Arduino产生物理输出的最基本方式,在这个实例中,闪烁一个LED灯。

我们要去写一个非常简单的程序使得LED频闪——或者是当我自豪地向他展现了我的作品时,我的朋友明智的告诉我,“一点小成果”。本程序是基于开源项目Blink sketch,它可以在Arduino的官网找到。

首先,设置硬件,将LED的两个脚分别插到到Arduino的公共地GND和引脚13上。

注意:如果你准备将一个LED插到一个打开电源的Arduino板子上较长时间(比如超过了这个项目的时间),安全的做法是也接一个220欧姆的电阻。这里有一个你也许需要的接线图,来自Arduino官网。

一个叉略短于另外一个叉——短的这个是负极头,因此,这个接“地”,即GND输入/输出。

注意短的接GND.

现在让我们开始写程序。首先,让我们给个程序的名字。Arduino会忽略行内双斜杠后边的内容,所以这是为自己写注释的好方法:

// 程序 1: 使一个LED闪烁开和关

当硬件工作时,我们需要告诉Arduino在它的14根不同的输入/输出引脚中哪儿会有信号。在这种情况下,我们固定13引脚的LED。这是我们的如何命名固定在引脚13的LED,其中“LED”只是我给的变量名:

int LED = 13;

每一个Arduino程序由两部分组成:void setup() 和 void loop()。这是能够运行的最小的Arduino程序。

void setup()中, 我们告诉Arduino初始化引脚为输出:

void setup() { 
  pinMode(LED, OUTPUT);
} 

void loop()中,我们告诉Arduino“写”一个值到引脚13中。因为我想让它闪烁,在每个循环中我们要使它写一个序列的四个不同命令。如“loop”一词的意思,直到把Arduino关掉前,我们希望它不断执行。

在下面的代码中,LED代表了我们之前分配的那个变量。”HIGH”告诉Arduino给LED提供五伏的电源,而“LOW”提供零伏。在闪烁时,使得它延迟“1000”毫秒每一整秒:

void loop() {
  digitalWrite(LED, HIGH);  
  delay(1000);              
  digitalWrite(LED, LOW);    
  delay(1000);  
} 

当把它们放在一起时,整个程序如下(再次声明,Arduino忽略行内双斜杠后边的内容,所以那只是你自己的注释):

// 程序 1: 使一个LED闪烁开和关
int led = 13; // name the LED in pin 13
void setup() {
  pinMode(LED, OUTPUT); // tell Arduino the pin in question is an output
}
void loop() {
  digitalWrite(LED, HIGH);     // deliver 5V to LED
  delay(1000);                     // wait a second
  digitalWrite(LED, LOW);      // deliver 0V to LED 
  delay(1000);                     // wait a second
}

点击checkmark来验证你的代码是没有错误的,然后按play键。如果你的Arduino已经连接,它应该开始运行你的闪烁程序了。

Arduino 软件程序: 打印到电脑上

现在让我们来做一个控制开关并试着演示Arduino是如何产生数字输出的最基本项目。

我们将要设置Arduino “打印”,或是在您的计算机屏幕上显示信息。这个程序基于Paul Bianchi的Arduino printing tutorial

在这个实例中没有硬件,这样我们就可以直接跳到程序部分。再说一次,程序分为两个部分: void setup()void loop()

void setup()中,我们要打开一个Arduino和计算机之间通信的线路,指定速率是9600b/s。如果你使用另一个速率,你可能会在计算机上得到乱码而不是文字。

void setup() { 
  Serial.begin(9600); 
}

void loop() 中,这部分很像我们的一个LED程序。我们要给它两条独立的指令,告诉它在他们之间每一整秒中断。Println是Arduino输出到你的电脑显示的命令。注意"Println"中的"l"的是小写的"L",而不是大写的"i"!

void loop() { 
  Serial.println(“hello”);
  delay(1000);
  Serial.println(“world.”);
  delay(1000);
}

将标题和注释等放到一起,如下:

// 程序 2: 使Arduino打印 “Hello World”到电脑上
void setup() {
  Serial.begin(9600); // open a 9600 baud communication line to computer
}
void loop() {
  Serial.println(“Hello”);        // write the word “Hello”
  delay(1000);                    // wait a second
  Serial.println(“World”);      // write the word “World”
  delay(1000);                   // wait a second
}

验证你的代码并运行。什么都不会显示,直到你点击Arduino IDE窗口右上角的“Serial Monitor”。你应该看到一个不停输出的“Hello World”,一遍又一遍,直到你拔掉Arduino。你会看到它并不完美:我总是得到一些乱码,但很快它自己就好了。

这两个Arduino项目都非常基本,但是通过执行他们你已经开始看到,可以与传感器通信并写结果到您的计算机的Arduino的潜力所在。如果你把这两个项目整合——例如,你可以连接一个温度计到你的Arduino,并告诉它将温度写到你的笔记本电脑,你会很快实现Arduino的可能性几乎是无止境的。


via: http://readwrite.com/2014/04/21/easy-arduino-projects-basics-tutorials-diy-hardware#feed=/hack

译者:tenght 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

当你要监视一台Linux机器时,你会有很多的选择。虽然现在有很多产品质量监控方案(比如 Nagios、 Zabbix、 Zenoss),它们拥有华丽的UI,可扩展监控,易于理解的报告等等,这些方案对于大多数终端用户都太过于强大了。如果你只需检查Linux服务器或桌面的基本状态(比如,CPU负载、内存使用、活跃进程),就请考虑一下linux-dash

linux-dash是一款面向Linux机器的基于web的轻量级监控面板,可以实时显示不同的系统属性,比如CPU负载、内存使用、磁盘使用、网络速度、网络连接、上下行带宽、登录用户、运行中的进程等等。linux-dash没有后端数据库库来存储长期统计。在任何已有的web服务器(如Apache、Nginx)上运行linux-dash,你就可以用了。这是一个快速又简单的方法来对个人项目进行远程监控。

在这篇教程中,我会描述如何在Linux的Nginx web服务器上设置linux-dash。这里用Nginx,而不是Apache,是因为它更轻量。

在Debian、Ubuntu或者Linux Mint上设置linux-dash

首先,安装带php-fpm的Nginx web服务器。

$ sudo apt-get install git nginx php5-json php5-fpm php5-curl

为linux-dash创建如下Nginx配置文件/etc/nginx/conf.d/linuxdash.conf。 本例中,我们使用8080端口。

$ sudo vi /etc/nginx/conf.d/linuxdash.conf 

server {
    server_name     $domain_name;
    listen          8080;
    root            /var/www;
    index           index.html index.php;
    access_log      /var/log/nginx/access.log;
    error_log       /var/log/nginx/error.log;

    location ~* \.(?:xml|ogg|mp3|mp4|ogv|svg|svgz|eot|otf|woff|ttf|css|js|jpg|jpeg|gif|png|ico)$ {
            try_files $uri =404;
            expires max;
            access_log off;
            add_header Pragma public;
            add_header Cache-Control "public, must-revalidate, proxy-revalidate";
    }

    location /linux-dash {
        index index.html index.php;
    }

    # PHP-FPM via sockets
    location ~ \.php(/|$) {
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_split_path_info ^(.+?\.php)(/.*)$;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            if (!-f $document_root$fastcgi_script_name) {
                    return 404;
            }
            try_files $uri $uri/ /index.php?$args;
            include fastcgi_params;
    }
}

禁止默认站点配置。

$ sudo rm /etc/nginx/sites-enabled/default

编辑/etc/php5/fpm/pool.d/www.conf来配置php-fpm。确保按如下编辑"user", "group" 和 "listen"指令。你可以不改变剩下的配置。

$ sudo vi /etc/php5/fpm/pool.d/www.conf 

user = www-data
group = www-data
listen = /var/run/php5-fpm.sock

开始下载并安装linux-dash。

$ git clone https://github.com/afaqurk/linux-dash.git
$ sudo cp -r linux-dash/ /var/www/
$ sudo chown -R www-data:www-data /var/www

重启Nginx与php-fpm来完成安装。

$ sudo service php5-fpm restart
$ sudo service nginx restart 

在CentOS、Fedora、RHEL上设置linux-dash

在CentOS上,需要首先启用EPEL仓库

安装Nginx与php-fpm组件。

$ sudo yum install git nginx php-common php-fpm 

为linux-dash程序配置Nginx,如下创建/etc/nginx/conf.d/linuxdash.conf

$ sudo vi /etc/nginx/conf.d/linuxdash.conf 

server {
    server_name     $domain_name;
    listen          8080;
    root            /var/www;
    index           index.html index.php;
    access_log      /var/log/nginx/access.log;
    error_log       /var/log/nginx/error.log;

    location ~* \.(?:xml|ogg|mp3|mp4|ogv|svg|svgz|eot|otf|woff|ttf|css|js|jpg|jpeg|gif|png|ico)$ {
            try_files $uri =404;
            expires max;
            access_log off;
            add_header Pragma public;
            add_header Cache-Control "public, must-revalidate, proxy-revalidate";
    }

    location /linux-dash {
        index index.html index.php;
    }

    # PHP-FPM via sockets
    location ~ \.php(/|$) {
            fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
            fastcgi_split_path_info ^(.+?\.php)(/.*)$;
            fastcgi_pass unix:/var/run/php-fpm.sock;
            if (!-f $document_root$fastcgi_script_name) {
                    return 404;
            }
            try_files $uri $uri/ /index.php?$args;
            include fastcgi_params;
    }
}

接下来,编辑/etc/php-fpm.d/www.conf来配置php-fpm。在这个文件中,确保按如下编辑"user", "group" 和 "listen"字段。你可以不改变剩下的配置。

$ sudo vi /etc/php-fpm.d/www.conf 
listen = /var/run/php-fpm.sock
user = nginx
group = nginx

在/var/wwwx下载并安装linux-dash。

$ git clone https://github.com/afaqurk/linux-dash.git
$ sudo cp -r linux-dash/ /var/www/
$ sudo chown -R nginx:nginx /var/www 

最后,重启Nginx和php-fpm,并设置开机自启。

$ sudo service php-fpm restart
$ sudo service nginx restart
$ sudo chkconfig nginx on
$ sudo chkconfig php-fpm on 

在本例中,我们已经配置linux-dash使用TCP端口8080。所以确保防火墙没有阻止TCP 8080端口。

用linux-dash监视Linux机器

要在web浏览器上访问linux-dash,只需在web浏览器中输入http://:8080/linux-dash/

下面是linux-dash的截图。web面板包含了几个小部件,每个都会显示特性的系统参数。你可以通过重安排并且/或者关闭一些小部件来自定义web面板的外观。这里是一个linux-dash创建者的演示站点。

via: http://xmodulo.com/2014/04/monitor-linux-server-desktop-remotely-web-browser.html

译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出