The always enthusiastic and knowledgeable mr. @jasaltvik shared with our team an article on writing (good) Git commit messages: How to Write a Git Commit Message. This excellent article explains why good Git commit messages are important, and explains what constitutes a good commit message. I wholeheartedly agree with what @cbeams writes in his article. (Have you read it yet? If not, go read it now. I'll wait.) It's sensible stuff. So I decided to start following the
let bookmarkList = Array.from(document.querySelectorAll('.widget>.vbox')) | |
.map(e => e.shadowRoot) | |
.map(e => e && e.querySelector('.device-page-list')) | |
.find(e => e); | |
let bookmarks = Array.from(bookmarkList.querySelectorAll('.vbox')) | |
.map(e => `<a href="${e.querySelector('x-link').innerHTML}">${e.querySelector('.device-page-title').innerHTML}</a>`); | |
copy('<html><body>' + bookmarks.join('\n') + '</body></html>'); |
/*------------------------------------------------------------------------------ | |
* MIT License | |
* | |
* Copyright (c) 2019 Michał Bogacz | |
* | |
* Permission is hereby granted, free of charge, to any person obtaining a copy | |
* of this software and associated documentation files (the "Software"), to deal | |
* in the Software without restriction, including without limitation the rights | |
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
import javax.inject.Inject | |
import scala.concurrent.Future | |
import play.api.{Configuration, Environment, Mode} | |
import play.api.inject.{ApplicationLifecycle, Binding, Module} | |
class DevModeWorkaroundsModule extends Module { | |
def bindings(environment: Environment, configuration: Configuration): Seq[Binding[_]] = { | |
Seq(bind[DevModeWorkarounds].toSelf.eagerly()) | |
} |
The included script 'widevine-flash_armhf.sh' fetches a ChromeOS image for ARM and extracts the Widevine binary, saving it in a compressed archive. Since it downloads a fairly large file (2Gb+ on disk after download) it is recommended that you run the script on a machine that has plenty of disk space.
To install the resultant archive, issue the following on your ARM machine–after copying over the archive if needed:
sudo tar Cfx / widevine-flash-20200124_armhf.tgz
(Where 'widevine-flash-20200124_armhf.tgz' is updated to reflect the actual name of the created archive)
-
pg_dump is a nifty utility designed to output a series of SQL statements that describes the schema and data of your database. You can control what goes into your backup by using additional flags.
Backup:pg_dump -h localhost -p 5432 -U postgres -d mydb > backup.sql
Restore:
psql -h localhost -p 5432 -U postgres -d mydb < backup.sql
-h is for host.
-p is for port.
-U is for username.
-d is for database.
/*------------------------------------------------------------------------------ | |
* MIT License | |
* | |
* Copyright (c) 2017 Doug Kirk | |
* | |
* Permission is hereby granted, free of charge, to any person obtaining a copy | |
* of this software and associated documentation files (the "Software"), to deal | |
* in the Software without restriction, including without limitation the rights | |
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
* copies of the Software, and to permit persons to whom the Software is |
package modules | |
import java.io.{FileInputStream, InputStream} | |
import javax.inject.{Inject, Provider, Singleton} | |
import play.api.db.DBApi | |
import play.api.{Configuration, Environment} | |
//import play.Environment | |
import play.api.db.evolutions._ | |
import play.api.inject.{Injector, Module} |
const CDP = require('chrome-remote-interface'); | |
const argv = require('minimist')(process.argv.slice(2)); | |
const file = require('fs'); | |
// CLI Args | |
const url = argv.url || 'https://www.google.com'; | |
const format = argv.format === 'jpeg' ? 'jpeg' : 'png'; | |
const viewportWidth = argv.viewportWidth || 1440; | |
const viewportHeight = argv.viewportHeight || 900; | |
const delay = argv.delay || 0; |
# Install Google Chrome | |
# https://askubuntu.com/questions/79280/how-to-install-chrome-browser-properly-via-command-line | |
sudo apt-get install libxss1 libappindicator1 libindicator7 | |
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb | |
sudo dpkg -i google-chrome*.deb # Might show "errors", fixed by next line | |
sudo apt-get install -f | |
# Install Node Stable (v7) | |
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash - | |
sudo apt-get install -y nodejs |