Skip to content

Instantly share code, notes, and snippets.

View datakurre's full-sized avatar

Asko Soukka datakurre

View GitHub Profile
@datakurre
datakurre / static.py
Created May 3, 2020 18:01
Recipe for customizing Plone static text portlet with various rendering conditions
# -*- coding: utf-8 -*-
from jyu.flowextensions import _
from plone.api.exc import UserNotFoundError
from plone.portlet.static.static import AddForm
from plone.portlet.static.static import Assignment
from plone.portlet.static.static import EditForm
from plone.portlet.static.static import IStaticPortlet
from plone.portlet.static.static import Renderer
from Products.CMFCore.interfaces import IContentish
from venusianconfiguration import configure
{ stdenv, lib, fetchurl, unzip, bc, kernalPackages }:
with lib;
let modDestDir = "$out/lib/modules/${kernalPackages.modDirVersion}/kernel/drivers/net/wireless/realtek/rtlwifi";
in stdenv.mkDerivation rec {
pname = "tlwn277n";
version = "3.180510";
@datakurre
datakurre / bundle.js
Created May 23, 2018 18:23
Building just a Plone resources JavaScript bundle with webpack
import 'plone-logged-in';
@datakurre
datakurre / default.nix
Last active November 19, 2018 16:39
RobotKernel Jupyter notebook
{ pkgs ? import <nixpkgs> {}
, pythonPackages ? pkgs.python36Packages
}:
with pkgs;
let self = rec {
# patches
@datakurre
datakurre / VisionLibrary.py
Last active September 19, 2022 12:24
Clicking Selenium elements with OpenCV library
from robot.libraries.BuiltIn import BuiltIn
import cv2
import shutil
import tempfile
class TemporaryDirectory(object):
def __enter__(self):
self.name = tempfile.mkdtemp()
@datakurre
datakurre / generators.nix
Last active December 7, 2017 20:00
ZConfig generator for Nix
{}:
with builtins;
rec {
toZConfigValue = value:
if (isString value) then value else
if (isInt value) then toString value else
if (isBool value) && value then "on" else
@datakurre
datakurre / fragment.pt
Last active October 20, 2017 11:14
Tile with a single RichText field in Plone Mosaic with collective.themefragments
<tal:block define="value nocall:view/data/html|nothing;
output_relative_to nocall:value/@@output_relative_to|nothing"
condition="output_relative_to"
content="structure python:output_relative_to(context)" />
@datakurre
datakurre / default.nix
Last active December 18, 2017 10:36
nix-shell for Plone buildout with Selenium tests
#!/usr/bin/env nix-shell
{ rev ? "beb1f1ea91ef15d5f1b272108b0cf964e47665f2"
, sha256 ? "02n73jmc0vbb2dq5af70zxms63jbgbnzc70fmw50mcq07fpwa3p9"
, pkgs ? import ((import <nixpkgs> {}).pkgs.fetchFromGitHub {
owner = "NixOS";
repo = "nixpkgs";
inherit rev;
inherit sha256;
}) {}
, pythonPackages ? pkgs.python27Packages
@datakurre
datakurre / parse.py
Created September 10, 2017 19:38
Parsing naive install_requires with AST
import ast
tree = ast.parse(open('setup.py').read())
names = {}
def strings(tree):
ret = []
for node in ast.walk(tree):
if isinstance(node, ast.Name):
@datakurre
datakurre / registry.xml
Created July 6, 2017 15:42
Rich text tiles with templates in Plone Mosaic
<?xml version="1.0"?>
<registry xmlns:i18n="http://xml.zope.org/namespaces/i18n"
i18n:domain="plone">
<records prefix="plone.app.mosaic.structure_tiles.card"
interface="plone.app.mosaic.interfaces.ITile">
<value key="default_value">&lt;div class="card-header"&gt;Header&lt;/div&gt;&lt;div class="card card-block"&gt;&lt;h3 class="card-title"&gt;TItle 1&lt;/h3&gt;&lt;p class="card-text"&gt;Content&lt;/p&gt;&lt;/div&gt;</value>
<value key="category">structure</value>
<value key="read_only">False</value>
<value key="name">card</value>