Canonical Voices

What Ubuntu Touch Development in CSDN (Chinese) talks about

UbuntuTouch

[原]百度云snap应用

百度云应用可以很方便地帮我们管理我们在云上的应用。这个应用的源码在:

https://github.com/LiuLang/bcloud


Snap版的软件源码在:

https://github.com/liu-xiao-guo/bcloud-snap




你可以使用如下的命令来从商店进行安装:

sudo snap install bcloud —devmode —beta



作者:UbuntuTouch 发表于2017/3/21 12:41:35 原文链接
阅读:1461 评论:0 查看评论

Read more
UbuntuTouch

[原]中文日历终于有Snap版了

经过一些努力,终于把中文日历的应用可以使用snap进行安装。由于一些原因,我们需要等到maintainer上传这个应用到商店。这个项目的源码在:

https://launchpad.net/chinese-calendar

Snap应用的源码在:

https://github.com/liu-xiao-guo/chinese-calendar






如果大家对这个应用感兴趣的话,可以把我的源码下下来,并安装好snapcraft开发工具。并在项目的根目录下直接打入snapcraft命令就可以打包这个应用了。之后就可以直接在本地安装了。

你可以在你的16.04+Ubuntu Desktop上使用如下的命令安装:

$ sudo snap install chinese-cal


作者:UbuntuTouch 发表于2017/3/20 10:08:34 原文链接
阅读:1239 评论:0 查看评论

Read more
UbuntuTouch

我们在先前的文章“利用ubuntu-app-platform提供的platform接口来减小Qt应用大小”已经了解到如何运用platform interface来减小Qt应用的大小。这里面的实现原理就是利用content分享来实现的。在今天的教程中,我们来运用一个开发者自己开发的python的interpreter snap安装包来实现同样的东西。对于一些系统来说,如果想要用最新的python版本,或者是想让很多的python应用都使用同一个python的安装,而不用分别把python的环境打入到每一个snap应用的包中,我们可以采用今天使用的方法。

这个python interpreter的snap应用的整个源码在:

https://github.com/jhenstridge/python-snap-pkg

我们可以通过如下的方式来得到:

$ git clone https://github.com/jhenstridge/python-snap-pkg


整个项目的源码如下:

$ tree -L 3
.
├── examples
│   └── hello-world
│       ├── hello.py
│       ├── hello.sh
│       └── snap
├── README.md
├── snap
│   └── snapcraft.yaml
└── src
    └── sitecustomize.py

在上面的snap目录中就是描述如何把python通过content sharing interface分享出去以供其它的开发者使用。开发者已经把编译好的snap上传到我们的商店了。我们可以通过如下的方式来进行安装:

$  snap install --edge python36-jamesh

我们可以到examples/hello-world目录下直接打入如下的命令:

$ snapcraft 
Preparing to pull hello-world 
Pulling hello-world 
Preparing to build hello-world 
Building hello-world 
Staging hello-world 
Priming hello-world 
Snapping 'hello-world' |                                                             
Snapped hello-world_0.1_all.snap

我们可以看到生产的.snap文件。我们可以使用如下的命令:

$ sudo snap install --dangerous hello-world_0.1_all.snap

来安装这个应用。并使用如下的命令来进行连接和运行:

$ snap connect hello-world:python3 python36-jamesh:python3
$ hello-world
Hello world!

我们可以看到我们的hello-world应用被成功运行。

hello.py

print("Hello world!")

我们可以检查一下我们最后的hello-world_0.1_all.snap文件大小:

$ ls -alh
total 28K
drwxrwxr-x 3 liuxg liuxg 4.0K 3月   1 09:45 .
drwxrwxr-x 3 liuxg liuxg 4.0K 3月   1 09:19 ..
-rw-rw-r-- 1 liuxg liuxg   28 3月   1 09:19 .gitignore
-rw-rw-r-- 1 liuxg liuxg   22 3月   1 09:19 hello.py
-rwxrwxr-x 1 liuxg liuxg   60 3月   1 09:19 hello.sh
-rw-r--r-- 1 liuxg liuxg 4.0K 3月   1 09:39 hello-world_0.1_all.snap
drwxrwxr-x 2 liuxg liuxg 4.0K 3月   1 09:23 snap

整个的.snap文件只有小小的4k大小。这比较以前的那种方法,显然这种通过content sharing的方法能够大大减少我们的python应用的大小。当然这个共享的python包也可以为其它的python应用所使用。

你甚至可以通过如下的方式来安装自己喜欢的pip包:

$ python36-jamesh.pip3 install --user django

这个django包的内容将会被安装到 python36-jamesh包里的$SNAP_USER_COMMON目录之中





作者:UbuntuTouch 发表于2017/3/1 9:48:19 原文链接
阅读:944 评论:0 查看评论

Read more
UbuntuTouch

[原]虾米电台snap应用

这是一个基于开源项目的虾米电台应用。它的源码在:

https://github.com/timxx/xmradio

它的snap版本的源码为:

https://github.com/liu-xiao-guo/xmradio

这个项目的应用界面为:






你可以在你的16.04及以上的桌面系统里使用如下的命令进行安装:

$ sudo snap install xmradio --edge --devmode

经过改良,现在你可以直接在stable channel里下载了:

$sudo snap install xmradio

作者:UbuntuTouch 发表于2017/3/16 10:05:08 原文链接
阅读:1007 评论:0 查看评论

Read more
UbuntuTouch

[原]在云上打包你的snap应用

如果你的应用已经在一个architecture(x86, arm)中开发好,你很想在另外一个architecture中进行编译,但是你苦于没有相应的硬件平台来编译。那你该怎么办呢?又或者你想把你的源码放到github中,你想通过一些方法进行自动编译你的代码,并发布到Ubuntu Store中。在几天的教程中,我们来展示一些在云上帮我们编译的一些方法。


在Launchpad上进行编译


我们可以把我们的代码放到https://launchpad.net/。比如我已经创建好了一个我自己的项目:


我们打开这个页面。我们可以在该页面的下面找到一个叫做“Create snap package”的链接:



通过这个链接,我们可以把我们的项目直接进行编译。我们可以选择我们需要的architecture,并最终生产我们所需要的.snap文件。

通过build.snapcraft.io来打包


我们可以在http://build.snapcraft.io/网站上选择我们自己的repo。



通过设置,并选择自己的repo,我们可以通过这个网站来帮我们生产armhf及amd64的snap包。它还可以帮我们发布到Ubuntu Store里。






如果大家对这个感兴趣的话,可以试一下:)

作者:UbuntuTouch 发表于2017/3/3 7:56:15 原文链接
阅读:1025 评论:0 查看评论

Read more
UbuntuTouch

[原]GoldenDict字典Snap应用

GoldenDictionary是一个非常好的在Linux上运行的应用软件。它的源码在:

https://github.com/goldendict/goldendict

Snap的源码在:

https://github.com/liu-xiao-guo/goldendict






你可以在你的16.04及以上的系统上安装:

sudo snap install goldendictionary


作者:UbuntuTouch 发表于2017/3/22 9:18:35 原文链接
阅读:933 评论:0 查看评论

Read more
UbuntuTouch

如果我们打开我们的Ubuntu Core安装的Core应用,在这个Core应用的安装目录中,我们会发现一个应用叫做xdg-open:

/snap/core/current/usr/local/bin$ ls
apt  apt-cache  apt-get  no-apt  xdg-open

关于xdg-open的更多描述可以在地址:https://linux.die.net/man/1/xdg-open找到。我们可以利用它来打开我们的所需要的文件或url。现在我们来利用它来启动一个应用,比如一个网站。为此,我们的snapcraft.yaml文件如下:


snapcraft.yaml


name: google
version: "1"
summary: this is a test program for launching a website using browser
description: |
     Launch google website using xdg-open
grade: stable
confinement: strict
architectures: [amd64]

apps:
   google:
     command: run.sh "http://www.google.com"
     plugs: [network, network-bind, x11, home, unity7, gsettings]

parts:
   files:
    plugin: dump
    source: scripts
    organize:
     run.sh: bin/run.sh

   integration:
    plugin: nil
    after: [desktop-gtk2]


scripts

#!/bin/sh

PATH="$PATH:/usr/local/bin"

xdg-open $1

我在Ubuntu Desktop上安装一个debian包:

$ sudo apt install snapd-xdg-open

打包完我们的应用并安装,运行:

$ google


我们可以看出google网站被成功启动。


作者:UbuntuTouch 发表于2017/3/6 13:36:38 原文链接
阅读:1020 评论:0 查看评论

Read more
UbuntuTouch

[原]网易云音乐snap

对于喜欢音乐的用户来讲,在16.04上可以安装snap版的播放器了。刚试了一下,效果还是不错的。源码在:

https://github.com/liu-xiao-guo/netease-music






你可以在16.04及以上的系统上安装如下的指令进行安装:

sudo snap install netease-music —devmode —beta



作者:UbuntuTouch 发表于2017/3/14 14:43:15 原文链接
阅读:1458 评论:0 查看评论

Read more
UbuntuTouch

[原]simplescreenrecorder snap应用

simeplscreenrecorder是一个工具应用软件。它可以用来帮我们录下我们的屏幕。这个项目的源码在:

https://github.com/MaartenBaert/ssr

snap版本的软件在:

https://github.com/liu-xiao-guo/simplescreenrecorder





你可以使用如下的命令来进行安装:

$ sudo snap install simplescreenrecorder



作者:UbuntuTouch 发表于2017/3/24 10:12:14 原文链接
阅读:830 评论:0 查看评论

Read more
UbuntuTouch

[原]酷我音乐盒snap应用

酷我音乐盒是一个音乐资源非常丰富的音乐播放器。它的源码在:


https://github.com/LiuLang/kwplayer


尽管它目前不被维护,但还是一款不错的应用。它的snap项目在:


https://github.com/liu-xiao-guo/kwplayer








你可以在你的16.04及以上的系统上安装这个应用:

$ sudo snap install kwplayer --beta --devmode

作者:UbuntuTouch 发表于2017/3/17 8:39:26 原文链接
阅读:868 评论:0 查看评论

Read more
UbuntuTouch

[原]moonplayer snap视频播放器

这是一个基于开源的一个视频播放器。它可以播放在优酷及土豆网上的视频。质量还是不错的。我把它打成了一个snap应用。供大家参考。snap包的好处就是你不需要安装任何其它的依赖。只需要安装一个包就可以了。看看市面上的好多debian应用都需要安装很多依赖的包才可以正确运行。而且可能很多的包还有不兼容的问题,从而导致安装不成功。


应用的源码在:

https://github.com/coslyk/moonplayer

打包成snap的代码在:

https://github.com/liu-xiao-guo/moonplayer






如果你有16.04及以上的电脑的话,可以直接使用如下的命令来安装:

sudo snap install moonplayer

作者:UbuntuTouch 发表于2017/3/15 10:27:43 原文链接
阅读:1111 评论:0 查看评论

Read more
UbuntuTouch

有道字典对很多的人来说非常有用。也有很多人喜欢命令行来进行查字典。在今天,我们来展示有道字典的命令行snap应用。

这个应用的源码在:

https://github.com/longcw/youdao

它的snap应用源码在:

https://github.com/liu-xiao-guo/youdao-cli




你可以在你的16.04及以上的桌面上按照如下的命令来进行安装:

$ sudo snap install yd



作者:UbuntuTouch 发表于2017/3/23 9:41:26 原文链接
阅读:755 评论:2 查看评论

Read more
UbuntuTouch

[原]gftp snap应用

这个项目的所有的资料可以在地址:

https://www.gftp.org/

找到。snap版的资料在:

https://github.com/liu-xiao-guo/gftp



你可以用如下的命令来进行安装:

$ sudo snap install g-ftp --beta --devmode


作者:UbuntuTouch 发表于2017/3/23 16:05:34 原文链接
阅读:683 评论:0 查看评论

Read more
UbuntuTouch

[原]Deepin music播放器snap版

你还在为安装Deepin-music播放器安装到你的Ubuntu发行版苦恼吗?deepin-music是一款良好的音乐播放器。现在终于有它的snap版软件了。它的源码在:

https://github.com/linuxdeepin/deepin-music

snap版的软件源码在:

https://github.com/liu-xiao-guo/deepin-music



你现在可以通过如下的方式来在你的Ubuntu 16.04及以上的版本上进行安装:

$ sudo snap install deepin-music

作者:UbuntuTouch 发表于2017/3/27 10:59:15 原文链接
阅读:845 评论:0 查看评论

Read more
UbuntuTouch

[原]Deepin图像查看器

你还在为安装deepin-image-viewer图像查看器安装到你的Ubuntu发行版苦恼吗?deepin-image-viewer是一款良好的图片查看器。现在终于有它的snap版软件了。它的源码在:

https://www.deepin.org/original/deepin-image-viewer/

snap版的软件源码在:

https://github.com/liu-xiao-guo/deepin-image-viewer







你可以通过如下的命令在你的Ubuntu 16.04+来安装:

$ sudo snap install deepin-image-viewer


作者:UbuntuTouch 发表于2017/4/5 7:32:27 原文链接
阅读:814 评论:0 查看评论

Read more
UbuntuTouch

[原]录音器snap版

在这里谢谢程路给我们一个手机版的recorder应用程序。它可以帮我们在电脑上进行录音及播放声音。在Ubuntu商店得到了广泛的好评。界面干净利落。这个应用的源码在:


https://github.com/dawndiy/recorder


如果有了这个手机版的应用,我们很容易地把它转换为电脑版的snap应用。我们几乎不用做任何的修改,就可以把它转换为snap版:


https://github.com/liu-xiao-guo/recorder


在桌面上的截图如下:








你可以使用如下的命令来进行安装:


sudo snap install recorder --devmode --beta


作者:UbuntuTouch 发表于2017/4/5 17:19:07 原文链接
阅读:530 评论:0 查看评论

Read more
UbuntuTouch

[原]豆瓣FM snap应用

首先,我在这里衷心感谢程路的辛勤付出,终于使得豆瓣FM snap应用得以完成。应用的源码在:


https://github.com/dawndiy/douban-fm







你可以在你的Ubuntu 16.04+系统使用如下的命令来进行安装:

$ sudo snap install douban-fm

作者:UbuntuTouch 发表于2017/4/6 9:01:18 原文链接
阅读:512 评论:0 查看评论

Read more
UbuntuTouch

[原]deepin 录音器

深度deepin的录音器是非常不错的一款录音器。深受很多用户的喜爱。经过一番努力,它的snap版终于在我的努力下成功了。

它的源码在:

https://github.com/manateelazycat/deepin-voice-recorder

它的snap源码在:

https://github.com/liu-xiao-guo/deepin-voice-recorder







如果你有16.04+的Ubuntu系统,你可以用一下的命令来安装:


$ sudo snap install deepin-voice-recorder

作者:UbuntuTouch 发表于2017/4/7 9:29:43 原文链接
阅读:483 评论:0 查看评论

Read more
UbuntuTouch

[原]Deepin Terminal Snap应用

对很多的Linux使用者来说,Deepin Terminal具有独特的吸引力。为了这个目的,我尝试把Deepin Terminal进行snap化。目前终于有一些进展。它的源码在:


https://github.com/manateelazycat/deepin-terminal


Snap版的源码在:


https://github.com/liu-xiao-guo/deepin-terminal


由于snap的安全性,home目录被设置为应用的目录而不是我们host的用户home目录。如果使用classic可以矫正这个问题,但是目前16.04的系统不支持gtk 3.20。这是 这个应用的一个最基本的要求。在16.10上没有试过classic模式。gtk应该是被满足的。



目前使用的是devmode,所以它可以访问我们所需要的目录。在Ubuntu 16.04+上的系统,可以使用如下的命令进行安装:


$ sudo snap install deepin-terminal --devmode

作者:UbuntuTouch 发表于2017/4/7 15:26:30 原文链接
阅读:512 评论:0 查看评论

Read more
UbuntuTouch

我之前在CSDN做的一个关于Ubuntu Core的演讲。


http://edu.csdn.net/course/detail/3475/60045?auto_start=1

作者:UbuntuTouch 发表于2017/4/15 23:02:12 原文链接
阅读:228 评论:0 查看评论

Read more