An open API service indexing awesome lists of open source software.

https://github.com/knutkirkhorn/dotfiles

My personal dotfiles
https://github.com/knutkirkhorn/dotfiles

bash dotfiles macos npm shell zsh

Last synced: 3 months ago
JSON representation

My personal dotfiles

Awesome Lists containing this project

README

          

# dotfiles

> My personal dotfiles

## Install

Run this command when installing or refreshing the dotfiles

```sh
source bootstrap.sh
```

### npm

Scripts live under [`npm/`](npm/).

Run [`npm/npm.sh`](npm/npm.sh) to install global npm CLIs.

```sh
./npm/npm.sh
```

[`npm/npm-security-hardening.sh`](npm/npm-security-hardening.sh) sets minimum release age for npm, pnpm, Yarn, and Bun (supply-chain hardening).

```sh
./npm/npm-security-hardening.sh
```

### macOS

Run this script to install some apps for macOS.

```sh
./macos.sh
```

Touch ID for `sudo`: the PAM snippet lives in [`macos/pam.d/sudo_local`](macos/pam.d/sudo_local). Install or refresh it on a Mac with:

```sh
./macos/sync-sudo-touchid.sh
```

This copies that file to `/etc/pam.d/sudo_local` (requires `sudo`). Your OS `/etc/pam.d/sudo` must include `sudo_local` (current macOS does by default).

### Windows

Windows setup scripts live under [`windows/`](windows/). Run [`windows/windows.ps1`](windows/windows.ps1) in PowerShell to install GUI and CLI apps via `winget` (run from the repo root, or adjust the path).

```powershell
.\windows\windows.ps1
```

## ClickUp weekly init

`scripts/init-clickup-week.ts` creates weekday (Mon-Fri) 30m time entries at 09:00 for the configured ClickUp task(s) in the current week.

### Required env vars

Set these in `.env`:

```sh
CLICKUP_API_KEY=...
CLICKUP_TASK_IDENTIFIER=ENET-1149
```

For multiple tasks, use a comma-separated list in `CLICKUP_TASK_IDENTIFIERS`, or the same format in `CLICKUP_TASK_IDENTIFIER` (or pass multiple arguments when running manually):

```sh
CLICKUP_TASK_IDENTIFIERS=ENET-1149,ENET-2001
```

Optional:

```sh
CLICKUP_TEAM_ID=...
```

### Run manually

```sh
bun run scripts/init-clickup-week.ts
```

Override task(s) from CLI (one or more):

```sh
bun run scripts/init-clickup-week.ts ENET-1149 ENET-2001
```

### Automation

The launchd job is stored in [`scripts/launchd/com.knut.clickup-init-week.plist`](scripts/launchd/com.knut.clickup-init-week.plist) and symlinked to `~/Library/LaunchAgents` by `bootstrap.sh`.

## Inspiration and thanks

- [Mathias Bynens](https://github.com/mathiasbynens/dotfiles)
- [Zach Holman](https://github.com/holman/dotfiles)
- [Paul Irish](https://github.com/paulirish/dotfiles)
- [Kent C. Dodds](https://github.com/kentcdodds/dotfiles)

## Related

- My [Windows aliases](https://github.com/knutkirkhorn/windows-aliases)