INSERT INTO sites(host) VALUES('') 1045: Access denied for user 'www-data'@'localhost' (using password: NO) Estimated Worth $476,519 - MYIP.NET Website Information
Welcome to!
 Set MYIP as homepage      


Web Page Information

Meta Description:
Meta Keywords:
sponsored links:
sponsored links:

Traffic and Estimation


Website Ranks

Alexa Rank:
Google Page Rank:
Sogou Rank:
Baidu Cache:

Search Engine Indexed

Search EngineIndexedLinks

Server Data

Web Server:
IP address:    

Registry information

ICANN Registrar:
Name Server:
Whois Server:

Alexa Rank and trends

Traffic: Today One Week Avg. Three Mon. Avg.
Unique IP:

More ranks in the world

Users from these countries/regions

Where people go on this site

Alexa Charts

Alexa Reach and Rank

Whois data

Who is at

% Restricted rights.


% Terms and Conditions of Use


% The above data may only be used within the scope of technical or

% administrative necessities of Internet operation or to remedy legal

% problems.

% The use for other purposes, in particular for advertising, is not permitted.


% The DENIC whois service on port 43 doesn't disclose any information concerning

% the domain holder, general request and abuse contact.

% This information can be obtained through use of our web-based whois service

% available at the DENIC website:







Status: connect

Changed: 2018-05-09T08:35:31+02:00

Front Page Thumbnail

sponsored links:

Front Page Loading Time

Keyword Hits (Biger,better)

Other TLDs of twotoasts

TLDs Created Expires Registered

Similar Websites


Search Engine Spider Emulation

Title:Two toasts | Snapcraft, browsers, and green cats.
Description:olor: #444444 !important; }
Two toasts | Snapcraft, browsers, and green cats.
Two toasts
Snapcraft, browsers, and green cats.
Skip to content
Midori Web Browser
Cross-compiling with snapcraft: iota
Last week I snapped iota, a small editor with emacs and vi modes.
I decided I wanted to try it out on a Raspberry Pi before pushing it to the snappy store, for that I need to cross-compile. Conveniently I recently implemented support for that in snapcraft.
If you didn #8217;t follow the previous step from my previous blog post, to try what I #8217;m about to do, you #8217;ll need a fresh clone of my iota branch.
codegit clone聽
cd iota
git checkout snapcraftcode
If on the other hand, like me, you built a snap for another architecture before, in my case amd64, I need to clean the build files.
codesnapcraft cleancode
Now on to the most difficult step:
codesnapcraft --target=arch=armhfcode
Time for a cup of coffee!
Once it #8217;s done, you can use SSH (or whatever your preferred method is) to copy the snap to your Raspberry Pi 2 or 3 running Ubuntu Core.
codesnapcraft install --dangerous --classic iota_0+git.67643b3_armhf.snapcode
Now I can use iota as my editor on the Raspberry Pi!
This entry was posted in Snapcraft and tagged cross-compilation, rust, snapcraft on July 14, 2017 by kalikiana.
Packaging rust with snapcraft: iota
Iota is a small editor for your terminal, with support for emacs hotkeys or vi-style commands, syntax highlighting, and easily hackable, written in Rust #8230; now wouldn #8217;t it be awesome if I could install it easily as a snap? So I figured I #8217;d contribute a snapcraft YAML in my lunch break.聽Here #8217;s how I did it.
Head to聽 and hit Fork on the top right. Let GitHub work its magic. Once it #8217;s done I can checkout the code.
codegit clone聽
cd iota
snapcraft initcode
At this stage I #8217;ve got a local copy of iota and a snap/snapcraft.yaml that was automatically created for me. Some editing is needed.
codename: iota
summary: Iota is a terminal-based text-editor written in Rust
description: |
100% open source
highly extensible/customisable/scriptable
fast efficient - designed with modern hardware in mind
cross platform - it should work anywhere
developer friendly - it should just "get out of the way"
Rust tooling integrationcode
The fields name, summary and description are pretty self-explanatory, especially given the template snapcraft init creates. I just picked some wording from iota #8217;s
codeversion: git
grade: devel
confinement: classiccode
I used version: git here because it just picks up the tag or commit hash, and it #8217;s good enough for an unstable build anyway. confinement: classic is much more interesting here because this is an editor, and I want to be able to edit all the files on my system. confinement: strict wouldn #8217;t allow that as it restricts access to specific folders only used by the snap itself.
command: bin/iotacode
Note how I #8217;m specifying bin here explicitly. Classic snaps don #8217;t get any path magic unlike their strict counterparts.
plugin: rust
rust-channel: nightlycode
Now as for the actual build instructions I don #8217;t really have to do much. iota specifies all its dependencies in its Cargo.toml so no build-packages or stage-packages are necessary. The only thing I need to specify here is the nightly channel since iota requires unstable rust features.
This takes a while as rustup downloads the toolchain and crates needed behind the scenes. High time to grab that lunch my break is meant for.
Fast-forward, I #8217;m installing the result of that build.
codesnapcraft install --dangerous --classic iota_0+git.67643b3_amd64.snapcode
Now I can use iota as my editor!
Last but not least, after some testing:
codegit add snap/snapcraft.yaml
git commit -p -v
git checkout -B snapcraft
git push origin snapcraftcode
Finally, I #8217;m opening a pull request on GitHub.
This entry was posted in Snapcraft on July 6, 2017 by kalikiana.
How to cross-compile snapcraft plugins
I implemented support for聽cross-compiling when using the Go plugin聽and the Rust plugin聽(bonus points for using a LXD container) in snapcraft. On the part of the user of snapcraft it #8217;s completely transparent but each plugin needs to explicitly support this, so here #8217;s how you enable your favorite snapcraft plugin to make this work.
codesnapcraft --target-arch=armhf --debugcode
This will result in the following error if a part uses a plugin that doesn #8217;t support cross-compilation yet:
codeSetting target machine to 'armhf'
Building for a different target architecture requires a plugin specific implementation in the 'foo' plugincode
Let #8217;s enable the fictional聽foo聽plugin.
First of all, we tell snapcraft that we know how to cross-compile by聽implementing one additional method. We don #8217;t need to do anything here. Although I #8217;ve found one good use of the method to be checking that the requested target is supported by the toolchain. For a language like聽Rust聽or聽Go聽the target is different to the聽Debian architecture. Rust even supports using a different libc (glibc聽or聽musl). That means the plugin needs to map the target and raise an error if it can #8217;t. In the following example I #8217;ll also be seeting self._target so that it can be used in other steps of the lifecycle, for example to set environment variables or when installing target-specific dependencies of the toolchain.
codedef enable_cross_compilation(self):
# Cf. rustc --print target-list
rust_targets = {
'armhf': 'armv7-{}-{}eabihf',
'arm64': 'aarch64-{}-{}',
'i386': 'i686-{}-{}',
'amd64': 'x86_64-{}-{}',
'ppc64el': 'powerpc64le-{}-{}',
self._target = rust_targets.get(self.project.deb_arch).format(
'unknown-linux', 'gnu')
if not self._target:
raise NotImplementedError(
'{!r} is not supported as a target architecture when '
'cross-compiling with the rust plugin'.format(
Second of all, we #8217;ll want to adjust the environment variables. This depends on the build system. Typical candidates are compiler names and pkgconfig #8211; we don #8217;t need to worry about the latter since snapcraft already takes care of it. Go for example would also require聽GOARCH聽to be set.
In the following code I #8217;m assuming there #8217;s a self._goarch variable that was set in聽enable_cross_compilation.
codedef env(self, root):
env = super().env(root)
if self.project.is_cross_compiling:
return envcode
The example uses the triplet of the target architecture. Commonly useful values here are, using armhf values for demonstration purposes:
codecross_compiler_prefix: arm-linux-gnueabihf-
arch_triplet: arm-linux-gnueabihf
deb_arch: armhf
kernel_arch: armcode
Note that snapcraft will automatically install the compiler and libc headers needed. Should you need extra packages it #8217;s only one command away:
It goes without saying that we #8217;ll want to have an聽integration test聽checking that this new code actually continues to work in the future.
You #8217;ll need to have a聽snap in integration_tests/snaps/foo聽which you may already have. Otherwise you #8217;ll need to add it. It #8217;s a good idea to try and聽make use of more advanced use cases聽that may need special care in the context of cross-compilation, such as using聽C code in the case of Go.
codeimport snapcraft
from snapcraft.tests.matchers import HasArchitecture
def test_cross_compiling(self):
if snapcraft.ProjectOptions().deb_arch != 'amd64':
self.skipTest('The test only handles amd64 to armhf')
arch = 'arm64'
self.run_snapcraft('stage', 'foo', '--target={}'.format(arch))
binary = os.path.join(self.parts_dir, 'foo', 'install', 'bin',
self.assertThat(binary, HasArchitecture('aarch64'))code
You #8217;ll also want to聽unit test聽the new use cases supported by the plugin. There will be a聽snapcraft/tests/plugins/test_foo.py聽if it #8217;s an existing plugin where you can verify the build environment and commands used for building insofar as they differ (Go would require you to use聽go build聽for example instead of聽go install).
I #8217;m not going to go into all the details here since this is very plugin-specific but one thing you #8217;ll generally want to add is scenarios and mock is_cross_compiling:
codescenarios = [
('armv7l', dict(deb_arch='armhf', go_arch='arm')),
('aarch64', dict(deb_arch='arm64', go_arch='arm64')),
('i386', dict(deb_arch='i386', go_arch='386')),
('x86_64', dict(deb_arch='amd64', go_arch='amd64')),
('ppc64le', dict(deb_arch='ppc64el', go_arch='ppc64le')),
def setUp(self):
self.project_options = snapcraft.ProjectOptions(
patcher = mock.patch('snapcraft.ProjectOptions.is_cross_compiling')
If all went well I hope you #8217;re going to propose a聽PR to snapcraft聽adding support for the foo plugin #8211; a real one of course, not the fictional one that doesn #8217;t exist
This entry was posted in Snapcraft and tagged cross-compilation, go, hacking, rust on June 27, 2017 by kalikiana.
Preparing for Chemnitz 19 March 2016
Freshly printed Midori stickers just arrived, in November the last ones of the old batch were being given out to visitors of the OpenRheinRuhr. So I ordered new ones at FlyerAlarm, a print company based in W眉rzburg, Austria. This time around I went for circular ones and slightler smaller than they used to be. This size also fits better on phones and tablets for those who like to decorate theirs with stickers. You might also notice that the colors are better and the graphic comes out better #8211; fixes to the SVG will be finding their way into the repository soon.
With the new stickers I #8217;m well-prepared for Chemnitz Linux Days this march, in a little more than a fortnight. There will be a Midori booth there. Be sure to add the weekend of March 19 and 20 to your calendars!
This entry was posted in Midori on March 3, 2016 by kalikiana.
Heads or tails
As things go we diverged a bit from the original plan of making a big compatibility break with this release. Instead much of the original branch has been broken off into pieces that made their way into trunk. We did however bump WebKit2, libSoup and Zeitgeist dependencies. The most visible change is support for CSD, client side decorations, also called header bars after the API in GTK+3.10 (enabled via GTK_CSD=1). With no further adue here goes Midori 0.5.11 with a whole lot of nice things and a ton of bug fixes! Peek at the change log if you want more details.
So download Midori v0.5.11 now (1.2 MB)
The source tarball is up. Windows is going to follow suit shortly, and others are still being refreshed, so be patient if the option of your choice isn #8217;t there just yet.
You are welcome to join #midori on and party for the release!
This entry was posted in Midori, Uncategorized on August 30, 2015 by kalikiana.
A leap of leopards (or: 0.5.10)
Whilst work on the compatibility breaking branch is coming along nicely it seemed sensible to do another bug fix release. Thus Midori 0.5.10.
So download Midori v0.5.10 now (1.2 MB)
The source tarball is up. Windows is going to follow suit shortly, and others are still being refreshed, so be patient if the option of your choice isn #8217;t there just yet.
You are welcome to join #midori on or Slack and party for the release!
This entry was posted in Midori on April 20, 2015 by kalikiana.
WebKitGTK+ 2.8.0
We are excited and proud of announcing WebKitGTK+ 2.8.0, your favorite web rendering engine, now faster, even more stable and with a bunch of new features and improvements.
Touch support is one the most important features missing since WebKitGTK+ 2.0.0. Thanks to the GTK+ gestures API, it #8217;s now more pleasant to use a WebKitWebView in a touch screen. For now only the basic gestures are implemented: pan (for scrolling by dragging from any point of the WebView), tap (handling clicks with the finger) and zoom (for zooming in/out with two fingers). We plan to add more touch enhancements like kinetic scrolling, overshot feedback animation, text selections, long press, etc. in future versions.
HTML5 Notifications
Notifications are transparently supported by WebKitGTK+ now, using libnotify by default. The default implementation can be overridden by applications to use their own notifications system, or simply to disable notifications.
WebView background color
There #8217;s new API now to set the base background color of a WebKitWebView. The given color is used to fill the web view before the actual contents are rendered. This will not have any visible effect if the web page contents set a background color, of course. If the web view parent window has a RGBA visual, we can even have聽transparent colors.
A new聽WebKitSnapshotOptions flag has also been added to be able to take web view snapshots over a transparent surface, instead of filling the surface with the default background color (opaque white).
User script messages
The communication between the UI process and the Web Extensions is something that we have always left to the users, so that everybody can use their own IPC mechanism. Epiphany and most of the apps聽use D-Bus for this, and it works perfectly. However, D-Bus is often too much for simple cases where there are only a few 聽messages sent from the Web Extension to the UI process. User script messages make these cases a lot easier to implement and can be used from JavaScript code or using the GObject DOM bindings.
Let #8217;s see how it聽works with a very simple example:
In the UI process,聽we register a script message handler using the WebKitUserContentManager and connect to the #8220;script-message-received-signal #8221; for the given handler:
webkit_user_content_manager_register_script_message_handler (user_content,
g_signal_connect (user_content, "script-message-received::foo",
G_CALLBACK (foo_message_received_cb), NULL);
Script messages are received in the UI process as a WebKitJavascriptResult:
static void
foo_message_received_cb (WebKitUserContentManager *manager,
WebKitJavascriptResult *message,
gpointer user_data)
char *message_str;
message_str = get_js_result_as_string (message);
g_print ("Script message received for handler foo: %s\n", message_str);
g_free (message_str);
Sending a message from the web process to the UI process using JavaScript is very easy:"bar");
That will send the message #8220;bar #8221; to the registered foo script message handler. It #8217;s not limited to strings, we can pass any JavaScript value to postMessage() that can be serialized. There #8217;s also a convenient API to send script messages in the GObject DOM bindings API:
webkit_dom_dom_window_webkit_message_handlers_post_message (dom_window,
"foo", "bar");
Who is playing audio?
WebKitWebView has now a boolean read-only property is-playing-adio that is set to TRUE when the web view is playing audio (even if it #8217;s a video) and to FALSE when the audio is stopped. Browsers can use this to provide聽visual feedback about which tab is playing audio, Epiphany already does that
HTML5 color input
Color input element is now supported by default, so instead of rendering a text field to manually input the color 聽as hexadecimal color code, WebKit now renders a color button that when clicked shows a GTK color chooser dialog. As usual, the public API allows to override the default implementation, to use your own color chooser. MiniBrowser uses a popover, for example.
APNG (Animated PNG) is a PNG extension that allows to create animated PNGs, similar to GIF but much better, supporting 24 bit images and transparencies. Since 2.8 WebKitGTK+ can render APNG files. You can check how it works with the mozilla demos.
The聽POODLE vulnerability fix introduced compatibility problems with some websites when establishing the SSL connection. Those problems were actually server side issues, that were incorrectly banning SSL 3.0聽record packet versions, but that could be worked around in WebKitGTK+.
WebKitGTK+ already provided a WebKitWebView signal to notify about TLS errors when loading, but only for the connection of the main resource in the main frame. However, it #8217;s still possible that subresources fail due to TLS errors, when using a connection different to the main resource one. WebKitGTK+ 2.8 gained WebKitWebResource::failed-with-tls-errors signal to be notified when a subresource load failed because of invalid certificate.
Ciphersuites based on RC4 are now disallowed聽when performing TLS negotiation, because聽it is no longer considered secure.
Performance: bmalloc and concurrent JIT
bmalloc is a new memory allocator added to WebKit聽to replace TCMalloc. Apple had already used it in the Mac and iOS ports for some time with very good results, but it needed some tweaks to work on Linux. WebKitGTK+ 2.8 now also uses bmalloc which drastically improved the overall performance.
Concurrent JIT was not enabled in GTK (and EFL) port for no apparent reason. Enabling it had also an amazing impact in the performance.
Both performance improvements were very noticeable in the performance bot:
The first jump on 11th Feb corresponds to the bmalloc switch, while the other jump on 25th Feb is when concurrent JIT was enabled.
Plans for 2.10
WebKitGTK+ 2.8 is an awesome release, but the plans for 2.10 are quite promising.
More security: mixed content for most of the resources types will be blocked by default. New API will be provided for managing mixed content.
Sandboxing: seccomp filters will be used in the different secondary processes.
More performance: FTL will be enabled in JavaScriptCore by default.
Even more performance: this time in the graphics side, by using the threaded compositor.
Blocking plugins API: new API to provide full control over the plugins load process, allowing to block/unblock plugins individually.
Implementation of the Database process: to bring back IndexedDB support.
Editing API: full editing API to allow using a WebView in editable mode with all editing capabilities.
This entry was posted in WebKit and tagged epiphany, Free Software, GNOME, gtk+, Igalia on March 23, 2015 by carlos garcia campos.
Ballet (or: 0.5.9)
Seven months of sweat and tears鈥 oh well, not quite so dramatic. In any event Midori 0.5.9 is out!
We #8217;re already scheming鈥 I mean planning for the next cycle. We want to go WebKit2 and GTK+3 only now and do away with the fourfold compatibility setup. Anyone who finds this thrilling is more than welcome to join in; the fun is going to start soon.
So download Midori v0.5.9 now (1.2 MB)
The source tarball and Windows download are up, while others are still being refreshed, so be patient if the option of your choice isn #8217;t there just yet.
You are welcome to join #midori on or Slack and party for the release!
This entry was posted in Midori on November 11, 2014 by kalikiana.
Midori booth at OpenRheinRuhr 2014
At OpenRheinRuhr 2014 we had a Midori booth again. Almost didn #8217;t happen due to the strike of Deutsche Bahn which caused many people to miss the event. Fortunately my humble self made it.
In addition to stickers, this time around we even had edible gummi paws!
Amongst the most posed questions was process isolation, something WebKit2 provides, and which will be available to everyone soon once our plan to move fully towards GTK+3, WebKit2 and Vala is put in motion. The other one was why Midori crashed so often #8211; which is due to the at least 4 primary build configurations currently available. I #8217;m very much looking forward to seeing this go away at some point in the future.
Pretty happy with the results personally, was able to get a decent number of people curious to try out Midori and in one instance even install it on site.
This entry was posted in Midori on November 10, 2014 by kalikiana.
Xubuntu 14.10 鈥淯topic Unicorn鈥
After six months of development, the latest version of Xubuntu has been released! Xubuntu 14.10 #8220;Utopic Unicorn #8221; features the latest in Xfce development and is the first step towards the next Long Term Support release in 2016.
Here #8217;s 10 new things to look for in the latest release.聽 For a more comprehensive list of changes and a list of download links, please see the official release announcement and release notes.
Appearance Updates
The login screen received a minor visual refresh and greater customization options.
LightDM GTK+ Greeter with the latest Greybird theme.
The new wallpaper for this release adds a splash of pink to the Xfce mouse.
The new default wallpaper for Xubuntu 14.10 #8220;Utopic Unicorn #8221;
To celebrate the 14.10 codename #8220;Utopic Unicorn #8221;, pink highlights have been added.聽 These highlights can be reverted or easily changed to another color with the installed #8220;Theme Configuration #8221; utility.
Using #8220;Theme Configuration #8221;, you can easily change Xubuntu #8217;s colors to match your mood.
Xfce Updates
Xfce Power Manager 1.4 sports several improvements over previous releases. Brightness controls have been extended to better support backlit keyboards and new laptop displays. The updated panel plugin shows device charge status, adds display brightness controls, and fixes #8220;Presentation Mode #8221; #8212; letting you disable automatic screensavers.
Xfce Power Manager replaces the Power Indicator for Xubuntu 14.10
With the latest Xfce Display Settings, managing multiple monitors is no longer a hassle. Just drag and rearrange the displays to your liking.
The new drag-and-drop display settings greatly improves multihead support.
With the updated Xfce window manager, the Alt #8211;Tab switcher has been updated with a refreshed appearance and the ability to select windows with your mouse or by touch.
Even minor features like the Alt-Tab switcher have been improved.
With the latest Whisker Menu and changes to the default configuration, applications in the Settings Manager are now searchable.
Quickly find and launch any application with the Whisker Menu.
Application Updates
With Catfish 1.2, previewing files has been greatly simplified. Easily switch between details and preview mode. When the search index becomes outdated, Catfish will also notify you to update.
Catfish makes searching for images easier with the latest release.
Parole 0.7 introduces a new Clutter-based backend and finally supports video playback in Virtualbox. The media controls are now contained in a slide-over overlay (with a configurable timeout).
Parole #8217;s interface is further refined with each new release.
Light Locker Settings has been improved, further integrating with Xfce Power Manager to handle screensaver settings.
Light Locker Settings can now integrate with other screensaver managers.
That #8217;s it for this release, now to get ready for 15.04 #8220;Vivid Vervet #8221;!
This entry was posted in Catfish and tagged 14.10, Light Locker, Linux, Open Source, Parole, Xfce, Xubuntu on October 24, 2014 by Sean.
Post navigation
larr; Older posts
Search for:
Recent Posts
Cross-compiling with snapcraft: iota
Packaging rust with snapcraft: iota
How to cross-compile snapcraft plugins
Preparing for Chemnitz 19 March 2016
Heads or tails
Recent CommentsLinux en Espa帽ol on Catfish6 Most Awesome Quick File Searching Tools for Linux Desktop on Catfishlaurencio on Catfishlaurencio on Catfish9 outils de productivit茅 pour Linux qui m茅ritent votre attention ~ Geek Tech France on CatfishArchives
July 2017
June 2017
March 2016
August 2015
April 2015
March 2015
November 2014
October 2014
September 2014
August 2014
July 2014
April 2014
March 2014
January 2014
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
May 2013
April 2013
March 2013
February 2013
December 2012
September 2012
August 2012
June 2012
May 2012
April 2012
March 2012
December 2011
November 2011
October 2011
August 2011
July 2011
May 2011
March 2011
February 2011
January 2011
October 2010
September 2010
August 2010
May 2010
March 2010
February 2010
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
May 2009
April 2009
March 2009
February 2009
January 2009
December 2008
October 2008
September 2008
August 2008
July 2008
Log in
Entries RSS
Comments RSS
Proudly powered by WordPress

Updated Time

Friend links: ProxyFire    More...
Site Map 1 2 3 4 5 6 7 8 9 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200 250 300 350 400 450 500 550 600 610 620 630 640 650 660 670 680 690 700 710 720 730 740 750
TOS | Contact us
© 2009 Dev by MYIP Elapsed:1.512ms