Extract iCal from winmail.dat (TNEF) files with Russian encoding support.
- Parse Microsoft Outlook TNEF/winmail.dat attachments
- Handle CP1251, KOI8-R, and other Russian character encodings
- Generate Mac-compatible iCal (.ics) files with proper timezone support
- Auto-detect timezone from meeting data (e.g., "Asia/Novosibirsk")
- Double-click integration via macOS app bundle
Requires uv:
# Install uv if not already installed
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone/download this project, then install globally:
cd winmaiil
uv tool install .This installs winmail2ics command globally in ~/.local/bin/.
# Basic usage - creates .ics file in same folder
winmail2ics winmail.dat
# Specify output file
winmail2ics winmail.dat -o meeting.ics
# Override timezone
winmail2ics winmail.dat --tz Europe/Moscow
# Quiet mode (no meeting details printed)
winmail2ics winmail.dat -qBuild and install the native app:
cd winmaiil
uv run pyinstaller winmail2ical.spec --clean --noconfirm
cp -r dist/Winmail2iCal.app /Applications/
xattr -cr /Applications/Winmail2iCal.appThen set up file association:
- Right-click any
.datfile → "Get Info" (⌘+I) - Under "Open with:", select
Winmail2iCalfrom Applications - Click "Change All..." to make it default for all
.datfiles - If Gatekeeper blocks, go to System Settings → Privacy & Security → "Open Anyway"
tnefparse- TNEF format decodericalendar- iCalendar file generatorpytz- Timezone handling