54,302 blogs · [ { "id": "01a08769-eaa1-72e3-b08a-f93a4267abd5", "title": "Updating a Raspberry Pi hostname", "url": "https://davidwinter.dev/2026/08/09/updating-raspberry-pi-hostname/", "published_at": "2026-08-08T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786da81d250", "title": "Keeping Claude Code MCP credentials out of git with 1Password", "url": "https://davidwinter.dev/2026/07/08/1password-claude-code-mcp-credentials/", "published_at": "2026-07-07T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786dafee516", "title": "Making Firefox open new tabs where I expect", "url": "https://davidwinter.dev/2026/06/22/firefox-new-tab-position/", "published_at": "2026-06-21T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786db1c08f4", "title": "RustDesk direct connections over Tailscale", "url": "https://davidwinter.dev/2026/06/06/rustdesk-via-tailscale/", "published_at": "2026-06-05T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786dc0e2bf9", "title": "Post-deployment triggers for PaaS providers", "url": "https://davidwinter.dev/2023/03/14/post-deploy-triggers/", "published_at": "2023-03-14T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786dc3a218c", "title": "Simple Electron automatic updates", "url": "https://davidwinter.dev/2020/10/31/electron-auto-update/", "published_at": "2020-10-31T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786dd1893a2", "title": "Managing GPG with Keybase", "url": "https://davidwinter.dev/2019/04/25/managing-gpg-with-keybase/", "published_at": "2019-04-24T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786dd52c240", "title": "Working remotely with SSH and VNC", "url": "https://davidwinter.dev/2019/03/15/working-remotely-with-ssh-and-vnc/", "published_at": "2019-03-15T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786de44e302", "title": "Tmux - the essentials", "url": "https://davidwinter.dev/2019/03/14/tmux-the-essentials/", "published_at": "2019-03-14T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786de93d466", "title": "Quick and simple Github Gist oEmbed support", "url": "https://davidwinter.dev/2014/10/13/quick-and-simple-github-gist-oembed-support/", "published_at": "2014-10-12T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ded812ab", "title": "Install and manage WordPress with Composer", "url": "https://davidwinter.dev/2014/10/12/install-and-manage-wordpress-with-composer/", "published_at": "2014-10-11T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786dfbbf510", "title": "Introduction to Ansible", "url": "https://davidwinter.dev/2013/11/23/introduction-to-ansible/", "published_at": "2013-11-23T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e02d66e2", "title": "Poor mans VPN with sshuttle", "url": "https://davidwinter.dev/2013/08/10/poor-mans-vpn/", "published_at": "2013-08-09T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e0cdde8b", "title": "Switch to a retro shell, Fish shell", "url": "https://davidwinter.dev/2013/08/04/switch-to-a-retro-shell-fish-shell/", "published_at": "2013-08-03T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e1c1b90f", "title": "Identity theft and no one seeming to care but me", "url": "https://davidwinter.dev/2013/04/09/identity-theft-and-no-one-seeming-to-care-but-me/", "published_at": "2013-04-08T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e25793eb", "title": "Setting up a Puppet Master and Agents on EC2", "url": "https://davidwinter.dev/2012/12/08/setting-up-puppet-master-and-agents-on-ec2/", "published_at": "2012-12-08T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e2d06d77", "title": "Install EC2 command line tools with OS X", "url": "https://davidwinter.dev/2012/12/07/install-ec2-command-line-tools-with-os-x/", "published_at": "2012-12-07T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e3abd280", "title": "Getting started with Amazon EC2", "url": "https://davidwinter.dev/2012/12/06/getting-started-with-amazon-ec2/", "published_at": "2012-12-06T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e4521f5f", "title": "Install and manage WordPress with Git", "url": "https://davidwinter.dev/2012/04/09/install-and-manage-wordpress-with-git/", "published_at": "2012-04-08T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e46cefc4", "title": "Introduction to Puppet", "url": "https://davidwinter.dev/2012/03/04/introduction-to-puppet/", "published_at": "2012-03-04T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e5367db4", "title": "Testing Javascript websites with Behat", "url": "https://davidwinter.dev/2012/01/14/testing-javascript-websites-with-behat/", "published_at": "2012-01-14T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e6023988", "title": "Using Behat with Mink", "url": "https://davidwinter.dev/2012/01/13/using-behat-with-mink/", "published_at": "2012-01-13T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e69bd6d1", "title": "Setup rbenv on Mac OS X", "url": "https://davidwinter.dev/2011/12/10/setup-rbenv-on-mac-os-x/", "published_at": "2011-12-10T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e757d430", "title": "Getting started with Behat", "url": "https://davidwinter.dev/2011/11/06/getting-started-with-behat/", "published_at": "2011-11-06T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e7e7ebcb", "title": "Setting up Github Pages", "url": "https://davidwinter.dev/2011/10/29/setting-up-github-pages/", "published_at": "2011-10-28T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e8742fd7", "title": "Simple local web development with Apache and Dnsmasq", "url": "https://davidwinter.dev/2011/06/18/simple-local-web-development-with-apache-and-dnsmasq/", "published_at": "2011-06-17T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e902014b", "title": "Install APF on Ubuntu 11.04", "url": "https://davidwinter.dev/2011/06/05/install-apf-on-ubuntu-11-04/", "published_at": "2011-06-04T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e997b7fe", "title": "Setup UFW on Ubuntu 11.04", "url": "https://davidwinter.dev/2011/06/05/setup-ufw-on-ubuntu-11-04/", "published_at": "2011-06-04T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786e9a229af", "title": "PHP development on Mac OS X 10.6 Snow Leopard", "url": "https://davidwinter.dev/2011/05/27/php-development-on-mac-os-x-10-6-snow-leopard/", "published_at": "2011-05-26T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ea1b108e", "title": "Merging MKV files together", "url": "https://davidwinter.dev/2011/05/21/merging-mkv-files-together/", "published_at": "2011-05-20T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ea6be305", "title": "Mod rewrite rules in htaccess files", "url": "https://davidwinter.dev/2011/02/08/mod-rewrite-rules-in-htaccess-files/", "published_at": "2011-02-08T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ea813925", "title": "Authentication with CodeIgniter 2.0", "url": "https://davidwinter.dev/2011/01/29/authentication-with-codeigniter-2-0/", "published_at": "2011-01-29T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786eaa60d36", "title": "A simple chat room with WebSockets", "url": "https://davidwinter.dev/2010/11/21/a-simple-chat-room-with-websockets/", "published_at": "2010-11-21T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786eab459f8", "title": "Setting up SSH host shortnames", "url": "https://davidwinter.dev/2010/08/22/setting-up-ssh-host-shortnames/", "published_at": "2010-08-21T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786eb46b60e", "title": "SSH and public key authentication", "url": "https://davidwinter.dev/2010/08/22/ssh-and-public-key-authentication/", "published_at": "2010-08-21T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786eb919581", "title": "Using Capistrano to deploy Mercurial changes", "url": "https://davidwinter.dev/2010/08/22/using-capistrano-to-deploy-mercurial-changes/", "published_at": "2010-08-21T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ebebe61f", "title": "Using o2 PAYG mobile broadband", "url": "https://davidwinter.dev/2010/06/19/using-o2-payg-mobile-broadband/", "published_at": "2010-06-18T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786eccd6612", "title": "Redirecting Apache traffic to a maintenance page", "url": "https://davidwinter.dev/2010/05/03/redirecting-apache-traffic-to-a-maintenance-page/", "published_at": "2010-05-02T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ed8d21a4", "title": "Install Mercurial on CentOS 4", "url": "https://davidwinter.dev/2010/04/18/install-mercurial-on-centos-4/", "published_at": "2010-04-17T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786eda2707a", "title": "Apache, PHP and MongoDB on Mac OS X 10.6 Snow Leopard", "url": "https://davidwinter.dev/2010/01/02/apache-php-and-mongodb-on-mac-os-x-10-6-snow-leopard/", "published_at": "2010-01-02T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786edde4989", "title": "Remove startup scripts on Ubuntu", "url": "https://davidwinter.dev/2009/10/20/remove-startup-scripts-on-ubuntu/", "published_at": "2009-10-19T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ee996d07", "title": "Convert git repository to mercurial", "url": "https://davidwinter.dev/2009/10/17/convert-git-repository-to-mercurial/", "published_at": "2009-10-16T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ef78e3f4", "title": "Enable PHP error logging", "url": "https://davidwinter.dev/2009/07/14/enable-php-error-logging/", "published_at": "2009-07-13T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786efa53754", "title": "PHP and nginx on Ubuntu: the easy way", "url": "https://davidwinter.dev/2009/06/13/php-and-nginx-the-easy-way/", "published_at": "2009-06-12T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f0a05dfd", "title": "Authentication with CodeIgniter", "url": "https://davidwinter.dev/2009/02/21/authentication-with-codeigniter/", "published_at": "2009-02-21T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f11548e6", "title": "A simple PHP delicious REST example with pecl_http", "url": "https://davidwinter.dev/2008/11/24/a-simple-php-pecl_http-example-with-delicious/", "published_at": "2008-11-24T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f18860d1", "title": "Install pecl_http for PHP", "url": "https://davidwinter.dev/2008/11/24/install-pecl_http-for-php/", "published_at": "2008-11-24T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f1fa1085", "title": "Install PHP5, lighttpd and Imagick on Mac OS X Leopard", "url": "https://davidwinter.dev/2008/11/22/php5-lighttpd-and-imagick-on-mac-os-x-leopard/", "published_at": "2008-11-22T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f265ea6d", "title": "lighttpd and PHP on CentOS 5", "url": "https://davidwinter.dev/2008/06/22/lighttpd-and-php-on-centos-5/", "published_at": "2008-06-21T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f33942b5", "title": "Mac OS X/HFS+ case-insensitive? Why?", "url": "https://davidwinter.dev/2008/05/17/mac-os-xhfs-case-insensitive-why/", "published_at": "2008-05-16T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f33b33d2", "title": "Merge video files with mencoder", "url": "https://davidwinter.dev/2008/05/17/merge-video-files-with-mencoder/", "published_at": "2008-05-16T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f3ab9351", "title": "Killing a program using a batch file in Windows", "url": "https://davidwinter.dev/2008/05/15/killing-a-program-using-a-batch-file-in-windows/", "published_at": "2008-05-14T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f3ee8213", "title": "Using shortcut keys in Windows", "url": "https://davidwinter.dev/2008/05/15/using-shortcut-keys-in-windows/", "published_at": "2008-05-14T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f44ec230", "title": "vim: find, comment, save and quit", "url": "https://davidwinter.dev/2008/02/29/vim-find-comment-save-and-quit/", "published_at": "2008-02-29T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f5260ae6", "title": "Me TV - EyeTV for Ubuntu?", "url": "https://davidwinter.dev/2008/02/10/me-tv-eyetv-for-ubuntu/", "published_at": "2008-02-10T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f54bb0b1", "title": "DVB and Mplayer", "url": "https://davidwinter.dev/2008/02/09/dvb-and-mplayer/", "published_at": "2008-02-09T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f54c0d40", "title": "Watching Freeview (DVB-T) TV with VLC Player on Ubuntu", "url": "https://davidwinter.dev/2008/02/08/watching-freeview-dvb-t-tv-with-vlc-player-on-ubuntu/", "published_at": "2008-02-08T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f5b9ba68", "title": "Line breaks in OpenOffice.org", "url": "https://davidwinter.dev/2007/05/21/line-breaks-in-openofficeorg/", "published_at": "2007-05-20T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f6b7648c", "title": "mod_rewrite and Mac OS X Personal Web Sharing", "url": "https://davidwinter.dev/2007/05/20/mod_rewrite-and-mac-os-x-personal-web-sharing/", "published_at": "2007-05-19T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f78eb3b1", "title": "Graphviz - for drawing directed graphs", "url": "https://davidwinter.dev/2007/03/14/graphviz-for-drawing-directed-graphs/", "published_at": "2007-03-14T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f7a7aff1", "title": "Switch to Static IP on Ubuntu Server", "url": "https://davidwinter.dev/2007/01/27/switch-to-static-ip-on-ubuntu-server/", "published_at": "2007-01-27T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f7d2595b", "title": "Unix Disk Usage", "url": "https://davidwinter.dev/2007/01/21/unix-disk-usage/", "published_at": "2007-01-21T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f842146e", "title": "Mac \"Hot Corners\" for Ubuntu", "url": "https://davidwinter.dev/2006/12/29/mac-hot-corners-for-ubuntu/", "published_at": "2006-12-29T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f8d2216f", "title": "Festive Mac Screen Saver", "url": "https://davidwinter.dev/2006/12/17/festive-mac-screen-saver/", "published_at": "2006-12-17T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f966b567", "title": "Change your Terminal prompt - Lost style", "url": "https://davidwinter.dev/2006/12/06/change-your-terminal-prompt-lost-style/", "published_at": "2006-12-06T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786f9ef53fb", "title": "Getting Ubuntu Dapper to dance with ATI X800 GTO", "url": "https://davidwinter.dev/2006/10/25/getting-ubuntu-dapper-to-dance-with-ati-x800-gto/", "published_at": "2006-10-24T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fa253a58", "title": "Building Apache 2.2 from source for Ubuntu Dapper", "url": "https://davidwinter.dev/2006/10/17/building-apache-22-from-source-for-ubuntu-dapper/", "published_at": "2006-10-16T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fae64489", "title": "Subversion 1.4.0 from source via Apache 2.2 on Ubuntu Dapper", "url": "https://davidwinter.dev/2006/10/17/subversion-140-from-source-over-apache-22-on-ubuntu-dapper/", "published_at": "2006-10-16T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fb7fbf6e", "title": "Ubuntu Dapper Web Server How-to", "url": "https://davidwinter.dev/2006/08/09/ubuntu-dapper-web-server-how-to/", "published_at": "2006-08-08T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fbb27788", "title": "Set-up Typo 4 on Ubuntu Dapper", "url": "https://davidwinter.dev/2006/07/26/set-up-typo-4-on-ubuntu-dapper/", "published_at": "2006-07-25T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fbbe0310", "title": "Cocoa-Java and Jar Frameworks", "url": "https://davidwinter.dev/2006/07/20/cocoa-java-and-jar-frameworks/", "published_at": "2006-07-19T23:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fc0630f9", "title": "Using Tomcat Ant tasks", "url": "https://davidwinter.dev/2006/03/21/using-tomcat-ant-tasks/", "published_at": "2006-03-21T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fcacc731", "title": "Access Control for Subversion with Apache2 and Authz", "url": "https://davidwinter.dev/2006/03/03/access-control-for-subversion-with-apache2-and-authz/", "published_at": "2006-03-03T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fd7eccbd", "title": "Tomcat on Mac OS X Tiger", "url": "https://davidwinter.dev/2006/02/20/tomcat-on-mac-os-x-tiger/", "published_at": "2006-02-20T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fe29f1ae", "title": "Mac friendly Java apps in a few lines", "url": "https://davidwinter.dev/2006/02/18/mac-friendly-java-apps-in-a-few-lines/", "published_at": "2006-02-18T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ff270d02", "title": "Subversion over Apache 2 on Ubuntu", "url": "https://davidwinter.dev/2006/02/16/subversion-over-apache-2-on-ubuntu/", "published_at": "2006-02-16T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786ffeeb8b4", "title": "Using IRC and other IM apps at University", "url": "https://davidwinter.dev/2006/02/06/using-irc-and-other-im-apps-at-university/", "published_at": "2006-02-06T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5786fff6affc", "title": "Ubuntu 5.10 web server howto", "url": "https://davidwinter.dev/2006/02/05/ubuntu-5-10-web-server-howto/", "published_at": "2006-02-05T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-57870049356c", "title": "Java foreach loop", "url": "https://davidwinter.dev/2005/12/08/java-foreach-loop/", "published_at": "2005-12-08T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-578700ef4022", "title": "Setting up XDMCP for Mac", "url": "https://davidwinter.dev/2005/12/08/setting-up-xdmcp-for-mac/", "published_at": "2005-12-08T00:00:00+00:00" }, { "id": "01a08769-eaa2-710f-9f1a-5787014c127b", "title": "Sorting a Vector using Collections.sort()", "url": "https://davidwinter.dev/2005/12/08/sorting-a-vector-using-collections-sort/", "published_at": "2005-12-08T00:00:00+00:00" } ] posts Claim your blog
Back to davidwinter.dev
Blog · corpus.blog/blogs/davidwinter.dev/posts

davidwinter.dev

davidwinter.dev

2026

2023

2020

2019

2014

2013

2012

2011

2010

2009

2008

2007

2006

2005