{"id":40805368,"url":"https://github.com/sord-dev/silent-hill-conky-configuration","last_synced_at":"2026-01-21T21:02:43.157Z","repository":{"id":317718909,"uuid":"1068561076","full_name":"sord-dev/silent-hill-conky-configuration","owner":"sord-dev","description":"A comprehensive conky configuration for trading, news, weather, and system monitoring with clean, portable setup.","archived":false,"fork":false,"pushed_at":"2026-01-14T13:24:23.000Z","size":992,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-14T17:28:37.593Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sord-dev.png","metadata":{"files":{"readme":"README.md","changelog":"news_simple.py","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-02T15:09:44.000Z","updated_at":"2026-01-14T13:24:27.000Z","dependencies_parsed_at":"2025-10-02T17:34:00.994Z","dependency_job_id":"5d9d3cbc-9938-4d68-9749-7d471e66a931","html_url":"https://github.com/sord-dev/silent-hill-conky-configuration","commit_stats":null,"previous_names":["sord-dev/silent-hill-conky-configuration"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sord-dev/silent-hill-conky-configuration","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sord-dev%2Fsilent-hill-conky-configuration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sord-dev%2Fsilent-hill-conky-configuration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sord-dev%2Fsilent-hill-conky-configuration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sord-dev%2Fsilent-hill-conky-configuration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sord-dev","download_url":"https://codeload.github.com/sord-dev/silent-hill-conky-configuration/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sord-dev%2Fsilent-hill-conky-configuration/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28642697,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T18:04:35.752Z","status":"ssl_error","status_checked_at":"2026-01-21T18:03:55.054Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-21T21:02:40.249Z","updated_at":"2026-01-21T21:02:43.148Z","avatar_url":"https://github.com/sord-dev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Conky Trading Dashboard\n\nA comprehensive conky configuration for trading, news, weather, and system monitoring with clean, portable setup.\n\n![Conky Trading Dashboard Preview](media/Screenshot_2025-10-02_15-57-08.png)\n[Background Used](./media/silent-hill-background.jpg)\n\n## Features\n\nThis enhanced Conky configuration displays your Trading212 portfolio data alongside comprehensive system monitoring, weather information, and market data.\n\n### 📈 Trading212 Portfolio\n- **Total Portfolio Value** - Your complete portfolio worth\n- **Profit \u0026 Loss (P\u0026L)** - Current gains/losses with percentage\n- **Free Cash** - Available cash balance\n- **Invested Amount** - Total amount invested\n- **Position Count** - Number of open positions\n- **Pending Orders** - Number of pending trades\n- **Top Position** - Your largest holding by value\n- **API Status** - Connection status indicator\n\n### 📰 Scrolling News Headlines\n- 4 headlines displayed simultaneously\n- Native conky horizontal scrolling for long titles\n- Headlines refresh every 10-16 seconds (staggered)\n- Multiple sources: BBC, Guardian, Sky News, Hacker News, TechCrunch\n\n### 🌤️ Weather \u0026 Astronomy\n- Current weather for your location\n- Sunrise/sunset times and day length\n- Moon phase information\n\n### 💻 System Monitoring\n- **Performance Metrics** - CPU usage, RAM, disk I/O, temperatures\n- **Network Information** - Speed graphs, IP addresses, data usage\n- **Process Monitoring** - Top CPU-consuming processes\n- **Hardware Info** - CPU frequency, GPU temperature (NVIDIA)\n\n### 💱 Market Data\n- GBP/USD exchange rate\n- Real-time market information\n- Extensible for more currency pairs\n\n## Quick Setup\n\n1. **Copy the entire conky folder** to `~/.config/conky/`\n2. **Run setup script**: `cd ~/.config/conky \u0026\u0026 ./setup.sh`\n3. **Configure Trading212** (optional): Edit `trading212_config.json` with your API key\n4. **Adjust location** (optional): Edit `config.json` for your location\n5. **Start conky**: `conky -c ~/.config/conky/conky.conf`\n\n## File Structure\n\n```\n~/.config/conky/\n├── config.json              # 🔧 Main configuration (location, news sources, etc.)\n├── conky.conf               # 🖥️  Conky display configuration  \n├── trading212_config.json   # 💰 Trading212 API credentials\n├── requirements.txt         # 📦 Python dependencies\n├── setup.sh                 # 🚀 Automated setup script\n├── news_simple.py           # 📰 Simple news headlines fetcher\n├── sun_moon.py              # 🌅 Sunrise/sunset/moon phases\n├── trading212_api.py        # 💹 Trading212 API integration\n└── README.md               # 📖 This file\n```\n\n## Configuration\n\n### Trading212 Setup\n\n#### 1. Get API Credentials\n\n1. Open the **Trading212 mobile app**\n2. Go to **Settings** → **API**\n3. Generate your **API Key** and **API Secret**\n4. **Important**: Store these securely - they provide full account access\n\nFor detailed instructions, visit: [Trading212 API Key Guide](https://helpcentre.trading212.com/hc/en-us/articles/14584770928157-Trading-212-API-key)\n\n#### 2. Configure API Keys\n\n1. Edit the configuration file:\n   ```bash\n   nano ~/.config/conky/trading212_config.json\n   ```\n\n2. Replace the placeholder values:\n   ```json\n   {\n     \"api_key\": \"YOUR_ACTUAL_API_KEY_HERE\",\n     \"api_secret\": \"YOUR_ACTUAL_API_SECRET_HERE\",\n     \"update_interval\": 300,\n     \"cache_duration\": 60,\n     \"preferences\": {\n       \"currency_symbol\": \"£\",\n       \"show_percentages\": true,\n       \"show_ticker_suffixes\": false,\n       \"max_positions_display\": 5\n     }\n   }\n   ```\n\n#### 3. Make Scripts Executable\n\n```bash\nchmod +x ~/.config/conky/trading212_api.py\n```\n\n#### 4. Test the Setup\n\nTest the API connection:\n```bash\ncd ~/.config/conky/\npython3 trading212_api.py status\n```\n\nTest individual data points:\n```bash\npython3 trading212_api.py total_value\npython3 trading212_api.py total_ppl\npython3 trading212_api.py free_cash\n```\n\n### Location Settings\n\nEdit `config.json` to change location (affects weather, sunrise/sunset):\n\n```json\n\"location\": {\n  \"name\": \"London\",\n  \"latitude\": 51.5074,\n  \"longitude\": -0.1278,\n  \"timezone_offset_hours\": 1\n}\n```\n\n### News Sources\n\nAdd/remove news sources in `config.json`:\n\n```json\n\"news\": {\n  \"sources\": {\n    \"bbc\": \"http://feeds.bbci.co.uk/news/rss.xml\",\n    \"guardian\": \"https://www.theguardian.com/uk/rss\",\n    \"sky\": \"https://feeds.skynews.com/feeds/rss/home.xml\",\n    \"hackernews\": \"https://hnrss.org/frontpage\",\n    \"techcrunch\": \"https://techcrunch.com/feed/\"\n  }\n}\n```\n\n### Scrolling Settings\n\nThe news headlines use conky's native `$scroll` function:\n- **Width**: 35 characters display width\n- **Speed**: 2 characters per update\n- **Refresh**: Staggered every 10-16 seconds for smooth rotation\n\n## Testing\n\nTest individual components:\n\n```bash\n# Test news headlines\n~/.config/.venv/bin/python ~/.config/conky/news_simple.py list\n\n# Test single headline (for scrolling)\n~/.config/.venv/bin/python ~/.config/conky/news_simple.py single 0\n\n# Test sun/moon data\n~/.config/.venv/bin/python ~/.config/conky/sun_moon.py all\n\n# Test trading212 connection\n~/.config/.venv/bin/python ~/.config/conky/trading212_api.py total_value\n```\n\n## Available Data Points\n\nThe `trading212_api.py` script supports these commands:\n- `total_value` - Complete portfolio value\n- `total_ppl` - Profit/loss with percentage and color coding\n- `free_cash` - Available cash balance\n- `invested` - Total invested amount\n- `positions_count` - Number of open positions\n- `pending_orders` - Number of pending orders\n- `top_position` - Largest position by value\n- `status` - API connection status\n\n## Update Intervals\n\n- **Trading212 Data**: 300 seconds (5 minutes)\n- **News Headlines**: 10-16 seconds (staggered)\n- **Weather**: 1800 seconds (30 minutes)  \n- **Sun/Moon**: 3600 seconds (1 hour)\n- **Currency**: 600 seconds (10 minutes)\n\n## Customization\n\n### Color Scheme\nThe Silent Hill aesthetic uses:\n- `color1` (aa4444) - Rust red headers\n- `color2` (888888) - Fog grey secondary text\n- `color3` (666666) - Dark grey lines\n- `color4` (cccccc) - Light grey labels\n- `color5` (44aa44) - Profit green\n- `color6` (dd4444) - Loss red\n\n### Display Preferences\nEdit `trading212_config.json` to customize:\n- **currency_symbol**: Change display currency (£, $, €)\n- **show_percentages**: Enable/disable percentage displays\n- **max_positions_display**: Limit number of positions shown\n\n## Backup \u0026 Restore\n\n**To backup your setup:**\n```bash\ntar -czf conky-dashboard-backup.tar.gz ~/.config/conky/\n```\n\n**To restore on a new system:**\n```bash\ntar -xzf conky-dashboard-backup.tar.gz -C ~/\ncd ~/.config/conky \u0026\u0026 ./setup.sh\n```\n\n## Troubleshooting\n\n### Common Issues\n\n- **News not loading**: Check internet connection, RSS feeds may be temporarily down\n- **Scrolling issues**: Conky's native scrolling handles long headlines automatically\n- **Trading212 errors**: Verify API key in `trading212_config.json`\n- **Location issues**: Update coordinates in `config.json`\n- **Python errors**: Run `./setup.sh` to reinstall dependencies\n\n### Trading212 Specific\n\n1. **\"API Error\" or \"N/A\" displayed**\n   - Check your API credentials in `trading212_config.json`\n   - Verify internet connection\n   - Ensure Trading212 API is accessible\n\n2. **Permission errors**\n   - Make sure the script is executable: `chmod +x trading212_api.py`\n   - Check file permissions on config file\n\n3. **Python import errors**\n   - Install requests: `pip3 install requests`\n   - Use correct Python version: `python3` not `python`\n\n### Rate Limiting\nTrading212 API has rate limits:\n- Portfolio data: 1 request per 5 seconds\n- Account info: 1 request per 30 seconds\n- Orders: 1 request per 5 seconds\n\nThe configuration respects these limits with appropriate update intervals.\n\n## Security Notes\n\n- **Never share your API credentials**\n- **Use IP restrictions** in Trading212 settings if possible\n- **Monitor API usage** through Trading212 dashboard\n- **Revoke keys immediately** if compromised\n\n## Support\n\nFor issues:\n1. Check Trading212 API documentation: https://t212public-api-docs.redoc.ly/\n2. Verify Conky configuration syntax\n3. Test API script independently\n4. Check system logs for errors\n\n## API Limits \u0026 Beta Notes\n\n- Trading212 API is currently in beta\n- Live trading supports only Market Orders via API\n- Rate limits are per-account regardless of API key used\n- Some features may change during beta period\n\nThe configuration automatically handles API errors and displays fallback information when services are unavailable.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsord-dev%2Fsilent-hill-conky-configuration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsord-dev%2Fsilent-hill-conky-configuration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsord-dev%2Fsilent-hill-conky-configuration/lists"}